一般的なプッシュエラーメッセージ
このページでは、プッシュメッセージングの一般的なエラーメッセージについて説明します。
プッシュバウンス: MismatchSenderId
MismatchSenderId は認証が失敗したことを示します。Firebase Cloud Messaging(FCM)の認証には、senderID と FCM API キーという2つの重要なデータが使用されます。これら両方の正確性を検証する必要があります。詳細については、この問題に関するAndroidのドキュメントを参照してください。
よくある失敗には、次のものがあります。
- 不正なsenderID
- 別のプッシュサービスに別のsenderIDで登録した場合の多重登録
プッシュバウンス: InvalidRegistration
InvalidRegistration は、プッシュトークンの形式が正しくない場合に発生します。よくある失敗には、次のものがあります。
- ユーザーがBraze登録トークンを手動で渡しているが、
getToken()を呼び出していない場合。例えば、インスタンスID全体が渡される場合があります。エラーメッセージのトークンは|ID|1|:[regular token]のようになります。 - 複数のサービスに登録している場合。現在、プッシュ登録のインテントが古いスタイルで到着することを想定しているため、複数の場所で登録し、他のサービスからのインテントをキャッチした場合、不正なプッシュトークンを取得する可能性があります。
プッシュバウンス: NotRegistered
NotRegistered は通常、アプリがデバイスから削除されたことを意味します(アンインストールのシグナルなど)。これは、複数の登録が行われていて、2回目の登録がBrazeが受け取るプッシュトークンを無効にしている場合にも発生する可能性があります。
DEVICE_UNREGISTERED
このエラーはメッセージアクティビティログに次のように表示されます。
Received 'Error: DEVICE_UNREGISTERED, ' sending to '[Token String]'
これは通常、以下のいずれかの理由で発生します。
- ユーザーがアプリをアンインストールした場合。これが最も一般的な原因です。アプリがデバイスから削除されると、プッシュトークンは無効になります。
- アプリのプッシュ認証情報が更新された場合。チームがFCMの認証情報やアプリにバンドルされた証明書を変更した場合、以前の認証情報で登録したユーザーは、アプリが再登録するまで無効なトークンを持つことになります。
- カスタムロジックがユーザーのプッシュ登録を解除している場合。これはまれですが、Firebase/Android SDKを使用してプログラムでデバイスのプッシュ登録を解除することは技術的に可能です。
このエラーは、ユーザーのプッシュが無効であることを意味するものではありません。特定のトークンがプロファイルから削除されたことを示しているだけです。これは、機能をテストしていてアプリのインストールとアンインストールを頻繁に行っているユーザーによく見られます。ユーザーがまだ有効なトークンを持っているかどうかを確認するには、ユーザー検索に移動し、エンゲージメントタブの連絡先設定セクションを確認してください。
ペイロードが無効なためプッシュ送信エラーが発生
このメッセージは、Apple Push Notification service(APNs)が無効なペイロードを理由にプッシュリクエストを拒否した場合に、ユーザープロファイルのエンゲージメントタブの連絡先設定 > プッシュ変更ログに表示されることがあります。
Brazeでは、このダッシュボードメッセージは次のAPNsエラー理由のいずれかに該当する可能性があります。
PayloadEmpty:送信されたプッシュの種類に必要なコンテンツがペイロードに含まれていませんでした。PayloadTooLarge:ペイロードがAPNsの最大ペイロードサイズを超えました。
一般的な原因には以下が含まれます。
- カスタムキー(とその値)がペイロードを過大にしている(これには予想外に大きなLiquidレンダリング値が含まれる場合があります)。
- 必要な箇所でアラートや本文が空または欠落している(あるいはその他の不正な
apsペイロード)。
次のステップ:
- カスタムキーを削減し、大きなダイナミックな値を短縮することでペイロードサイズを削減します。
- API経由で送信する場合、送信前に最終的なJSONペイロード(サイズを含む)を検証してください。
プッシュバウンス: BadToken
BadToken エラーはいくつかの理由で発生する可能性があります。
- プッシュトークンがBrazeに正しく送信されていない(例えば、
registerDeviceToken:またはプラットフォームの同等のメソッドで)。- メッセージアクティビティログのトークンを確認してください。通常は、文字と数字の長い文字列のように見えます(例:
6e407a9be8d07f0cdeb9e714733a89445f57a89ec890d63867c482a483506fa6)。そうでない場合は、Brazeにプッシュトークンを送信するコードを確認してください。
- メッセージアクティビティログのトークンを確認してください。通常は、文字と数字の長い文字列のように見えます(例:
- プロビジョニング環境の不一致:
- 開発用の証明書で登録し、本番用の証明書で送信しようとすると、このエラーが表示されることがあります。
- Brazeは、本番環境のユニバーサル証明書のみをサポートしています。ユニバーサル証明書を使用した開発環境でのプッシュテストは機能しません。
- このレポートは、本番環境ではバウンスを送信しますが、開発環境では送信しません。
- プロビジョニングプロファイルの不一致:
- この問題は、証明書がトークンの取得に使用された証明書と一致しない場合に発生する可能性があります。これが疑われる場合、次のステップは以下のとおりです。
- Brazeダッシュボードからのプッシュ送信に使用するプッシュ証明書とプロビジョニングプロファイルが正しく設定されていることを確認します。
- APNS証明書を再作成し、APNS証明書が
app_idに設定された後にプロビジョニングプロファイルを再作成します。これによって、より目に見える問題が解決されることがあります。
- この問題は、証明書がトークンの取得に使用された証明書と一致しない場合に発生する可能性があります。これが疑われる場合、次のステップは以下のとおりです。
バンドルIDが許可されていない
TopicDisallowed エラーは、リクエスト内のトピック(バンドルID)が使用されている認証情報で許可されていないため、APNsがプッシュを拒否したことを意味します。これを解決するには:
- バンドルIDを確認します。 Brazeのアプリ設定で構成されているバンドルIDが、アプリのバンドルIDと正確に一致していることを確認してください。これには、サフィックスのバリエーション(例:
.debug、.staging)も含まれます。 - APNs認証設定を確認します。 アプリが正しいAPNs
.p8キーで構成されていること、およびそのキーが送信先のアプリと同じApple Developer Teamに関連付けられていることを確認してください。 - アプリ環境を確認します。 開発ビルドと本番ビルドでBrazeに別々のアプリIDがある場合、それぞれが正しいプッシュ認証情報と環境で構成されていることを確認してください。
Unregistered
このエラーはメッセージアクティビティログに次のように表示されます。
Received 'Unregistered' sending to '[Token String]'
これはAndroidのDEVICE_UNREGISTEREDエラーのiOS版です。通常、以下のいずれかの理由で発生します。
- ユーザーがアプリをアンインストールした場合。これが最も一般的な原因です。
- プッシュ証明書が更新された場合。チームがAPNs証明書を変更または更新した場合、以前の証明書で登録したユーザーは、アプリが再登録するまで無効なトークンを持つ可能性があります。
- カスタムロジックがユーザーのプッシュ登録を解除している場合。これはまれですが、iOS SDKを使用してプログラムでリモート通知の登録を解除することは技術的に可能です。
このエラーは、ユーザーのプッシュが無効であることを意味するものではありません。特定のトークンがプロファイルから削除されたことを示しているだけです。ユーザーがまだ有効なトークンを持っているかどうかを確認するには、ユーザー検索に移動し、エンゲージメントタブの連絡先設定セクションを確認してください。
InvalidProviderToken
InvalidProviderToken エラーは、認証トークン(.p8キーから)またはプッシュ証明書(.p12)がアプリのバンドルIDまたはチームIDと一致しないため、APNsがリクエストを拒否したことを意味します。これを解決するには:
- チームIDとキーIDを確認します。
.p8認証キーを使用している場合、Brazeダッシュボード(設定 > アプリ設定 > iOSアプリを選択)で構成されているチームIDとキーIDが、Apple Developerアカウントの値と一致していることを確認してください。 - バンドルIDを確認します。 Brazeに登録されているバンドルIDがアプリのバンドルIDと一致していることを確認してください。大文字小文字の違いや
.debugサフィックスなどの不一致がこのエラーの原因となります。 - キーまたは証明書を再アップロードします。
.p8キーまたは.p12証明書が最近再生成または失効された場合、新しいキーをBrazeにアップロードし、古いものを削除してください。 - APNs環境を確認します。
.p12証明書を使用している場合、アップロード時に正しい環境(開発と本番)を選択したことを確認してください。.p8キーの場合、これは自動的に処理されます。
プッシュバウンス: APNSフィードバックサービスによる削除
これは通常、ユーザーがアプリをアンインストールしたときに発生します。Brazeは毎晩APNSフィードバックサービスに問い合わせ、無効なトークンのリストを取得します。詳細については、Appleの「Communicating with APNs」を参照してください。
GitHub でこのページを編集