Twilio短信状态回调-不在json中 [英] twilio sms status callback - not in json
本文介绍了Twilio短信状态回调-不在json中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我制作了一个与Twilio SMS集成的Django应用,我正在尝试设置一种方法来获取我发送的SMS的状态。
我一直遵循how to track delivery status on python上的Twilio指南,因此当我发送文本时,我使用以下参数发送它(其中sms_obj是我的数据库中的一个实例,用于跟踪我正在发送的文本)。
def send_sms(sms_obj, to):
client = Client(account_sid, auth_token)
message = client.messages
.create(
body=sms_obj.body,
from_= phone_number,
to=to,
status_callback='https://www.ateam.productions/comunications/twilio/sms/status/{sms_id}'.format(sms_id=sms_obj.id)
)
return
所以基本上我应该在此urlhttps://www.ateam.productions/comunications/twilio/sms/status/{sms_id}
上收到带有传递状态的回调https://www.ateam.productions/comunications/twilio/sms/status/{sms_id}
(我确实是这样做的)
但是,我从Twilio获得的数据不是一个很好的Json结构,而是一个如下所示的长字符串。
在我开始编写一些奇怪的正则表达式来处理此类字符串之前,我想知道是否有人对如何处理此过程有什么建议。
SmsSid=SM3bceec02449e4a75a3c308e2befa6136&SmsStatus=sent&MessageStatus=sent&To=%2B19174003826&MessageSid=SM3bceec02449e4a75a3c308e2befa6136&AccountSid=////////&From=%2B19179244405&ApiVersion=2010-04-01
推荐答案
Twilio Developer传教士此处。
这不是一个需要奇怪的正则表达式才能处理的长字符串。该字符串的格式为application/x-www-form-urlencoded
。它与在HTML页上提交表单时使用的格式相同。
Django已经可以分析此类型的请求正文,您应该能够在request.POST
中将内容作为类似字典的对象读取。
例如,您应该可以通过调用request.POST.get('MessageStatus')
获取状态。
这篇关于Twilio短信状态回调-不在json中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文