問題タブ [web-push]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
425 参照

google-chrome - Chrome Web プッシュ通知の問題に対する Google クラウド メッセージング

私の質問はすべて、Chrome バージョン 42 でリリースされた Chrome Web プッシュ通知のコンテキストにあります。

1) GCM API は、無効になった登録 ID に対しても「成功」を返します。ユーザーが通知を右クリックし、[xyz.com からの通知を無効にする] をクリックすると、そのユーザーは通知を受信できなくなります。ただし、同じ RegistrationID を GCM API に送信すると、その特定の登録に対して成功が返されます。再度登録すると、新しい RegistrationID が取得されます。したがって、以前のものは無効になるのではないかと思います。これは意図した動作ですか?ユーザーが通知を右クリックして購読を解除したかどうかを知り、データベースで非アクティブとしてマークする方法はありますか? ユーザーが二度と戻ってこない場合に備えて.

2) Error=NotRegistered の GCM ドキュメントには、「クライアント アプリがプッシュ メッセージを受信するように構成されていないか、アプリがデバイスからアンインストールされました」と記載されています。「クライアント アプリはプッシュ メッセージを受信するように構成されていません」とはどういう意味ですか?

0 投票する
0 に答える
246 参照

google-cloud-messaging - Chrome GCM プッシュ通知の通知に日時を表示する方法

chrome GCMのプッシュ通知の通知に日付、時刻などのデータをもっとリストアップしたい。ここに私のコードに示すように:

この通知ウィンドウに日付と時刻を追加するにはどうすればよいですか? 以下に例を示します。

ここに画像の説明を入力

0 投票する
2 に答える
197 参照

google-cloud-messaging - GCM を使用して Chrome ウェブアプリを開く

GCM を使用して Chrome Web App にメッセージを送信できます。https://android.googleapis.com/gcm/sendへの http 投稿を使用して、 registrationid、applicationid、senderid の値を送信しています。メッセージは画面に Chrome 通知として表示されます。私の質問は、Chrome Web App を起動するために使用できるコマンドまたは GCM イベント/関数はありますか? Google Chrome はバックグラウンドで実行するように設定されています。

これは、メッセージ イベントの GCM リスナーです。

関数を呼び出し、messageReceivedこの関数でメッセージを取得し、画面に通知をポップし、ウィンドウを開く/作成します。

0 投票する
1 に答える
1437 参照

push-notification - 最後の 1 つを除いて、複数の Chrome プッシュ通知が自動的に閉じられます

サーバーから複数の通知を取得する Service Worker があります。問題は、最後の通知を除いて、Chrome のすべての通知が自動的に閉じられることです。私は何を間違っていますか?

0 投票する
2 に答える
2505 参照

google-chrome - サービスワーカーを実装するには?

Service Worker について説明しているさまざまなブログを既に読んでいますが、そのうちの 1 つは open Web Push notificationです。Open Web Push 通知の指示に従い、curl 登録 ID を作成するコードを実装しました。登録 ID が作成されたら、データベースに入れましたが、通知がありません。私は通常、Googleコンソールでgcmを有効にしました。多くのブログを読んだので、gcmサーバーとクライアントコードも書く必要がありますが、そうするように言われた人はいません。通知を受け取るにはどうすればよいですか。

何か見逃した場合は、以下のコードを参照してください。

index.html

main.js

config.js

service-worker.js

デモ.js

このコードをすべて書いた後、他に何ができますか?? 私は gcm を使ったことがないので、有効にするのに苦労しています。助けが必要です。

0 投票する
1 に答える
5305 参照

google-chrome - Google Chrome サイレント プッシュ通知

Chrome の Web プッシュ API の実装に関するドキュメントを読んでいる、API に「プッシュを受信するたびに通知を表示することを約束する」と書かれていることに気付きまし。プッシュメッセージを受け取ります。」

この例をローカルホストに実装した後、cURL を使用してプッシュ通知を正常に送信しました。興味があったので、実際に showNotification 関数を呼び出している行をコメントアウトし、代わりに console.log を挿入したところ、プッシュ通知を実際に送信、受信、および完全に無視できることがわかりました。メインページから制御したグローバルブール値に基づいてそれらを表示するかどうかを制御するために if ステートメントを使用してみましたが、うまくいきました。では、通知を表示する必要があり、サイレント プッシュ通知が利用できないと言う意味を知っている人がいるかどうか疑問に思っていました。

これは単なる目的ではありません。Web アプリでこれらの通知を表示するかどうかを合法的に制御する必要がある可能性があるため、これが実際に可能であれば素晴らしいことです。興味がある場合は、以下のコードを参照してください。

編集: 関連する場合は、Chrome 47 で。

更新: さらに実験した結果、ユーザーが移動してから同じページに再度移動すると、元のグローバル変数を更新できないという明らかな問題が見つかりました。ただし、サービスワーカー自体の変数を使用してこれを回避し、ここで説明する API を使用してメッセージをサービスワーカーに送信し、showNotifications ブール値を切り替えることができました。