Twilio getDetailedDeliveryReceipts方法返回空数组,无法获取消息状态怎么办?
Twilio Conversation消息状态获取为空的排查点
调用getDetailedDeliveryReceipts()返回空数组,通常是以下几个原因导致,对应排查解决:
回执尚未生成或同步
Twilio的送达/已读回执不是即时返回的,尤其是跨渠道消息(如SMS转Conversation),需要等待接收端确认或运营商返回状态后才会生成数据。刚发送消息就调用的话,建议等待3-5秒后重试。未开启送达回执配置
登录Twilio控制台,进入对应的Conversation Service,检查设置中的「Delivery Receipts」是否已启用。只有开启这个功能,Twilio才会收集并返回消息状态数据。API权限不足
确认调用API使用的Auth Token拥有conversations:read权限。如果权限缺失,即使有回执数据也无法获取。消息类型或渠道不支持
- 系统消息(如成员加入/退出通知)不会生成送达回执,这类消息调用方法自然返回空数组。
- 部分第三方消息渠道不支持详细回执功能,只有Twilio原生支持的渠道(如SMS、WhatsApp、Twilio Chat)才会返回状态数据。
消息对象无效
确认调用getDetailedDeliveryReceipts()的message实例是从Conversation中正确获取的有效对象,而非空引用或错误的资源ID对应的对象。
内容的提问来源于stack exchange,提问作者Hitisha
相关产品推荐
相关产品推荐

