0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Amazon SNSでショートメールを送信する際の送信者ID指定方法

Last updated at Posted at 2024-12-24

新監視システムを開発する時、Lambda関数よりAmazon SNSを利用して、任意の電話番号にショートメール(以下、SMS)を送信する必要となりました。SMSの送信方法についてはいくつか事前設定する必要なところがあり、まとめて説明いたします。

1.サンドボックス

SMSアカウントはデフォルトでは、SMSサンドボックスに自動的に置かれています。SMSサンドボックス内で操作している間は、検証済みの送信先電話番号にのみSMSメッセージを送信できるという制限が適用されています。

2.月額使用限度額

AWSアカウントごとにSMSの月額使用限度額は1.00USDとなり、超えたら送信不可となります。

上記の1、2については、本番運用する際、業務に支障がないように、AWS SupportにSMSの月額使用限度額引き上げおよび当該アカウントをAmazon SNSサンドボックスから移動して頂くようお願いする必要があります。

3.送信者ID指定

デフォルトでは、AWSコンソールも、Lambda関数からも、SMSを送信する際、受信側で以下のように送信者IDはNOTICEとなります。

1.png

AWSコンソールで以下のように送信者IDを指定しておけばいいじゃんって思われる方もいらっしゃると思いますが、結論というと、指定してもNOTICEのままで、状況は変わりません。

SNS手動送信.jpeg

★解決方法

送信者IDを利用したSMSメッセージ配信を行う際に、End User Messagingに、登録する必要があります。

この点につきまして現時点においてドキュメントに明確に記載されておりません。

尚、送信者IDは原則として、サービス名/ブランド名/会社名などをお客様のアイデンティティを表す文字列を指定することは推奨されています。

★具体的な登録方法

まずは、Amazon SNSのコンソールで、発信元IDをクリックします。

1.jpeg

次にリクエスト発信者をクリックします。

2.jpeg

必要な情報(国、ユースケース定義情報等)を入れて、送信者IDを指定します。
問題ないことを確認した上、リクエストボタンをクリックします。

3.jpeg
4.jpeg
5.jpeg
6.jpeg

登録後、Lambda関数で、送信者IDを指定して送信すれば、NOTICEがなくなります。
送信用のLambda関数は以下の通りです。

import json
import boto3

def lambda_handler(event, context):
    # 送信先電話番号
    send_telno = "+810908888888" # 携帯電話番号
    # 送信メッセージ
    send_message = "テストメッセージです"

    # 通知者表示に使用される送信者ID
    senderId="SHARPMK"
    
    message_attributes = {
        'AWS.SNS.SMS.SenderID': {
        'DataType': 'String',
        'StringValue': senderId
        }
    }

    try:
        sns = boto3.client("sns")
        sns.publish(
        PhoneNumber = send_telno,
        Message = send_message,
        MessageAttributes = message_attributes
        )

    except Exception as e:
        print(e)

まとめ

簡単にSNSでSMSを送信する際の注意点をまとめました。ご参考になれば幸いです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?