web-dev-qa-db-ja.com

閉じたWebアプリからChromeまたはFirefoxでデスクトップ通知を送信しますか?

私の目標は、ブラウザで現在開いていないWebアプリ(ユーザーXを呼び出します)からChromeまたはFirefoxで Gmailスタイルのデスクトップ通知 を送信することです。アプリまたは拡張機能をインストールします。ユーザーがXから通知を受信する許可を付与する必要がある場合は問題ありません。また、Xをブラウザーで開く必要がない限り、通知を表示するためにブラウザーを開く必要がある場合も問題ありません。ブラウザウィンドウを開く必要のないソリューションも機能します。

私はこれを掘り下げて一日を過ごしましたが、これまでのところと思います

  • OSX Mavericks以降、Safari 7以降では Safari Push Notifications を使用してこれを行うことができました。
  • Web Notifications API はChrome/Firefoxで機能しますが、ユーザーのブラウザがXに対して開かれている必要があります。
  • Twitter 最初にユーザーに許可を求めることなく同様のWeb通知を送信しますが、ユーザーのブラウザーがTwitterに対して開かれている必要があります。
  • Growl 実装への多くの参照がありますが、私が知る限り、それらはすべてユーザーがGrowlやGrowl対応アプリをインストールする必要があります。

上記の声明のいずれかについて間違っている可能性があります-聞きたいです! -そして、私は他のソリューションにもオープンです。何か案は?

読んでくれてありがとう。

59
user1544138

Webページがアクティブでない場合でも、 Service WorkersService Workerの通知API および Push API を使用して、プッシュ通知を送信できます-開始された通知(または スケジュールされた通知 )。

2016年6月現在、Service WorkerはChrome、Firefox、Operaでサポートされています。 https://jakearchibald.github.io/isserviceworkerready/ のステータスを参照してください

関連する議論、実装の状態、および仕様については、次のリンクを参照してください。

73
Rob W

W3CPush APIを使用して、探していることを正確に行うことができます。

すべてをゼロから構築したい場合は、 Googleのこのチュートリアル を読み始めることをお勧めします。 Chrome用ですが、Firefoxは 非常によく似た方法 で動作します。

しかし、それは多くの作業であり、「標準」はまだ進化しています: Pushpad (私は創業者です)のようなサービスを使用することをお勧めします。

2
collimarco