メッセージの中止
オプションとして、条件文内で
abort_message("optional reason for aborting")Liquid メッセージタグを使用して、ユーザーへのメッセージ送信を防止できます。このリファレンス記事では、マーケティングキャンペーンでこの機能を使用する方法の例をいくつか紹介します。

キャンバスでメッセージステップが中止された場合、ユーザーはキャンバスから退出せず、次のステップに進みます。
abort_message() を使用したテスト送信
abort_message() は、条件を満たさないユーザーへの送信を停止します。メッセージはユーザーのプロファイルに表示されず、配信数やフリークエンシーキャップのカウントにも含まれません。
テスト送信が届かない場合は、中止条件を満たすユーザーとしてプレビューし、テスト送信で受信者の属性を現在のプレビューユーザーの属性でオーバーライドするを有効にしてください(または条件を満たすコンテンツテストグループメンバーを追加してください)。
「Number Games Attended」= 0 の場合にメッセージを中止する
例えば、試合に参加したことのない顧客にはメッセージを送信したくないとします。
{% if custom_attribute.${Number_Game_Attended} == 1 %}
Loved the game? Get 10% off your second one with code SAVE10.
{% elsif custom_attribute.${Number_Game Attended} > 1 %}
Love the games? Get 10% off your next one with code SAVE10.
{% else %}
{% abort_message() %}
{% endif %}
このメッセージは、試合に参加したことがある顧客にのみ送信されます。
英語を話す顧客にのみメッセージを送信する
顧客の言語が英語の場合にマッチする「if」ステートメントと、英語を話さない顧客またはプロファイルに言語が設定されていない顧客に対してメッセージを中止する「else」ステートメントを作成することで、英語を話す顧客にのみメッセージを送信できます。
{% if ${language} == 'en' %}
Send this message in English!
{% else %}
{% abort_message() %}
{% endif %}
デフォルトでは、中止された送信はメッセージングオブザーバビリティに結果 Liquid abort として表示されます。
かっこ内に理由の文字列を含めることができます。
{% abort_message('language was nil') %}
中止メッセージのクエリ
クエリビルダー、またはBrazeに接続されている自社のデータウェアハウスを使用して、Liquidロジックによってメッセージが中止されたときにトリガーされる特定の中止メッセージをクエリできます。
アボートロジックが評価されるタイミング
アボートロジックの評価タイミングは、メッセージチャネルによって異なります。
プッシュ、メール、SMS、webhook、Content Cards
アボートロジックは、Brazeがメッセージの配信を処理する送信時に評価されます。
アプリ内メッセージ
アボートロジックは、テンプレート化されたアプリ内メッセージに対してのみ、アプリ内メッセージがトリガーされた時点(例えば、ユーザーがトリガーイベントを実行したときやセッションを開始したとき)に評価されます。メッセージが最初にデバイスに送信された時点では評価されません。アプリ内メッセージはセッション開始時にSDKに配信され、ローカルにキャッシュされます。abort_message() の呼び出しを含むLiquidは、トリガー条件が満たされたときに実行されます。
中止率が高い場合のトラブルシューティング
キャンペーンやキャンバスのステップで、多くのユーザーが入ったにもかかわらず送信数が少ない場合や、配信数が予想よりも低い場合、中止ロジックが一般的な原因です。特に、Liquid が評価時に欠落している属性、カタログデータ、またはリスト値を必要とする場合に起こります。
Messaging Observability を確認する
- Messaging Observability を開きます。
- キャンペーンまたはキャンバスを選択し、Run Dashboard を選択します。
- 詳細ログで、Liquid abort の結果でフィルターします。
- 中止が1つのチャネル(メールのみなど)に集中しているか、同じキャンバス内の複数のチャネルにわたっているかを確認します。
送信時の属性と Liquid を検証する
プッシュ、メール、SMS、webhook、Content Cardsの場合、中止ロジックは Braze がメッセージを配信用に処理するときに実行されます。ユーザーがキャンバスに入ったときや、トリガーイベントが以前に発火したときではありません。
- 必要なカスタム属性、イベントプロパティ、またはカタログフィールドが、メッセージステップの実行前にユーザーに設定されていることを確認します。
abort_message()を呼び出す前に、明示的な nil または空チェックを追加します。値が欠落している場合に中止するelseブランチは、そのデータを持たないすべてのユーザーの送信を停止します。- パーソナライゼーションがリスト、セグメント、またはConnected Contentのレスポンスに依存している場合、メッセージステップの実行時にそのデータが利用可能であることを確認します。リストのメンバーシップや下流のデータが準備される前に、ユーザーがキャンバスに入ることがあります。
キャンバス固有の動作
キャンバスでメッセージステップが中止された場合、ユーザーはキャンバスを退出しません。代わりに、次のステップに進みます。中止は、そのメッセージステップの送信数にのみ影響します。
キャンバスの中止を診断する場合:
- メッセージステップのエントリユーザー数と同じステップの送信ユーザー数を比較します。
- 1つのチャネルのみが中止される場合、そのステップのチャネル固有の Liquid または購読ステータスを確認します。
- リストまたはカタログの更新後に中止が急増する場合、更新が完了する前にメッセージステップが実行されたかどうかを確認します。
プレビューとテスト送信で検証する
メッセージ作成画面で、影響を受ける受信者のプロファイルに一致するユーザーとしてプレビューします。テスト送信では、中止ロジックがプロファイルデータに依存している場合、Override recipients’ attributes with current preview user’s attributes を有効にします。
中止の例について詳しくは、中止メッセージのクエリを参照してください。
考慮事項
abort_message() Liquid メッセージタグは、ユーザーへのメッセージ送信を防止します。つまり、メッセージはユーザープロファイルに表示されず、配信やフリークエンシーキャップのカウントにも含まれません。