SMS メッセージプリファレンスの設定 - Amazon Simple Notification Service

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

SMS メッセージプリファレンスの設定

Amazon SNS を使用して、SMS メッセージの設定を指定します。たとえば、コストや信頼性に対して配信を最適化するかどうか、毎月の使用量の上限、配信がログに記録される方法、SMS の毎日の使用状況レポートをサブスクライブするかどうかを指定できます。

これらの設定は、アカウントから送信するすべての SMS メッセージに対して有効になりますが、個々のメッセージの送信時に上書きすることができます。詳細については、「携帯電話に発行する」を参照してください。

AWS Management Console を使用した SMS メッセージプリファレンスの設定

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

  2. SMS メッセージングをサポートしているリージョンを選択します。

  3. ナビゲーションパネルで、[Mobile (モバイル)]、[Text messaging (SMS) (テキストメッセージ (SMS))] を選択します。

  4. [Mobile text messaging (SMS) (モバイルテキストメッセージ (SMS))] ページの [Text messaging preferences (テキストメッセージプリファレンス)] セクションで、[Edit (編集)] を選択します。

  5. [テキストメッセージングの優先設定の編集] ページの [詳細] セクションで、以下の操作を実行します。

    1. [Default message type (デフォルトメッセージタイプ)] で、次のいずれかを選択します。

      • プロモーション情報(デフォルト)-重要度が低いメッセージ (広告など)。Amazon SNS は、最も低いコストが発生するようにメッセージ配信を最適化します。

      • トランザクション— Multi-Factor Authentication のワンタイムパスコードなど、顧客のトランザクションをサポートするクリティカルメッセージ。Amazon SNS は、メッセージ配信を最も高い信頼性の実現のために最適化します。

      プロモーションおよびトランザクションメッセージの料金表の詳細については、「グローバル SMS 料金表」を参照してください。

    2. [Account spend limit (アカウントの使用料制限)] に、各暦月で SMS メッセージに使用する額 (USD) を入力します。

      重要
      • デフォルトでは、使用限度は 1.00 USD に設定されます。サービス限度を引き上げるには、リクエストを送信します。

      • コンソールに設定した量がサービス限度を超える場合、Amazon SNS は SMS メッセージの発行を停止します。

      • Amazon SNS は分散システムであるため、使用限度を超えると数分以内に SMS メッセージの送信を停止します。その間に SMS メッセージを送信し続けると、限度を超えるコストが発生する可能性があります。

  6. (オプション) [Default sender ID (デフォルトの送信者 ID)] にカスタム ID (企業名など) を入力します。これは、受信デバイスに送信者として表示されます。

    注記

    送信者 ID のサポートについては、国によって異なります。

  7. (省略可能) 名前を入力します。使用レポート用の Amazon S3 バケット名

    注記

    S3 バケットポリシーによって Amazon SNS への書き込みアクセスが付与される必要があります。

  8. [変更を保存] をクリックします。

プリファレンスの設定 (AWS SDK)

いずれかを使用して SMS プリファレンスを設定するにはAWSSDK では、その SDK のアクションを使用します。SetSMSAttributesリクエストを Amazon SNS API で送信します。このリクエストによって、月ごとの使用限度およびデフォルトの SMS 型 (プロモーションまたはトランザクション) などの、異なる SMS の属性に値を割り当てます。すべての SMS 属性については、を参照してください。SetSMSAttributes()Amazon Simple Notification Service API リファレンス

以下の例では、Amazon SNS クライアントを使用して SMS 設定を定義する方法について説明します。これは、AWSSDK

注記

SDK を使用する前に、必ず AWS の認証情報を設定してください。詳細については、「」を参照してください。の設定AWS認証情報()AWS SDK for .NET開発者ガイド。「」を参照してください。認証情報の使用()AWS SDK for Java開発者ガイド

AWS SDK for Java

以下の例では、AWS SDK for Java の AmazonSNSClient クラスの setSMSAttributes メソッドを使用します。この例では、異なる属性名の値を設定します。

public static void main(String[] args) { AmazonSNSClient snsClient = new AmazonSNSClient(); setDefaultSmsAttributes(snsClient); } public static void setDefaultSmsAttributes(AmazonSNSClient snsClient) { SetSMSAttributesRequest setRequest = new SetSMSAttributesRequest() .addAttributesEntry("DefaultSenderID", "mySenderID") .addAttributesEntry("MonthlySpendLimit", "1") .addAttributesEntry("DeliveryStatusIAMRole", "arn:aws:iam::123456789012:role/mySnsRole") .addAttributesEntry("DeliveryStatusSuccessSamplingRate", "10") .addAttributesEntry("DefaultSMSType", "Transactional") .addAttributesEntry("UsageReportS3Bucket", "sns-sms-daily-usage"); snsClient.setSMSAttributes(setRequest); Map<String, String> myAttributes = snsClient.getSMSAttributes(new GetSMSAttributesRequest()) .getAttributes(); System.out.println("My SMS attributes:"); for (String key : myAttributes.keySet()) { System.out.println(key + " = " + myAttributes.get(key)); } }

この例では、MonthlySpendLimit 属性の値を 1.00 USD に設定します。デフォルトでは、これは Amazon SNS で許可される最大額です。限度を引き上げる場合は 、リクエストを送信します。[New limit value (新しい制限値)] に、必要な月ごとの使用限度を入力します。左ユースケースの説明フィールドで、月ごとの SMS 使用限度の引き上げをリクエストしていることを説明します。AWS サポートチームは、お客様のリクエストに対して、24 時間以内に一次回答を行います。

属性が正しく設定されたことを確認するために、この例では、getSMSAttributes メソッドの結果を表示します。この例を実行すると、IDE のコンソール出力ウィンドウに属性が表示されます。

My SMS attributes: DeliveryStatusSuccessSamplingRate = 10 UsageReportS3Bucket = sns-sms-daily-usage DefaultSMSType = Transactional DeliveryStatusIAMRole = arn:aws:iam::123456789012:role/mySnsRole MonthlySpendLimit = 1 DefaultSenderID = mySenderID
AWS SDK for .NET

以下の例では、AWS SDK for .NET の AmazonSimpleNotificationServiceClient クラスの SetSMSAttributes メソッドを使用します。この例では、異なる属性名の値を設定します。

static void Main(string[] args) { AmazonSimpleNotificationServiceClient snsClient = new AmazonSimpleNotificationServiceClient(Amazon.RegionEndpoint.USWest2); SetDefaultSmsAttributes(snsClient); } public static void SetDefaultSmsAttributes(AmazonSimpleNotificationServiceClient snsClient) { SetSMSAttributesRequest setRequest = new SetSMSAttributesRequest(); setRequest.Attributes["DefaultSenderID"] = "mySenderID"; setRequest.Attributes["MonthlySpendLimit"] = "1"; setRequest.Attributes["DeliveryStatusIAMRole"] = "arn:aws:iam::123456789012:role/mySnsRole"; setRequest.Attributes["DeliveryStatusSuccessSamplingRate"] = "10"; setRequest.Attributes["DefaultSMSType"] = "Transactional"; setRequest.Attributes["UsageReportS3Bucket"] = "sns-sms-daily-usage"; SetSMSAttributesResponse setResponse = snsClient.SetSMSAttributes(setRequest); GetSMSAttributesRequest getRequest = new GetSMSAttributesRequest(); GetSMSAttributesResponse getResponse = snsClient.GetSMSAttributes(getRequest); Console.WriteLine("My SMS attributes:"); foreach (var item in getResponse.Attributes) { Console.WriteLine(item.Key + " = " + item.Value); } }

この例では、MonthlySpendLimit 属性の値を 1.00 USD に設定します。デフォルトでは、これは Amazon SNS で許可される最大額です。限度を引き上げる場合は、ケースを送信します。[New limit value (新しい制限値)] に、必要な月ごとの使用限度を入力します。左ユースケースの説明フィールドで、月ごとの SMS 使用限度の引き上げをリクエストしていることを説明します。AWS サポートチームは、お客様のリクエストに対して、24 時間以内に一次回答を行います。

属性が正しく設定されたことを確認するために、この例では、GetSMSAttributes メソッドの結果を表示します。この例を実行すると、IDE のコンソール出力ウィンドウに属性が表示されます。

My SMS attributes: DeliveryStatusSuccessSamplingRate = 10 UsageReportS3Bucket = sns-sms-daily-usage DefaultSMSType = Transactional DeliveryStatusIAMRole = arn:aws:iam::123456789012:role/mySnsRole MonthlySpendLimit = 1 DefaultSenderID = mySenderID