我正在使用网站上提供的Twilio java包装器并开始进行一些测试。我能够发送成功收到的短信。但是,我想确保消息已成功发送,并且Twilio没有遇到任何问题(电话号码错误或任何原因)。
据我所知,当您向Twilio发送REST请求以发送短信时,Twilio会以状态响应。我怎么能得到这个回复?
以下是我找到的解释页:http://www.twilio.com/docs/howto/sms-notifications-and-alerts
答案 0 :(得分:3)
如果在发出SMS请求时指定了StatusCallback URL,我们将在消息处理完毕后向您提供的回调URL发出请求,参数为SmsStatus = sent或SmsStatus = failed。您可以使用此信息对SMS消息进行更多处理。这里有更多信息:http://www.twilio.com/docs/api/rest/sending-sms#post-parameters-optional
或者,如果您挂起SMS消息Sid,您应该能够在API中查询消息并获取响应中的状态。因此,如果sid是SM123,向https://api.twilio.com/2010-04-01/Accounts/AC123/SMS/Messages/SM123.json
发出GET请求应该返回一个具有SMS消息状态的对象。
答案 1 :(得分:1)
我记得响应来自您的网址,可以通过ID进行匹配。在REST帖子到SMSMessages中,您可以指定一个statuscallback网址,Twilio会将状态消息发布到您的网址。
当您收到该网站的帖子时,您可以录制或采取您需要的任何其他操作,例如重试或使用其他通信方式。
答案 2 :(得分:0)
在2020年,使用Java SDK,您现在可以使用该SID创建一个MessageFetcher
,然后调用fetch
来请求Message
实例,直到其getStatus
返回“已交付”,“未交付”或“失败”。