Skip to main content
ダッシュボードを設定し、サービスワーカーをアップロードして、JavaScript SDKを初期化することで、OneSignal Webプッシュをサイトに追加します。OneSignalはChrome、Firefox、Edge、Safari、およびその他の主要なブラウザーをサポートしています。 WordPressまたはShopifyを使用している場合は、このJavaScript SDKガイドではなく、プラットフォーム統合に従ってください。より深いカスタマイズ、プロンプト、initオプション、サービスワーカーのパスをコードで設定する必要がある場合は、カスタムコードを使用してください。

WordPressセットアップ

公式のOneSignalプラグインをインストールします。プラグインがSDKとサービスワーカーを自動的に追加します。

Shopifyセットアップ

Vendo統合を通じてShopifyを接続します。Vendoはテーマコードを編集せずにストアフロントにSDKをデプロイします。

カスタムコードセットアップ

プロンプト、initオプション、サービスワーカーのパスをOneSignal.init()で設定します。
サイトがAngularReact、またはVueで構築されている場合は、このページのスニペットではなく、対応するフレームワークガイドを使用してください。

要件

  • HTTPSウェブサイト:WebプッシュはHTTPまたはシークレット/プライベートモードでは機能しません。
  • サーバーアクセス:サービスワーカーファイルをサイトにアップロードする必要があります。
  • 単一オリジン:Webプッシュは同一オリジンポリシーに従います。複数のオリジン(ドメイン/サブドメイン)がある場合は、複数のOneSignalアプリ(オリジンごとに1つ)が必要になります。このブラウザーの制限に準拠するには、次のいずれかを実行できます:
    • 購読のために単一のオリジンにトラフィックをリダイレクトする。
    • オリジンごとに1つずつ、複数のOneSignalアプリを作成する。
チームがすでにOneSignalでアカウントを作成している場合は、管理者ロールとして招待してもらうことで、アプリをセットアップできます。それ以外の場合は、onesignal.comで無料アカウントにサインアップして開始してください。

OneSignalアプリとプラットフォームの構成

OneSignalダッシュボードで:
  • Settings > Push & In-App > Webに移動します。
Webプラットフォームのアクティベーションを表示するOneSignalダッシュボードのSettingsページ

OneSignal設定でWebプラットフォームをアクティブ化

統合タイプを選択します:

Typical Site(推奨)

追加のコーディングなしで、OneSignalダッシュボードから直接プロンプトと設定を管理します。

WordPress

公式プラグインを使用したWordPressを使用している場合に必要です。

カスタムコード

プロンプトとSDK構成を完全に制御する必要がある開発者向け。

サイトのセットアップ

サイトの詳細を追加します:
  • Site Name: サイトの名前とデフォルトの通知タイトル。
  • Site URL: サイトのURL。詳細については、サイトURLを参照してください。
  • Auto Resubscribe: これを有効にすると、ブラウザーデータをクリアしたユーザーがサイトに戻ったときに自動的に再購読されます(新しい権限プロンプトは不要)。
  • Default Icon URL: 通知とプロンプトに表示される正方形256×256のPNG、JPG、または非アニメーションGIFをアップロードします。設定されていない場合は、デフォルトとしてベルアイコンが使用されます。通知アイコンをご覧ください。
ユーザーがブラウザーデータをクリアすると、サイトに戻るまでプッシュを受信できなくなります。Auto Resubscribeを有効にすると、新しい権限プロンプトなしで再度購読されます。購読をご覧ください。
サイト名、URL、アイコン設定を表示するOneSignal Webプッシュ構成

OneSignalダッシュボードのWeb設定

サイトURL

サイトの正確なオリジンを入力します。例:https://yourdomain.com。サイトがそのように構成されていない場合は、www.の使用を避けてください。 複数のオリジンがある場合は、要件をご覧ください。

ローカルテスト

Web SDKはlocalhost環境でテストできます。localhostでテストする場合は、本番アプリとは別のOneSignalアプリを使用してください。
SITE URLをlocalhost環境のURLと正確に一致するように設定します。URLは次の一般的なlocalhost形式のいずれかと一致する必要があります:
  • http://localhost
  • https://localhost:3000
  • http://127.0.0.1
  • https://127.0.0.1:5000
localhost URLがHTTPを使用している場合は、Treat HTTP localhost as HTTPS for testingを選択してください。Chromeはhttp://localhosthttp://127.0.0.1をセキュアオリジンとして扱うため、SDKはこれらのホストに限りHTTP経由で初期化できます。その他のホスト名(例:http://mysite.local)はセキュアとして扱われず、Webプッシュのテストには使用できません。
Treat HTTP localhost as HTTPSオプションを表示するOneSignalのlocalhost設定

OneSignalダッシュボードでのローカルテスト

localhostで初期化する際は、OneSignalのinitオプションにallowLocalhostAsSecureOrigin: trueを追加してください。自己署名証明書を使用したHTTPS上のlocalhostをテストしている場合、テスト用に無効な証明書を無視するようChromeに要求する必要がある場合があります:--allow-insecure-localhost。FirefoxとSafariは、セキュリティ証明書の例外を追加するための組み込みメカニズムを提供します。
HTML

権限プロンプト

Typical Siteセットアップでは、あなたまたはチームメンバーがOneSignalダッシュボードを介して、いつでも権限プロンプトを追加、削除、更新できます。

Web権限プロンプト

ブラウザーの権限ダイアログがユーザーに表示されるタイミングと方法を設定します。

ウェルカム通知(オプション)

ユーザーがプッシュ通知を購読したときに送信されるウェルカム通知を設定することもできます。Typical SiteとWordPressではダッシュボードで設定します。カスタムコードではOneSignal.init()welcomeNotificationを設定します。 ダッシュボードで設定するには、Settings > Push & In-App > Webに移動します:
ウェルカム通知の設定

ウェルカム通知の設定

カスタムコードセットアップについては、Web SDKリファレンスのwelcomeNotificationパラメータをご覧ください。

詳細設定

以下の機能はOneSignalダッシュボードで設定できます。

Webhook

Web SDKは、特定のWebプッシュイベントを選択したURLにPOSTできます。 WebプッシュWebhookはイベントWebhookとは別の実装であり、互換性がありません。

Webプッシュwebhook

WebプッシュイベントをPOSTリクエスト経由でサーバーに送信します。

サービスワーカー

Web SDKは、別の場所を指定しない限り、サイトのルート(https://yourdomain.com/OneSignalSDKWorker.js)でOneSignalSDKWorker.jsを探します。 ルート以外の場所をSDKに伝える方法は、選択した統合タイプによって異なります。 Typical Site: ダッシュボードでパスを設定します。コードでserviceWorkerPathを設定しないでください。 ファイルをルートでホストする場合は、デフォルトのパス設定のままにします。サブディレクトリでホストする場合は、以下のパスを設定する必要があります。設定しないと、SDKは引き続き/OneSignalSDKWorker.jsをリクエストし、登録に失敗します。
  1. Settings > Push & In-App > Webに移動します。
  2. Advanced Push Settingsを開きます。
  3. Customize service worker paths and filenamesを有効にします。
  4. ファイルの公開URLに一致するようにフィールドを設定します:
サービスワーカーのパス、ファイル名、スコープの設定フィールド

サービスワーカー構成

上記の例の値では、ファイルはhttps://yourdomain.com/push/onesignal/OneSignalSDKWorker.jsで公開アクセス可能である必要があります。 カスタムコード: ダッシュボードのパスフィールドは使用しないでください。OneSignal.init()serviceWorkerPathserviceWorkerParamを渡します。initオプションについてはカスタムコードセットアップを、ワーカーの結合と移行についてはOneSignalサービスワーカーをご覧ください。

クリック動作

クリック動作は、ユーザーが同一オリジンのタブですでにサイトを開いている場合に何が起こるかのみを変更します。一致するタブが開いていない場合、ブラウザーは新しいタブを開いて通知のURLに移動します。この設定はその動作を変更しません。 クリック動作はChrome、Edge、Firefox、Safariで機能します。 起動URLが設定されていない場合、通知のURLはホームページになります。起動URLを設定すると、ユーザーを特定のページに誘導したり、UTMトラッキングを追加したり、?_osp=do_not_openを追加してページを開かずに通知を閉じたりできます。 同一オリジンのタブがすでに開いている場合、動作は選択した設定によって異なります:

URL、リンク、ディープリンク

ユーザーを特定のページに誘導したり、UTMトラッキングを追加したり、?_osp=do_not_openで通知を閉じたりします。

アクションボタン

デフォルトのクリックを使用せずに、ユーザーが通知からアクションを実行できるようにします。

Web SDKプッシュイベントリスナー

クリックイベントをリッスンし、カスタムコードでアプリ内動作を実行します。

永続性

永続性は、ユーザーが操作するまで通知を画面上に保持します。デスクトップのChromeとEdgeでのみ機能します。Firefox、Safari、およびすべてのモバイルブラウザーではこの設定は無視されます。 永続的な通知はテキスト、画像、アクションボタンを圧迫する可能性があるため、これがユーザーにとって問題になる場合は無効にすることをお勧めします。 値が未設定の場合、SDKは現在、永続性をオンとして扱います。
  • Typical Site: Settings > Push & In-App > WebのPersistenceトグルを使用します。
  • カスタムコード: OneSignal.init()persistNotificationを設定します。ダッシュボードのトグルは適用されません。persistNotificationをご覧ください。
永続性の変更は、更新後にサイトにアクセスした購読者に対してのみ有効になります。変更が反映されない場合は、購読者がサイトを再訪問するのを待つか、ブラウザーデータのクリアを依頼してください。

Safari Web Push .p12証明書(オプション、レガシー)

すでに独自のSafari Web Push .p12証明書を持っていて、レガシーSafariユーザーをサポートしたい場合を除き、これはオフのままにしてください。 最新のSafari(macOS 13+およびiOS 16.4+)は、VAPID(Voluntary Application Server Identification)を使用した標準ベースのWebプッシュを使用します。OneSignalはVAPIDを自動的に処理します。これらのブラウザーには証明書をアップロードする必要はありません。 Appleは、Safari Webプッシュ用の.p8トークンやキーを提供していません。ネイティブのiOSおよびmacOSアプリはAPNsとの認証に.p8を使用しますが、Safari Webプッシュは使用しません。Safariに適用される唯一のApple認証情報はSafari Web Push .p12証明書であり、レガシーのWebsite Push IDパスにのみ適用されます。 そのレガシーパスは引き続き以下に適用されます:
  • macOS 12以前のSafari(VAPID非対応)
  • 古いSafari APIを通じてすでに許可を与えた既存の購読者(Safariはこれらの購読をVAPIDに移行しません)
OneSignalは、この残されたレガシーパス用の証明書を引き続き提供できます。顧客が提供する.p12は、Safari 16.4+(macOS 13+またはiOS 16.4+)の新規購読者には使用されません。これらの購読はVAPIDを使用します。 すでに独自の証明書をお持ちの場合は、Settings > Push & In-App > Web > Advanced Push Settingsで**Safari Web Push .p12 certificate (optional, advanced)**を有効にします。.p12ファイルとそのパスワードをアップロードします。Typical Siteとカスタムコードのどちらもダッシュボードで設定します。OneSignal.init()では設定しません。
Advanced Push SettingsのSafari Web Push .p12証明書アップロードのトグルとフィールド

Safari Web Push .p12証明書(オプション、レガシー)


サービスワーカーファイルのアップロード

OneSignalSDKWorker.jsサービスワーカーファイルをサイトに追加します。 OneSignalダッシュボードからダウンロードするか、次の1行を含むOneSignalSDKWorker.jsという名前のファイルを作成してください:
OneSignalサービスワーカーファイルのダウンロードとセットアップ手順

サービスワーカーファイルのアップロード手順

Web SDKは、別の場所を指定しない限り、サイトのルートでこのファイルを探します。このページはTypical Siteなので、ダッシュボードでファイルの場所を一致させます。カスタムコードを選択した場合は、代わりにOneSignal.init()でパスを設定してください。カスタムコードセットアップをご覧ください。 ルート(デフォルト): https://yourdomain.com/OneSignalSDKWorker.jsで利用可能になるようにファイルをアップロードします。サービスワーカーのパス設定は変更しないでください。SDKはこのURLを自動的にリクエストします。 サブディレクトリ: サイトにすでにサービスワーカーがある場合(例えばPWA)、/を所有するワーカーと競合しないように、OneSignalのファイルを/push/onesignal/などのサブディレクトリに配置します。次に、SDKに探す場所を伝えます:サービスワーカーに従い、Customize service worker paths and filenamesを有効にします。Path to service worker filesService worker registration scopeをそのサブディレクトリ(例:/push/onesignal/)に設定します。ファイルはhttps://yourdomain.com/push/onesignal/OneSignalSDKWorker.jsで公開アクセス可能である必要があります。
ファイルがサイトルートになく、これらのダッシュボードフィールドを設定していない場合、SDKは引き続きhttps://yourdomain.com/OneSignalSDKWorker.jsを取得しようとし、サービスワーカーの登録に失敗します。カスタムコードセットアップでは、これらのダッシュボードフィールドの代わりにOneSignal.init()serviceWorkerPathを設定する必要があります。
ファイルがサーバーにアップロードされたら、次のことを確認して動作を確認してください:
1

場所を確認

SDKが使用するように設定されているURLにアクセスします。デフォルト設定のままにした場合、そのURLはサイトルートです。パスをカスタマイズした場合は、Path to service worker filesとファイル名を組み合わせたものと一致する必要があります:
  • デフォルト:https://yourdomain.com/OneSignalSDKWorker.js
  • サブディレクトリの例:https://yourdomain.com/push/onesignal/OneSignalSDKWorker.js
2

オリジンで公開アクセス可能である必要があります

OneSignalSDKWorker.jsファイルは、オリジンで公開アクセス可能で利用可能である必要があります。CDN経由でホストしたり、リダイレクトで別のオリジンに配置したりすることはできません。ファイルのURLにアクセスすると、コードが表示されるはずです。
3

content-type: application/javascriptで提供される必要があります

これはJavaScriptファイルであり、そのように提供される必要があります。content-typeがtext/htmlであってはなりません。

OneSignalサービスワーカー

高度な設定および他のWebプッシュプロバイダーからの移行。

サイトにコードを追加

JavaScript SDKを使用してサイトでOneSignalを初期化するには、提供されたコードをWebサイトの<head>タグにコピーします。OneSignalダッシュボードでは、アプリIDがあらかじめ入力された同じスニペットが提供されます。 Google Tag Managerでスクリプトを読み込む場合は、ここで止めてGoogle Tag Managerセットアップに従ってください。そのガイドでは、このダッシュボードとサービスワーカーの作業を使用し、以下のスニペットを貼り付ける代わりにGTMでSDKを初期化します。
HTML

iOS Webプッシュサポート

Appleは、iOS 16.4+を実行しているiPhoneとiPadでWebプッシュ通知のサポートを開始しました。サポートされているブラウザーで追加のセットアップなしにWebプッシュが機能するAndroidデバイスとは異なり、Appleはmanifest.jsonファイルと、ユーザーがサイトをホーム画面に追加するアクションを必要とします。

iOS Webプッシュセットアップ

必要なmanifest.jsonファイルを追加し、ユーザーにサイトをホーム画面に追加するように案内します。

OneSignal SDK統合のテスト

このガイドでは、プッシュ通知とサブスクリプション登録をテストして、OneSignal SDK統合が正しく機能していることを確認する方法を説明します。

Webプッシュサブスクリプションを確認

1

テストデバイスでサイトを起動します。

  • テスト中は、Chrome、Firefox、Edge、またはSafariを使用してください。
  • **シークレットモードやプライベートブラウジングモードは使用しないでください。**これらのモードでは、ユーザーはプッシュ通知にサブスクライブできません。
  • 許可プロンプトの設定に基づいてプロンプトが表示されるはずです。
  • プッシュ通知にサブスクライブするには、ネイティブプロンプトでAllowをクリックします。
通知を許可またはブロックするかを尋ねるブラウザのネイティブ許可プロンプト

Webプッシュのネイティブ許可プロンプト

2

OneSignalダッシュボードを確認

  • Audience > Subscriptionsに移動します。
  • ステータスがSubscribedの新しいエントリが表示されるはずです。
OneSignalダッシュボードのサブスクリプションページ。Subscribedステータスのウェブプッシュサブスクリプションを表示

「Subscribed」ステータスのサブスクリプションを表示するダッシュボード

Webプッシュサブスクリプションの作成に成功しました。 Webプッシュサブスクリプションは、ユーザーがサイトでプッシュ通知に初めてサブスクライブしたときに作成されます。

テストサブスクリプションをセットアップ

テストサブスクリプションは、メッセージを送信する前にプッシュ通知をテストするのに役立ちます。
1

Test Usersに追加します。

ダッシュボードで、サブスクリプションの横にある**Options(3つのドット)**ボタンをクリックし、Add to Test Usersを選択します。
サブスクリプションのオプションメニュー。テストサブスクリプションに追加オプションを表示

デバイスをtest usersに追加

2

サブスクリプションに名前を付けます。

test usersタブで後でデバイスを簡単に識別できるように、サブスクリプションに名前を付けます。
3

テストユーザーセグメントを作成します。

Audience > Segments > New Segmentに移動します。
4

セグメントに名前を付けます。

セグメントにTest Usersという名前を付けます(この名前は後で使用されるため重要です)。
5

Test Usersフィルターを追加し、Create Segmentをクリックします。

セグメントエディター。Test Usersフィルターが選択され、セグメント名がTest Usersになっている

Test Usersフィルターを使用して「Test Users」セグメントを作成

テストユーザーのセグメントの作成に成功しました。 この個別のデバイスとテストユーザーのグループにメッセージを送信するテストが可能になりました。

API経由でテストプッシュを送信

1

App API KeyとApp IDを取得します。

OneSignalダッシュボードで、**Settings > Keys & IDs**に移動します。
2

提供されたコードを更新します。

以下のコードのYOUR_APP_API_KEYYOUR_APP_IDを実際のキーに置き換えます。このコードは、先ほど作成したTest Usersセグメントを使用します。
3

コードを実行します。

ターミナルでコードを実行します。
4

画像とconfirmed receiptを確認します。

すべてのセットアップ手順が正常に完了した場合、テストサブスクリプションは通知を受信するはずです。
画像をサポートしているのはChromeのみです。画像は折りたたまれた通知ビューでは小さく表示されます。通知を展開すると、完全な画像が表示されます。
Chrome macOSでカスタム画像を表示した展開されたプッシュ通知

Chrome macOSで画像付きの展開されたプッシュ通知

5

confirmed receiptを確認します。

ダッシュボードでDelivery > Sent Messagesに移動し、メッセージをクリックして統計を表示します。confirmed統計が表示されるはずです。これはデバイスがプッシュを受信したことを意味します。
Safariはconfirmed receiptをサポートしていません。

プッシュ通知メッセージレポート

プッシュ通知の配信、クリック、コンバージョン統計を表示します。
API経由でセグメントに通知を送信することに成功しました。
通知が届かない場合は、以下の情報を添えてsupport@onesignal.comにご連絡ください:
  • APIリクエストとレスポンスを.txtファイルにコピー&ペースト
  • サブスクリプションID
  • OneSignalコードを含むウェブサイトURL

ユーザー識別

前のセクションではウェブプッシュサブスクリプションの作成方法を説明しました。このセクションでは、OneSignal SDKを使用してすべてのサブスクリプション(プッシュ、メール、SMSを含む)にわたるユーザーの識別に拡張します。プラットフォーム間でユーザーを統合しエンゲージするために、External ID、タグ、マルチチャネルサブスクリプション、プライバシー、イベントトラッキングについて説明します。

External IDを割り当て

External IDを使用して、バックエンドのユーザー識別子を使用して、デバイス、メールアドレス、電話番号間でユーザーを一貫して識別します。これにより、チャネルとサードパーティシステム間でメッセージングが統一されたままになります(特に統合に重要)。 SDKのloginメソッドを使用して、アプリによってユーザーが識別されるたびにExternal IDを設定します。
OneSignalは、サブスクリプション(Subscription ID)とユーザー(OneSignal ID)に対して一意の読み取り専用IDを生成します。ユーザーが異なるデバイスでアプリをダウンロードしたり、ウェブサイトにサブスクライブしたり、アプリ外でメールアドレスや電話番号を提供したりすると、新しいサブスクリプションが作成されます。すべてのサブスクリプションにわたってユーザーを識別するために、SDKを介してExternal IDを設定することを強くお勧めします。作成方法に関係なく。

データタグを追加

タグは、ユーザープロパティ(usernamerole、設定など)とイベント(purchase_dategame_level、ユーザーインタラクションなど)を保存するために使用できる文字列データのキーと値のペアです。タグは、高度なメッセージパーソナライゼーションセグメンテーションを強化し、より高度なユースケースを可能にします。 アプリでイベントが発生したときに、SDKのaddTagおよびaddTagsメソッドを使用してタグを設定します。 この例では、ユーザーはレベル6に到達し、current_levelというタグで識別され、値は6に設定されます。
OneSignal user profile showing a data tag named current_level with value 6

"current_level"というタグが"6"に設定されたOneSignalのユーザープロファイル

レベルが5から10の間のユーザーのセグメントを作成し、それを使用してターゲット化されたパーソナライズされたメッセージを送信できます:
Segment editor filtering users where current_level is greater than 4 and less than 10

current_level値が4より大きく10より小さいユーザーをターゲットとするセグメントを示すセグメントエディター


Push notification composer targeting the Level 5-10 segment with a personalized message

パーソナライズされたメッセージでLevel 5-10セグメントをターゲットとするプッシュ通知を示すスクリーンショット

メールおよび/またはSMSサブスクリプションを追加

OneSignal SDKはユーザーがオプトインすると自動的にウェブプッシュサブスクリプションを作成します。対応するサブスクリプションを作成することで、メールとSMSチャネルを通じてユーザーにリーチすることもできます。 メールアドレスや電話番号がOneSignalアプリに既に存在する場合、SDKはそれを既存のユーザーに追加し、重複は作成しません。 ダッシュボードのAudience > UsersまたはView user APIを使用して、統合されたユーザーを表示できます。
OneSignal user profile showing push, email, and SMS subscriptions linked by External ID

External IDによって統合されたプッシュ、メール、SMSサブスクリプションを持つユーザープロファイル

マルチチャネルコミュニケーションのベストプラクティス
  • メールまたはSMSサブスクリプションを追加する前に、明示的な同意を得てください。
  • 各コミュニケーションチャネルの利点をユーザーに説明してください。
  • ユーザーが好むチャネルを選択できるように、チャネルの設定を提供してください。

プライバシーとユーザー同意

OneSignalがユーザーデータを収集するタイミングを制御するには、SDKの同意ゲーティングメソッドを使用します: プライバシーとセキュリティの詳細については:

SDKが収集するデータ

OneSignal SDKがユーザーから収集するデータを確認します。

個人データの取り扱い

プライバシー規制に準拠してユーザーデータを管理および保護します。

プッシュ、ユーザー、アプリ内イベントをリッスン

SDKリスナーを使用して、ユーザーのアクションと状態の変化に反応します。 SDKは、フックできるいくつかのイベントリスナーを提供します。詳細については、SDKリファレンスガイドを参照してください。

プッシュ通知イベント

ユーザー状態の変更


高度なセットアップと機能

統合を強化するための追加機能を探索します:

OneSignalへの移行

別のプッシュプロバイダーからOneSignalに移行します。

統合

OneSignalをサードパーティツールとプラットフォームに接続します。

アクションボタン

プッシュ通知にインタラクティブなボタンを追加します。

多言語メッセージング

ユーザーの好みの言語でローカライズされたメッセージを送信します。

Identity Verification

サーバーサイドのIdentity VerificationでSDK統合を保護します。

カスタムアウトカム

メッセージに関連するカスタムコンバージョンイベントを追跡します。

Web SDKのセットアップとリファレンス

Webプッシュセットアップ

統合のすべての主要なウェブプッシュ機能を有効にします。

Web SDKリファレンス

利用可能なメソッドと設定オプションの完全な詳細。
おめでとうございます!Web SDKセットアップガイドが正常に完了しました。


FAQ

HTTPサイトでWebプッシュは機能しますか?

いいえ。WebプッシュにはHTTPSが必要です。ブラウザーはこれをセキュリティ要件として強制しています。唯一の例外はlocalhost127.0.0.1で、ブラウザーは開発目的のためにこれらをセキュアオリジンとして扱います。

サービスワーカーファイルが必要なのはなぜですか?

サービスワーカーはバックグラウンドで実行され、ユーザーがサイトを開いていない場合でも受信したプッシュ通知を処理します。これがなければ、ブラウザーは通知を表示できません。OneSignalSDKWorker.jsファイルはオリジン上で公開アクセス可能である必要があります。

Web SDKはどこでサービスワーカーを探しますか?

Web SDKは、カスタムパスを設定しない限り、サイトのルート(https://yourdomain.com/OneSignalSDKWorker.js)でOneSignalSDKWorker.jsを探します。Typical Siteではダッシュボードでパスを設定します:Settings > Push & In-App > Web > Advanced Push SettingsCustomize service worker paths and filenamesを有効にします。カスタムコードではこれらのダッシュボードフィールドを使用しません。OneSignal.init()serviceWorkerPathserviceWorkerParamを渡します。カスタムコードセットアップをご覧ください。

サイトがWordPressまたはShopifyの場合、このガイドを使用すべきですか?

いいえ。WordPressセットアップまたはShopifyセットアップを使用してください。これらの統合はSDKとサービスワーカーを自動的に追加します。

Typical Siteとカスタムコードの違いは何ですか?

Typical Siteはこのページで推奨されるパスです:プロンプト、ほとんどの設定、サービスワーカーのパスをOneSignalダッシュボードで設定し、その後JavaScriptスニペットを追加します。カスタムコードはプログラムによる制御のためのものです。プロンプト、initオプション、サービスワーカーのパスを、serviceWorkerPathserviceWorkerParamを使用してコードで設定します。カスタムコードセットアップをご覧ください。

Safari証明書をアップロードする必要はありますか?

いいえ、macOS 13+またはiOS 16.4+のSafariには必要ありません。OneSignalは自動的にVAPIDを使用します。Safari Web Push .p12は、レガシーのWebsite Push IDパス(macOS 12以前と、既存のレガシー購読者)のためだけにアップロードしてください。Safari Web Push .p12証明書をご覧ください。

Safari Webプッシュに.p8キーを使用できますか?

いいえ。Appleは、Safari Webプッシュ用の.p8トークンやキーを提供していません。.p8はネイティブのiOSまたはmacOSアプリにのみ使用してください。iOS p8トークンベースのAPNs接続をご覧ください。唯一のSafari認証情報はSafari Web Push .p12であり、レガシーパスにのみ適用されます。

iOS(iPhone/iPad)でWebプッシュを使用できますか?

はい、iOS 16.4+から使用できます。ただし、Appleはmanifest.jsonファイルを必要とし、ユーザーは最初にサイトをホーム画面に追加する必要があります。完全な要件についてはiOS Webプッシュセットアップを参照してください。iOS WebプッシュはVAPIDを使用します。そのためにSafariの.p12や.p8をアップロードする必要はありません。

通知が表示されないのはなぜですか?

よくある原因としては、サービスワーカーファイルの配置が間違っている、ダッシュボードのSite URLが一致していない、またはブラウザー設定でユーザーが通知をブロックしていることが挙げられます。完全なトラブルシューティングのチェックリストについてはWebプッシュ:通知が表示されないを参照してください。
サポートが必要ですか?サポートチームとチャットするか、support@onesignal.comにメールしてください以下を含めてください:
  • 発生している問題の詳細と再現手順(利用可能な場合)
  • OneSignal App ID
  • 該当する場合は、External IDまたはSubscription ID
  • 該当する場合は、OneSignalダッシュボードでテストしたメッセージのURL
  • 関連するログまたはエラーメッセージ
お気軽にお問い合わせください!