キャンペーン:プッシュ配信でUATの成功数がゼロになる

UAT環境でのプッシュ配信は「完了」ステータスで完了しましたが、処理済みメッセージと成功したメッセージはゼロでした。 この問題は、iOSとAndroidの両方のプッシュ配信に影響を与え、同じお客様の他の環境では再現できませんでした。

説明 description

ターゲティングワークフローでアプリのサブスクリプションを特定できましたが、配信準備が返されました。

0人の受信者がセグメント化条件に一致しました
空の配信ターゲット
0件のメッセージが待機中

この問題は、特定の日付の後に発生し、カスタムプッシュテンプレートとデフォルトのプッシュテンプレートの両方で発生しました。

配信では、デフォルトのnms:appSubscriptionRcp ターゲットマッピングが使用されていましたが、これにはnms:recipientへの有効なリンクが必要です。

マッピング:購読者アプリケーション (nms:appSubscriptionRcp)
recipientLink:受信者
targetSchema: nms:recipient

これはトークンのみの配信パスではありません。 配信はアプリのサブスクリプションをターゲットにしていますが、マッピングでは各アプリのサブスクリプションが有効な受信者に解決されることを想定しています。

Adobeのドキュメントでは、デフォルトのプッシュターゲットマッピングでnms:appSubscriptionRcpが使用され、このマッピングが受信者テーブルにリンクされていることを確認しています。 実装が受信者の関係を意図的に使用しない場合は、別のターゲットマッピングを作成する必要があります。

配信の準備用にSQL ログを有効にしました。 準備SQLがこの結合を実行しました:

NmsAppSubscriptionRcp TGTに参加
W0.iIdの
= TGT.iAppSubscriptionRcpId
NmsRecipient RCPに参加
TGT.iRecipientIdの
= RCP.iRecipientId

Uatにおいて

  • テストされたレコードがnms:appSubscriptionRcpに存在しました。
  • アプリ サブスクリプションの受信者ID フィールドが空またはNULLでした。
  • したがって、NmsRecipientへの結合は成功しませんでした。
  • アプリのサブスクリプションが配信ターゲットから削除されました。
  • 配信の準備で受信者がゼロになりました。

受信者ID列がnms:appSubscriptionRcpのスキーマのデータビューに追加されると、受信者の関係を解決できなかったため、UAT レコードが消えました。

実稼動環境にゼロ IDの受信者レコードが含まれており、結合を成功させることができました。

根本原因:調査で、お客様が誤ってUATおよび開発受信者スキーマのゼロ ID レコードを削除したことが検出されました。 これにより、nms:recipientとnms:appSubscriptionRcpを含む関連するスキーマとの間の外部結合が解除されました。

解決策 resolution

UATおよび開発受信者スキーマで欠落しているゼロ ID レコードを復元し、アプリのサブスクリプションが期待される受信者リンクを受信することを検証します。

復元後:

  • @recipient-idが入力されているか、正しく解決されていることを確認します。
  • テストプッシュ配信を実行します。
  • ターゲットに期待されるサブスクリプションが含まれていることを確認します。
  • 処理済みメッセージと成功数が0より大きいことを確認します。

トークンのみのターゲティングが必要な場合は、受信者リンクを使用せずにターゲットマッピングを作成します。

recommendation-more-help
experience-cloud-kcs-help-kbarticles