微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Twilio SMS - 状态回调响应没有 MessageSid 和 MessageStatus 接收消息状态

如何解决Twilio SMS - 状态回调响应没有 MessageSid 和 MessageStatus 接收消息状态

我们在 Kotlin 后端服务和 Twilio SDK 中使用 Twilio Programmable Messaging 发送短信。

Gradle 依赖

implementation("com.twilio.sdk:twilio:7.51.0")

此外,我们正在跟踪已发送 SMS 消息的传递状态。为此,我们需要在发送短信之前设置一个状态回调。

val creator = Message.creator(to,from,textMessage)
        .setStatusCallback(webhook.smsstatus)

接收消息状态

我们的其他服务已设置为接收状态回调。

@PostMapping(path = ["events"],consumes = [MediaType.APPLICATION_FORM_URLENCODED_VALUE])
@ResponseStatus(NO_CONTENT)
fun receiveSmsstatus(status: Smsstatus) {
    communicationsService.processSmsstatus(status.MessageSid,status.MessageStatus)
}

一切正常,我们成功接收和处理短信发送状态。 但是每 100 个状态回调都包含带有 nullable MessageSidMessageStatus负载。同时,它包含有效载荷 FromTo 电话号码。

为什么会发生这种情况? MessageSid 和 MessageStatus 是否可以为 NULL?我认为这些字段是必需的。

解决方法

我建议通过 Twilio 控制台(右上角下? - 提交票证)打开 Twilio 支持的票证。如果您可以将调用 /Messages 资源时返回的出站 SMS SID 与关联的 statusCallback 相关联(例如通过匹配 SMS 发送到的号码,因为 MessageSID 为空),这可能有助于 Twilio 支持人员识别问题。

工单中的屏幕截图对他们也很有用。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。