モバイルプッシュ通知サービスの Amazon SNS 有効期限 (TTL) メッセージ属性を使用する - Amazon Simple Notification Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

モバイルプッシュ通知サービスの Amazon SNS 有効期限 (TTL) メッセージ属性を使用する

Amazon Simple Notification Service (Amazon SNS) では、モバイルプッシュ通知サービスの有効期限 (TTL) メッセージ属性の設定がサポートされています。これは、Android への送信時に Amazon デバイスメッセージング(ADM)や Firebase クラウドメッセージング(FCM)など、これをサポートするモバイルプッシュ通知サービスの Amazon SNS メッセージ本文に TTL を設定する既存の機能に追加されます。

TTL メッセージ属性は、メッセージの有効期限メタデータを指定するために使用します。この属性を使用して、Apple Push Notification Service (APNs) や FCM などのプッシュ通知サービスによってエンドポイントにメッセージが配信される時間を指定できます。何らかの理由 (モバイルデバイスがオフになっているなど) で、指定した TTL 内にメッセージが配信されなかった場合、そのメッセージは破棄され、以降その配信は試みられません。メッセージ属性内で TTL を指定するには、、 AWS ソフトウェア開発キット (SDK) AWS Management Console、またはクエリ API を使用できます。

プッシュ通知サービスの TTL メッセージ属性

AWS SDK またはクエリ API を使用するときに設定できるプッシュ通知サービスの TTL メッセージ属性のリストを以下に示します。

プッシュ通知サービス TTL メッセージ属性
Amazon Device Messaging (ADM) AWS.SNS.MOBILE.ADM.TTL
Apple Push Notification Service (APNS) AWS.SNS.MOBILE.APNS.TTL
Apple Push Notification Service Sandbox (APNs_SANDBOX) AWS.SNS.MOBILE.APNS_SANDBOX.TTL
Baidu Cloud Push (Baidu) AWS.SNS.MOBILE.BAIDU.TTL
Firebase クラウドメッセージング (Android への送信時は FCM) AWS.SNS.MOBILE.FCM.TTL
Windows Push Notification Services (WNS) AWS.SNS.MOBILE.WNS.TTL

各プッシュ通知サービスは TTL を個別に処理します。Amazon SNS では、すべてのプッシュ通知サービスに対する TTL の抽象ビューが提供されるため、TTL の指定がより簡単になります。を使用して TTL (秒単位) を指定する場合、TTL 値を 1 回入力するだけで、Amazon SNS はメッセージの発行時に選択した各プッシュ通知サービスの TTL を計算します。 AWS Management Console

TTL は発行時間を基準にします。特定のプッシュ通知サービスにプッシュ通知メッセージを発行する前に、Amazon SNS はプッシュ通知のドウェル時間 (発行のタイムスタンプからプッシュ通知サービスへの発行直前までの時間) を計算し、残りの TTL をそのプッシュ通知サービスに渡します。TTL がドウェル時間よりも短い場合、Amazon SNS はプッシュ通知メッセージの発行を試みません。

プッシュ通知メッセージに TTL を指定する場合、TTL 0 値は正の整数でなければなりません。ただし、の値がプッシュ通知サービスにとって特定の意味を持つ場合(APN や FCM(Android に送信する場合)など)を除きます。TTL 値を 0 に設定した場合、プッシュ通知サービスに対して 0 に特定の意味がないと、Amazon SNS はメッセージを破棄します。APN を使用した場合に 0 に設定した TTL パラメータの詳細については、バイナリプロバイダー API ドキュメントの表 A-3 リモート通知のアイテム識別子を参照してください。

TTL を決定するための優先順位

Amazon SNS がプッシュ通知メッセージの TTL を決定するための優先順位は以下の順序に基づきます。最も小さい番号が最も高い優先順位を表しています。

  1. メッセージ属性の TTL

  2. メッセージ本文の TTL

  3. プッシュ通知サービスのデフォルト TTL (サービスごとに異なる)

  4. Amazon SNS のデフォルト TTL (4 週間)

同じメッセージに対して (メッセージ属性とメッセージ本文で) 異なる TTL 値を設定した場合、Amazon SNS はメッセージ属性の TTL に一致するようにメッセージ本文の TTL を変更します。

TTL を指定するには AWS Management Console

  1. Amazon SNS コンソールにサインインします。

  2. ナビゲーションパネルで [モバイル]、[プッシュ通知] を選択します。

  3. [モバイルプッシュ通知] ページの [プラットフォームアプリケーション] セクションで、アプリケーションを選択します。

  4. MyApplicationページの「エンドポイント」セクションで、アプリケーションエンドポイントを選択し、「Publish message」を選択します。

  5. [メッセージの詳細] セクションで、TTL (プッシュ通知サービスがエンドポイントに配信される秒数) を入力します。

  6. [メッセージの発行] を選択します。