プッシュサブスクリプションの状態について
プッシュサブスクリプションの状態
Brazeの「プッシュサブスクリプションの状態」は、プッシュ通知の受信に対するユーザーのグローバルな設定を識別します。サブスクリプションの状態はユーザーベースであるため、個々のアプリに固有のものではありません。サブスクリプションの状態は、プッシュ通知のターゲットにするユーザーを決定する際に役立つフラグとなります。

ユーザーのプッシュサブスクリプションの状態は、ユーザーのすべてのデバイスを含むユーザープロファイル全体に適用されます。
以下のサブスクリプション状態オプションがあります:Subscribed、Opted-In、および Unsubscribed。
デフォルトでは、ユーザーがプッシュ通知でメッセージを受け取るには、プッシュサブスクリプション状態が Subscribed または Opted-In のいずれかであり、かつフォアグラウンドプッシュが有効になっている必要があります。メッセージの作成時に、必要に応じてこの設定をオーバーライドできます。
| オプトイン状態 | 説明 |
|---|---|
Subscribed |
Brazeでユーザープロファイルが作成されたときのデフォルトのプッシュサブスクリプション状態。 |
Opted-In |
ユーザーがプッシュ通知を受け取ることを明示的に希望しました。ユーザーがOSレベルのプッシュプロンプトを承認した場合、Brazeは自動的にそのユーザーのオプトイン状態を Opted-In に変更します。Android 12またはそれ以前のユーザーには適用されません。 |
Unsubscribed |
ユーザーがアプリケーションやブランドが提供するその他の方法で、プッシュ配信を明示的に解除しました。デフォルトでは、BrazeのプッシュCampaignsは、プッシュ通知に対して Subscribed または Opted-in のユーザーのみを対象とします。 |

Brazeがユーザーのプッシュサブスクリプションの状態を自動的に Unsubscribed に変更することはありません。ユーザーのプッシュサブスクリプション状態が Unsubscribed の場合、そのユーザーのセグメンテーションにおける Foreground Push Enabled フィルターは false になることを覚えておいてください。
プッシュ登録と到達可能なユーザー
プッシュサブスクリプションの状態はユーザーの設定を反映しますが、ダッシュボードでプッシュの到達可能としてカウントされるかどうかは、プッシュ登録にも依存します。つまり、プロファイルに有効なフォアグラウンドプッシュトークンが存在する必要があります。Brazeがチャネルレベルのカウントを計算する方法については、Segmentサイズの測定を参照してください。
- プッシュCampaignsとCanvases: プッシュ登録されていないユーザーは、プッシュサブスクリプション状態が
SubscribedまたはOpted-Inであっても、オーディエンス統計のAndroidプッシュ通知またはiOSプッシュ通知の到達可能なユーザーには含まれません。 - その他のチャネル: 同じユーザーでも、対象となる他のチャネル(メールやアプリ内メッセージなど)では到達可能としてカウントされる場合があります。
- Segments: Segmentのメンバーシップはフィルターに従います。プッシュ登録のないユーザーも、フィルターで除外されない限り(例:Foreground Push Enabled)、Segmentに残ります。Segmentの合計メンバーシップは、プッシュ固有の到達可能なユーザー行に表示されるユーザー数の合計よりも多くなる場合があります。
ユーザープロファイルのプッシュサブスクリプション状態が Subscribed であっても、プッシュトークンが割り当てられていない場合があります。そのようなユーザーは、Brazeが有効なトークンを記録するまで、Androidプッシュ通知またはiOSプッシュ通知の到達可能なユーザーにはカウントされません。
フィルターの定義については、セグメンテーションフィルターを参照してください。
プッシュサブスクリプションの状態の更新
ユーザーのプッシュサブスクリプション状態を更新する以下の方法を確認してください。
自動オプトイン(デフォルト)
Brazeはデフォルトで、ユーザーが初めてアプリのプッシュ通知を承認したときに、ユーザーのプッシュサブスクリプション状態を Opted-In に設定します。また、ユーザーがシステム設定でプッシュ権限を無効にした後、再度有効にした場合にも同様の処理を行います。
このデフォルトの動作を無効にするには、Android Studioプロジェクトの braze.xml ファイルに次のプロパティを追加します。
1
<bool name="com_braze_optin_when_push_authorized">false</bool>
Braze Swift SDKバージョン7.5.0以降では、Xcodeプロジェクトの AppDelegate.swift ファイルに optInWhenPushAuthorized の設定を追加することで、この動作を無効にしたり、さらにカスタマイズしたりすることができます。
1
2
3
4
configuration.optInWhenPushAuthorized = false // disables the default behavior
let braze = Braze(configuration: configuration)
AppDelegate.braze = braze
SDKの統合
Web、Android、またはiOSで setPushNotificationSubscriptionType メソッドを使用して、Braze SDKでユーザーのサブスクリプション状態を更新できます。例えば、このメソッドを使って、ユーザーが手動でプッシュ通知を有効または無効にできる設定ページをアプリ内に作成することができます。
REST API
ユーザーのサブスクリプション状態を更新するには、Braze REST APIの/users/track エンドポイントを使用して、ユーザーのpush_subscribe属性を更新します。
プッシュ有効化とプッシュサブスクリプション状態の違い
プッシュ有効化とは、ユーザーが特定のデバイスでOSまたはブラウザレベルの通知受信許可を付与しているかどうかを指します。プッシュサブスクリプション状態は、Brazeレベルの設定であり、プロファイル全体でプッシュを受信するためのユーザーのグローバルな設定を表します。
自動オプトインが有効(デフォルト)の場合、ユーザーがアプリのプッシュ通知を承認するか、システム設定でプッシュ権限を再度有効にすると(例えば、iOS、Android 13以降、およびサポートされているWebブラウザ)、Brazeはユーザーのプッシュサブスクリプション状態を Opted-In に更新します。それ以外の場合、SDKメソッドまたはREST API呼び出しを使用して明示的に変更するまで、ユーザーのプッシュサブスクリプション状態は Subscribed のままです。
Brazeは、ユーザーがOS、ブラウザ、またはアプリレベルで通知をオプトアウトした場合でも、ユーザーのプッシュサブスクリプション状態を自動的に Unsubscribed に変更することはありません。ユーザーのプッシュサブスクリプション状態を更新するには、Brazeで更新する必要があります。例えば、ユーザーがアプリ内のユーザー設定センターからプッシュを無効にした場合、Brazeでプッシュサブスクリプション状態を Unsubscribed に更新してください。Brazeはユーザー設定センターに基づいてユーザープロファイルを自動的に更新しません。サブスクリプション状態をユーザーのアプリ内設定と一致させるには、SDK(iOSまたはAndroid)またはREST APIを使用して適切なメソッドを呼び出してください。
プッシュ有効化とプッシュサブスクリプション状態の違い
プッシュ有効化とは、ユーザーが特定のデバイスでOSまたはブラウザレベルの通知受信許可を付与しているかどうかを指します。プッシュサブスクリプション状態は、Brazeレベルの設定であり、プロファイル全体でプッシュを受信するためのユーザーのグローバルな設定を表します。
自動オプトインが有効(デフォルト)の場合、ユーザーがアプリのプッシュ通知を承認するか、システム設定でプッシュ権限を再度有効にすると(例:iOS、Android 13以降、対応するWebブラウザ)、Brazeはユーザーのプッシュサブスクリプション状態を Opted-In に更新します。それ以外の場合、SDKメソッドまたはREST API呼び出しを使用して明示的に変更するまで、ユーザーのプッシュサブスクリプション状態は Subscribed のままです。
ユーザーがOS、ブラウザ、またはアプリレベルで通知をオプトアウトしても、Brazeがユーザーのプッシュサブスクリプション状態を自動的に Unsubscribed に変更することはありません。ユーザーのプッシュサブスクリプション状態を更新するには、Brazeで更新する必要があります。例えば、ユーザーがアプリ内のユーザー設定センターからプッシュを無効にした場合、Brazeでプッシュサブスクリプション状態を Unsubscribed に更新してください。Brazeはユーザー設定センターに基づいてユーザープロファイルを自動更新しません。サブスクリプション状態をユーザーのアプリ内設定と一致させるには、SDK(iOSまたはAndroid)またはREST APIを使用して適切なメソッドを呼び出してください。
プッシュサブスクリプションの状態の確認

Brazeでは、以下のいずれかの方法でユーザーのプッシュサブスクリプション状態を確認できます。
- ユーザープロファイル: Brazeダッシュボードのユーザー検索ページから、個々のユーザープロファイルにアクセスできます。(メールアドレス、電話番号、または外部ユーザーIDを使用して)ユーザーのプロファイルを見つけた後、Engagementタブを選択してユーザーのサブスクリプション状態を表示し、手動で調整することができます。
- REST APIでのエクスポート: Segmentごとのユーザーまたは識別子ごとのユーザーエンドポイントを使用して、個々のユーザープロファイルをJSON形式でエクスポートできます。Brazeは、デバイスごとのプッシュ有効化情報を含むプッシュトークンオブジェクトを返します。