メインコンテンツへスキップ
このガイドでは、Webプッシュサブスクリプションの管理方法と、ユーザーアクションとブラウザ動作の両方によってサブスクリプションステータスがどのように影響を受けるかについて説明します。

プッシュ権限を理解する

ユーザーは、プッシュ通知を送信するためにWebサイトに許可を与える必要があります。システムレベルの権限プロンプトを使用してサイトに明示的に許可を与えない限り、プッシュ通知を受信することはできません。

このサイトのプッシュ通知を受信するためにクリックして「許可」する必要があるChromeの必須システムレベル権限プロンプトの例。

権限は次のいずれかになります:
  • デフォルト:権限が拒否されていません。
  • 許可:Webサイトが通知を送信することを許可しました。
  • 拒否:Webサイトが通知を送信することをブロックしました。これは、プロンプトを閉じるためにxを繰り返しクリックした場合の一時的なブロック、またはブロックをクリックするかブラウザ設定で権限をオフに切り替えた場合の永続的なブロックのいずれかになります。
ネイティブシステムレベル権限プロンプトおよび/またはOneSignalプロンプトの詳細については、Web権限プロンプトを参照してください。

Web通知の配信を停止する方法

Webプッシュ通知の配信を停止するには、3つの方法があります:

ブラウザ設定内で配信停止

ブラウザ設定で通知権限を直接管理または削除できます。詳細を確認するためのクイックアクセスURLと公式ドキュメントは次のとおりです: これらのページで、通知を受け取りたくないWebサイトを削除またはブロックするオプションをクリックするだけです。

Webサイト上で配信停止

権限をリセット ほとんどのブラウザには、URLの横に「ロック」または「設定」アイコンがあります。これをクリックすると、サイト固有の権限が表示され、ユーザーはプッシュ通知を無効にできます。

例では、Chromeブラウザでサイトのプッシュ権限を完全にオフに切り替えるか、権限をリセットしてサイトが再度プロンプトを表示できるようにすることができます。

OneSignalプロンプト WebサイトにOneSignalベルプロンプトまたはカスタムリンクプロンプトが含まれている場合、ユーザーはこれらのUI要素を介して直接配信停止でき、必要に応じて同じものを使用して再購読できます。

例は、OneSignalベルプロンプトを示しています。

ブラウザデータの削除、Cookieとサイトデータのクリア

履歴を削除したり、Cookieとサイトデータを削除したりすると、通知の表示が一時的に防止されます。ただし、サイトからプッシュ権限を削除しない場合、サイトに戻ったときに自動的に再購読され、再び通知を受け取り始める可能性があります。

例は、ブラウザ履歴とサイトデータのクリアを示しています。


例は、サイトデータのクリアを示しています。


権限プロンプトをテストする方法

これらの手順では、初めての訪問者のようにプロンプトとサブスクリプションフローをテストする方法を説明します。
1

OneSignal SDKがセットアップされたサイトにアクセスします。

シークレット、プライベート、またはゲストブラウザ設定を使用しないでください。 この例では、macOSのChromeバージョン135を使用していますが、ほとんどのブラウザでフローは比較的同じです。
2

プッシュ権限をリセット

サイトURLの横にあるサイト設定またはロックアイコンをクリックし、権限をリセットを選択するか、通知の権限を削除します。 この権限オプションが表示されない場合は、次の手順にスキップしてください。

Chromeサイト設定メニュー > 通知の権限をリセット。

3

サイトデータを削除します。

Cookieとサイトデータ > デバイス上のサイトデータを管理をクリックするか、ブラウザのフローに従ってサイトのデータオプションを表示します。

Chromeのデバイス上のサイトデータ画面。

サイトのデータを削除し、設定を終了してサイトに戻ります。

例は、サイトCookieのクリアを示しています。

4

開発者ツールを開きます。

通常、画面を右クリックして検証を押すだけです。
5

プッシュ通知のプロンプトに必要な手順を実行し、必須システムレベル権限プロンプトで「許可」を選択します。

プロンプトが表示されない場合や手順がわからない場合は、Web権限プロンプトを参照してください。

例は、Chrome必須システムレベルプロンプトを示しています。

6

コンソールでエラーを確認します。

OneSignalに関連する赤いものが表示された場合は、Web SDKトラブルシューティングドキュメントを参照してください。
7

サブスクリプションIDを取得

コンソールでこのコードを入力またはコピー&ペーストします:OneSignal.User.PushSubscription.id
  1. これにより、OneSignalサブスクリプションIDがログに記録されます。これをOneSignalダッシュボードのAudience > Subscriptionsタブにコピー&ペーストします。
  2. コンソールにサブスクリプションIDがログに記録されなかった場合、正常にサブスクライブされていません。詳細については、Web SDKトラブルシューティングを参照してください。

コンソールを使用してプッシュサブスクリプションIDを取得します。

OneSignalダッシュボードのSubscriptionsページでサブスクリプションIDを表示します。

8

サブスクリプションの横にある3ドットオプションボタンを選択し、「テストサブスクリプションに追加」を選択します。次に、テストユーザーに名前と日付を付けて認識できるようにします。

サブスクリプションをテストサブスクリプションとして追加します。

9

Messages > Push > New Message > New Pushに移動し、Push作成フォームでMessageを追加します。

必要に応じて、詳細についてはPushを参照してください。

テストサブスクリプションに送信する新しいプッシュを作成します。

10

「Test & Preview」を選択し、テストサブスクリプションを見つけてチェックし、「Send Test Push」をクリックします。

自分にテストプッシュを送信します。

11

テストしたプッシュを受信するはずです。

プッシュを受信しなかった場合は、さらにデバッグするためにWebプッシュ:通知が表示されないを参照してください。

テストプッシュを受信しました。

OneSignalでWebプッシュのセットアップが正常に完了しました。次のステップ:

ブラウザが閉じているときに通知を受信する

ブラウザはプラットフォームによって動作が異なります。ブラウザが閉じている場合でも通知を受信するためのサポートについては、以下の表を参照してください。
ブラウザ名AndroidWindowsmacOS
Chrome / Chromiumはいはいいいえ
Firefoxはいはいいいえ
SafariN/AN/Aはい
Operaはいはいいいえ
Edgeはいはいいいえ
Chrome - Chromeは、すべてのウィンドウが閉じられている場合でも、デフォルトでバックグラウンドプロセスとして実行されます。バックグラウンドプロセスが実行されている限り、通知は引き続き受信されます。Chromeバックグラウンドプロセスが実行されていない場合、通知は受信されません。 Firefox - Mac OS Xでは、ウィンドウが閉じられていてもプロセスは存在し、すべてのウィンドウが閉じられている場合でも通知を受信できます(Firefoxがまだ実行されていることを示すドットがドックに表示されている限り)。Windowsでは、すべてのウィンドウが閉じられた後にプロセスが終了するため、Firefoxウィンドウがまだ開いていない限り、通知を受信できません。 Safari - Safariは、通知がオペレーティングシステムに直接送信されるため、通知を受信するために実行されている必要はありません。ユーザーはSafari Web通知にサインアップする必要がありますが、その後、Safariが完全に閉じられている場合でも受信されます。 サブスクライバーは、メッセージが永久に期限切れになる前に、最後に知られている欠落している通知を取得するために最大3日間の猶予があります。 たとえば、サブスクライバーがFirefox Webプッシュ通知を受信するはずだったが、Firefoxが閉じられていたとします。サブスクライバーが3日以内にFirefoxを開いた場合、サブスクライバーは期限切れになっていない最後に知られているWebプッシュ通知のみを受信します。サブスクライバーが3日後にFirefoxを開いた場合、3日以上前に送信されたWebプッシュ通知は受信されません。