Amazon Simple Notification Service
開発者ガイド (API バージョン 2010-03-31)

SMS の毎日の使用状況レポートの表示

Amazon SNS から毎日の使用状況レポートにサブスクライブすることによって、SMS 配信をモニタリングできます。1 つ以上の SMS メッセージを送信する日ごとに、Amazon SNS は、指定した Amazon S3 バケットに CSV ファイルとして使用状況レポートを配信します。

毎日の使用状況レポートの情報

使用状況レポートには、アカウントから正常に配信した各 SMS メッセージに関する以下の情報が含まれています。

注記

このレポートには、オプトアウトした受取人に送信されるメッセージは含まれません。

  • メッセージの発行時間 (UTC)

  • メッセージ ID

  • 送信先の電話番号

  • メッセージの種類

  • 配信ステータス

  • メッセージの価格 (USD)

  • パート番号 (1 通のメッセージとして長すぎる場合、メッセージは複数のパートに分割されます)

  • パートの総数

毎日の使用状況レポートにサブスクライブする

毎日の使用状況レポートにサブスクライブするには、適切なアクセス許可を持つ Amazon S3 バケットを作成する必要があります。

毎日の使用状況レポート用の Amazon S3 バケットを作成するには

  1. AWS マネジメントコンソール にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/) を開きます。

  2. [Create Bucket] を選択します。

  3. [Bucket Name (バケット名)] には「sns-sms-daily-usage」などの名前を入力します。バケット名の規則と制限については、Amazon Simple Storage Service 開発者ガイド の「バケット命名規則」を参照してください。

  4. [Create (作成)] を選択します。

  5. [すべてのバケット] テーブルでバケットを選択して、[プロパティ] を選択します。

  6. [Permissions] セクションで、[Add bucket policy] を選択します。

  7. [バケットポリシーエディター] ウィンドウで、Amazon SNS サービスプリンシパルをバケットに書き込むことを許可するポリシーを指定します。例については、「バケットポリシーの例」を参照してください。

    ポリシーの例を使用する場合は、my-s3-bucket をバケットの名前に置き換えるようにしてください。

  8. [Save] を選択します。

毎日の使用状況レポートにサブスクライブする

  1. AWS マネジメントコンソールにサインインした後、Amazon SNS コンソール (https://console.aws.amazon.com/sns/v2/home) を開きます。

  2. ナビゲーションペインで、[Text messaging (SMS)] を選択します。

  3. [Text messaging (SMS)] ページで、[Manage text messaging preferences] を選択します。

  4. [テキストメッセージングの設定] ページの [レポートストレージ] に、SMS の毎日の使用状況レポートを受け取る Amazon S3 バケットの名前を入力します。

  5. [Update preferences] を選択します。

[テキストメッセージプリファレンス] ページの他のオプションについては、「プリファレンスの設定 (コンソール) 」を参照してください。

毎日の使用状況レポートにサブスクライブすると、Amazon S3 コンソールでレポートを表示できます。Amazon SNS コンソールの [テキストメッセージング (SMS)] ページに移動し、[Usage (使用状況)] ボタンを選択することもできます。

バケットポリシーの例

以下のポリシーは、Amazon SNS サービスプリンシパルに s3:PutObject および s3:GetBucketLocation アクションの実行を許可します。Amazon SNS から SMS の毎日の使用状況レポートを受け取る Amazon S3 バケットを作成するときに、この例を使用できます。

{ "Version": "2012-10-17", "Id": "sns-sms-daily-usage-policy", "Statement": [ { "Sid": "AllowPutObject", "Effect": "Allow", "Principal": { "Service": "sns.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::my-s3-bucket/*" }, { "Sid": "AllowGetBucketLocation", "Effect": "Allow", "Principal": { "Service": "sns.amazonaws.com" }, "Action": "s3:GetBucketLocation", "Resource": "arn:aws:s3:::my-s3-bucket" } ] }

毎日の使用状況レポートの例

毎日の使用状況レポートにサブスクライブすると、Amazon SNS は毎日、以下の場所に CSV ファイルを使用して使用状況データを配置します。

<my-s3-bucket>/SMSUsageReports/<region>/YYYY/MM/DD/00x.csv.gz

各ファイルには、最大 50,000 のレコードを含めることができます。1 日のレコードがこの制限を超えると、Amazon SNS は複数のファイルを追加します。

レポートの例を以下に示します。

PublishTimeUTC,MessageId,DestinationPhoneNumber,MessageType,DeliveryStatus,PriceInUSD,PartNumber,TotalParts 2016-05-10T03:00:29.476Z,96a298ac-1458-4825-a7eb-7330e0720b72,1XXX5550100,Promotional,Message has been accepted by phone carrier,0.90084,1,1 2016-05-10T03:00:29.561Z,1e29d394-d7f4-4dc9-996e-26412032c344,1XXX5550100,Promotional,Message has been accepted by phone carrier,0.34322,1,1 2016-05-10T03:00:30.769Z,98ba941c-afc7-4c51-ba2c-56c6570a6c08,1XXX5550100,Transactional,Message has been accepted by phone carrier,0.27815,1,1 . . .