質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.03%

ブラウザ起動時にfacebookの通知が表示される理由

解決済

回答 4

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 354

hayash-dev

score 29

facebookの通知を許可しているブラウザが、起動時にfacebookから「友達がコメントした」等の通知を行う機能を、自分のアプリに実装したいと考えているのですが、仕組みが判りません。

ブラウザ起動時にfacebookのサーバに、自分宛ての通知有無をポーリングする処理が動いていると思うのですが
その場合、ブラウザ起動時に任意の処理を実行する あるいは、任意のサイトにリクエストするという挙動が必要ですが
そんな事ができるのか・・・?という状態です。

仕組みを御存じな方がいらっしゃいましたらご教示頂けないでしょうか。

よろしくお願いいたします。

==追記==
通知自体は、ブラウザのNotification APIで通知を行う想定です。
Notification APIをブラウザ起動時に実行するのですが、その前にサーバとやりとりするには、どうすればいいのかが不明なのです。

具体的には、firefoxやchromeなどのブラウザを立ちあげた際、facebookのページを表示していないのにも関わらず、facebookからの通知が来ます。
その仕組みが知りたいのです。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • maisumakun

    2019/03/12 16:42

    通知を行うのは「ブラウザ」ですか、それとも「自分のアプリ」でしょうか?

    キャンセル

  • hayash-dev

    2019/03/12 16:56

    ブラウザのNotification APIで通知を行う想定です。
    Notification APIをブラウザ起動時に実行するのですが、その前にサーバとやりとりするには、どうすればいいのかが不明なのです。

    キャンセル

  • maisumakun

    2019/03/12 17:00

    Notifications APIは、「システムレベルでページ外部に表示される」、「アプリケーションがアイドルやバックグラウンドの状態であっても」表示されるものなのですが、あえて「ブラウザ起動時」に限定したいのでしょうか。

    https://developer.mozilla.org/ja/docs/WebAPI/Using_Web_Notifications

    キャンセル

  • hayash-dev

    2019/03/12 17:03

    アイドルやバックグラウンドでも表示を考えていますが、伺いたいのはfacebookの例の仕組みです。

    キャンセル

回答 4

checkベストアンサー

+1

ServiceWorkerとWebPush辺りで検索。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/03/12 17:47

    御回答ありがとうございます。
    'web push'のキーワードで目的の情報にたどり着きました。

    キャンセル

0

プッシュ通知によるトーストの表示などを利用すればいいのかと思います。
Notification APIを使って通知していいかの許可を確認して
いいなら通知する命令を送るということでしょう。詳しく書くと大変そうなので
キーワードで検索してみるといいです。

パソコンの場合メモリの消費が多いという理由で切っている人も多いため
スマホアプリでプッシュ通知を提供しているサービスと連携し
利用する方が一般的かもしれません。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

ブラウザ起動時にfacebookのサーバに、自分宛ての通知有無をポーリングする処理が動いていると思うのですが

いえ、Notifications APIはポーリングではなく、プッシュ配信で動いています。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/03/12 17:20

    確認を忘れていましたが、環境はパソコンですか?モバイルですか?

    キャンセル

  • 2019/03/12 17:22

    PCです

    キャンセル

  • 2019/03/12 17:31

    Google Chromeの場合、FCMというGoogleのクラウドサービスを経由しています。FirefoxでもMozillaがサービスを構築しているとのことです(https://support.mozilla.org/ja/kb/push-notifications-firefox)。

    「特定サイト」と直接つながるわけではありません。

    キャンセル

0

自分向けの整理として記載しておきます。

プッシュ通知を行う構成

  • アプリサーバ(プッシュサーバにプッシュ通知をリクエストする役割
  • プッシュサーバ(ブラウザベンダがプッシュ通知サービス提供するサーバ
  • ブラウザ

ブラウザ起動時にfacebookのサーバに、自分宛ての通知有無をポーリングする処理が動いていると思うのですが
その場合、ブラウザ起動時に任意の処理を実行する あるいは、任意のサイトにリクエストするという挙動が必要ですが
そんな事ができるのか・・・?という状態です。 

上記の想像おおむね合っていた。
ブラウザは起動時に、自ブラウザベンダ向けのプッシュサーバと接続する。

接続後は、プッシュサーバからの通知を受けた時にNotifications APIで通知を表示する通常の流れで処理できる。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/03/13 02:23

    お役に立てずにすみません。
    とりあえず解決できてよかったですね。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.03%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる