注意:从海外发送到中国需要特殊流程。
步骤一:申请Toll-free号码并通过控制台发送短信。
步骤二:查看CloudWatch中短信发送日志。
步骤三:通过SDK发送到单个手机。
步骤四:通过SDK发送给SNS Topic实现群发到所有订阅者。
示例Python代码:
import boto3
from botocore.exceptions import ClientError
region = "us-east-1"
message = ("这是一条发给SNS Topic群发的短信。")
messageType = "Transactional"
sourceNumber="+18668851429"
client = boto3.client('sns',region_name=region)
try:
response = client.publish(
TopicArn='arn:aws:sns:us-east-1:133129065110:mysnsdemo01',
Message=message,
MessageAttributes = {
"AWS.MM.SMS.OriginationNumber": {
'DataType': 'String',
'StringValue': sourceNumber
} ,
"AWS.SNS.SMS.SMSType": {
'DataType': 'String',
'StringValue': messageType
}
}
)
except ClientError as e:
print(e.response['Error']['Message'])
else:
print("Message sent! Message ID: "
+ response['MessageId'])