使用boto通过AWS SNS发送SMS的示例脚本

Tra*_*ome 4 python perl sms amazon-sns boto3

如何使用boto(或其他python | perl库)通过AWS SNS将短信直接发送到手机号码?

约束:

  • 不使用AWS Lambda函数
  • 不使用SNS主题直接订阅手机号码

我的使用案例:使用AWS SNS使用AWS SMS作为端点协议从Nagios发送SMS警报.

Den*_*s H 10

这是使用boto3通过SNS直接发布到电话号码的代码.如果您收到有关PhoneNumber参数的错误,则需要升级您的boto版本.重要的是要记住,SNS目前支持直接发布到电话号码(PhoneNumber)或推送通知端点(targetArn).另请注意,TopicArn,PhoneNumber和TargetArn都是互斥的,因此您只能为每个发布指定其中一个.

import boto3

sns_client = boto3.client('sns')

response = sns_client.publish(
    PhoneNumber='+12065551212', 
    Message='This is a test SMS message',
    #TopicArn='string', (Optional - can't be used with PhoneNumer)
    #TargetArn='string', (Optional - can't be used with PhoneNumer)
    #Subject='string', (Optional - not used with PhoneNumer)
    #MessageStructure='string' (Optional)
)

print(response)
Run Code Online (Sandbox Code Playgroud)