push.jsでWindows10端末に通知してみた

 システム障害時のアラートといった、イベント発生をトリガーに業務対応するようなシーンで、これまでメール受信で対応していましたが、多種のメールに埋もれて気が付けないケースが出てきたという事で、メールに変わる何らかの通知機能は無いかと検討。

 要件としては、対象はWindows10端末のみ、内部的な仕組みな為、外部サービスの使用は不可、イベントはチケットシステムに登録されるので、チケットシステム上に、イベント一覧画面を作成して定期的に画面をリロード、push.jsで通知する形なら、まあ気が付くだろうと試してみました。

 push.js自体の実装自体は簡単で、適当にググってサクッと完成。通知を出したら同じ通知を次は出さないとかは個別に工夫します。

 基本的に通知設定は端末・デバイス側の設定に依存しており、Windows端末ならシステム設定から通知設定をするんですが、それ以外にもブラウザ毎に通知仕様が微妙に異なるようです。FireFoxは通知を複数表示できるが、Chromeは1件だけとか。

 Push.Createコール時にrequireInteraction: trueにした場合、Chromeの通知は閉じるボタンが付き、かなり長時間通知が表示された状態になるようでしたが、Edge(Chromium前?)はそうでもなかったりとか。また、Push.Createのコール時のtimeout設定は、特に効いていないようでした。

 あと、基本的にブラウザが通知を許可してくれるのはlocalhostかhttpsのサイトだけという縛りがありますが、Edgeならhttpサイトでも通知が可能だったのでテストに便利です。

 でも、イベント発生トリガーをメール受信からおきかえられるかは業務利用次第ですね。