问题描述
settings.py
中的凭据是什么,以通过第三方 sms
发送此 api
。比如在哪里给HOST_NAME,PASSWORD,API_KEY
?
message = SmsMessage(body='Project Created',from_phone='+923117593775',to=['+923411727228'])
message.send()
解决方法
您可以使用 python 的 request 库向 API 发出请求。 SMSBox 具有用于访问服务的不同 API。 This one 用于发送短信。
import requests
from django.conf import settings
def sendSMS(message,from,to):
url = 'https://www.smsbox.com/SMSGateway/Services/Messaging.asmx/Http_SendSMS'
payload = {
"username": settings.SMSUsername,"password": settings.SMSPassword,"customerId": settings.SMSCutomerID,"senderText": settings.SMSSenderName,"messageBody": str(message),"recipientNumbers": ','.join(to),"isBlink": False,"isFlash": False
}
response = request.post(url,payload)
现在在 settings.py 中,您可以拥有所需的设置变量
SMSUsername = 'your_username'
SMSPassword = 'your_password'
SMSCutomerID = 'your_customer_id'
SMSSenderName 'sms_sender_name'
Twilio 有一个支持的 python SDK 包来集成它的服务,所以你可以直接实现它,但是对于没有 SDK 支持 python/django 的平台,你可以使用 requests
库来调用 API根据他们的文档。
此函数是根据 SMSBox 提供的文档制作的,您可以根据自己的要求和 API 文档创建自己的函数。