NIFCLOUD-mbaas / UserCommunity

ニフクラ mobile backend ユーザーコミュニティ
https://mbaas.nifcloud.com/
82 stars 18 forks source link

【過去質問】プッシュ通知のエラー内容について #1281

Open ncmbsupport opened 2 years ago

ncmbsupport commented 2 years ago

プッシュ通知のステータスについて、errorについてはステータス6の場合のみ設定されるとありますが、「4=エラーのため未送信で終了(API キー不正、証明書不正 等)」の時も設定されていました。違いは何でしょうか。
descriptionstatusはエラーで終了していても completeとなっている例しか見受けられません。timeout, error, unknownがセットされるのはどういうときでしょうか。

ncmbsupport commented 2 years ago

プッシュ通知のステータスについて、errorについてはステータス6の場合のみ設定されるとありますが、 「4=エラーのため未送信で終了(API キー不正、証明書不正 等)」の時も設定されていました。違いは何でしょうか。

4, 6 の違いですが、送信に失敗した端末が存在する際に
4: 送信が成功した端末が存在しない(すべての対象端末について送信失敗)
6: 送信に成功した端末が存在する(すべての対象端末について送信失敗したわけではない)
の違いがございます。
そのため、配信エラーとなっていても受信できている端末がある場合はstatusは6と設定されます。
▼参考URL
https://mbaas.nifcloud.com/doc/current/rest/push/pushSearch.html#%E3%83%AC%E3%82%B9%E3%83%9D%E3%83%B3%E3%82%B9%E3%82%B3%E3%83%B3%E3%83%86%E3%83%B3%E3%83%88

descriptionstatusはエラーで終了していても completeとなっている例しか見受けられません。timeout, error, unknownがセットされるのはどういうときでしょうか。

complete以外のものが設定される場合は、プッシュ配信システムもしくは APNs、FCM にて問題が発生した場合に限られます。
ただし iOS 向けのプッシュ通知については APNs から不正証明書を利用していると判断された場合(「リリース用のアプリにしている(開発者用証明書とデバイストークンはprduction)のにプッシュ通知用証明書はdevelop」など中身の環境を揃えられていない状況など)にはSystemErrorと返すケースも存在します。

▼参考e-books「プッシュ通知トラブルシューティング」 https://inquiry.nifcloud.com/webeq/pub/mbaas/push_troubleshooting