Web用ソフトプッシュプロンプト
ソフトプッシュプロンプトは、ブラウザーのネイティブ通知許可プロンプトの前に表示するカスタムメッセージです。ユーザーにプッシュ通知を有効にすべき理由を説明し、初回訪問時にシステムプロンプトを表示する場合と比較してオプトイン率を向上させることができます。このガイドでは、Braze Web SDKを使用したソフトプッシュプロンプトの実装方法について、プロンプトをトリガーするタイミング、メッセージコンテンツのカスタマイズ方法、ユーザーがプッシュの価値を理解した後にリクエストを行うためのベストプラクティスを説明します。
前提条件
この機能を使用する前に、Web Braze SDKを統合する必要があります。 プッシュ通知の設定も必要です。
mParticleの組み込みキットを使用してWebでBrazeを統合している場合は、ソフトプッシュプロンプトの実装手順についてmParticleのBraze Webイベント統合のステップ3を参照してください。
ソフトプッシュプロンプトについて
サイトでは、プッシュ許可をリクエストする前に、ユーザーに「準備」をさせてプッシュ通知を送信する理由を説明する「ソフト」プッシュプロンプトを実装することをお勧めします。これが有用なのは、ブラウザーがユーザーに直接プロンプトを表示できる頻度を制限しており、ユーザーが許可を拒否した場合、再度尋ねることができなくなるためです。
または、標準のWebプッシュ統合で説明されているようにrequestPushPermission()を直接呼び出す代わりに、特別なカスタムハンドリングを含めたい場合は、トリガーされたアプリ内メッセージを使用してください。

ソフトプッシュプロンプトの設定

このガイドでは、Braze Web SDK 4.0.0+ のコードサンプルを使用します。最新の Web SDK バージョンにアップグレードするには、SDK アップグレードガイドを参照してください。
ステップ1:プッシュプライマーキャンペーンを作成する
まず、Brazeダッシュボードで「Prime for Push」アプリ内メッセージングキャンペーンを作成する必要があります。
- お好みのテキストとスタイルでモーダルアプリ内メッセージを作成します。
- 次に、クリック時の動作をメッセージを閉じるに設定します。この動作は後でカスタマイズします。
- メッセージにキーと値のペアを追加します。キーは
msg-id、値はpush-primerです。 - メッセージにカスタムイベントトリガーアクション(「prime-for-push」など)を割り当てます。必要に応じて、ダッシュボードからカスタムイベントを手動で作成できます。
ステップ2:呼び出しを削除する
Braze SDKの統合で、読み込みスニペット内のautomaticallyShowInAppMessages()への呼び出しを見つけて削除します。
ステップ3:統合を更新する
最後に、削除した呼び出しを以下のスニペットに置き換えます。openSession()を呼び出す前にsubscribeToInAppMessage()を呼び出してください。これにより、プッシュプライマーメッセージを受信できるよう、アプリ内メッセージリスナーが適切なタイミングで登録されます。
import * as braze from "@braze/web-sdk";
// Be sure to remove any calls to braze.automaticallyShowInAppMessages()
braze.subscribeToInAppMessage(function(inAppMessage) {
// check if message is not a control variant
if (inAppMessage instanceof braze.inAppMessage) {
// access the key-value pairs, defined as `extras`
const keyValuePairs = inAppMessage.extras || {};
// check the value of our key `msg-id` defined in the Braze dashboard
if (keyValuePairs["msg-id"] === "push-primer") {
// We don't want to display the soft push prompt to users on browsers
// that don't support push, or if the user has already granted/blocked permission
if (
braze.isPushSupported() === false ||
braze.isPushPermissionGranted() ||
braze.isPushBlocked()
) {
// do not call `showInAppMessage`
return;
}
// user is eligible to receive the native prompt
// register a click handler on one of the two buttons
if (inAppMessage.buttons[0]) {
// Prompt the user when the first button is clicked
inAppMessage.buttons[0].subscribeToClickedEvent(function() {
braze.requestPushPermission(
function() {
// success!
},
function() {
// user declined
}
);
});
}
}
}
// show the in-app message now
braze.showInAppMessage(inAppMessage);
});
ソフトプッシュプロンプトをユーザーに表示したい場合は、このアプリ内メッセージをトリガーするイベント名を指定してbraze.logCustomEventを呼び出します。
よくある質問
ソフトプッシュプロンプトとは何ですか?
ソフトプッシュプロンプトは、ブラウザーのネイティブ通知許可ダイアログの前に表示するカスタムのアプリ内メッセージまたはオンサイトメッセージです。プッシュ通知の価値を説明することで、システムプロンプトが表示された際にユーザーが許可を受け入れる可能性が高まります。
ソフトプッシュプロンプトはいつ表示すべきですか?
ソフトプッシュプロンプトは、ユーザーがプロダクトの価値を理解した後に表示してください。たとえば、オンボーディングの完了後や、意味のあるアプリ内アクションの後が適切です。最初のページ読み込み時には表示しないでください。実装の詳細については、このガイドのWeb SDKのステップを参照してください。