如何使用django和AWS SNS通过存储在数据库中的电话号码发送短信

我正在使用django制作一个应用程序,该应用程序执行以下操作:当用户按下物理按钮时,该按钮将POST请求发送到django-rest,然后该请求创建票证,同时创建票证,并发送票证短信通知到存储在SQL数据库中的电话。电话号码对应的人可以帮助解决按下按钮的用户遇到的问题。

我试图思考在服务器中处理POST请求时如何查询包含电话号码的表,然后用电话号码发送短信,但我想不出办法。

我希望当用户按下物理按钮时,会创建支持票证,负责帮助该票证的人会在电话上收到短信通知。

shixinzhijia 回答:如何使用django和AWS SNS通过存储在数据库中的电话号码发送短信

我不知道您是否能够解决此问题,但是对于仍在使用AWS SNS寻找答案的任何人来说,这都很简单。

使用以下权限创建用户,或者,如果您愿意,可以将其附加到现有用户/角色。

{
  "Version": "2012-10-17","Statement": [{
      "Effect": "Deny","Action": [
        "sns:Publish"
      ],"Resource": "arn:aws:sns:*:*:*"
    },{
      "Effect": "Allow","Resource": "*"
    }
  ]
}

安装boto3,以便您可以与AWS交互。

为了发送SMS,请为“ sns”资源创建一个客户端,并在其上调用发布。

import boto3

# Create an SNS client
client = boto3.client(
    "sns",aws_access_key_id=AWS_ACCESS_KEY,aws_secret_access_key=AWS_SECRET_KEY,region_name=AWS_REGION,)

# Send your sms message.
client.publish(
    PhoneNumber="YOUR_PHONE_NUMBER_IN_E.164_FORMAT",Message="This is Amazon SNS service talking!"
)

确保您没有向其他人发送垃圾邮件。您可能需要向AWS increase your SMS sending limits提出要求,因为它默认为1美元。

本文链接:https://www.f2er.com/3136505.html

大家都在问