能否为Twilio的已放弃聊天与通话配置Webhook回调?
能否为Twilio已放弃聊天/通话配置Webhook触发回调?
完全可以实现这个需求,Twilio提供了对应的事件机制来捕获已放弃的通话和聊天,并通过Webhook推送回调事件,以下是具体实现方式:
已放弃通话(Abandoned Calls)
- 当来电在被客服接听前挂断(即已放弃),Twilio会触发通话
completed状态事件,其中CallStatus参数会被标记为no-answer(响铃后未接听挂断)或canceled(响铃前挂断)。 - 你可以在Twilio控制台的目标号码配置中,设置语音请求URL(Voice Request URL),当通话状态发生变更时,Twilio会向该URL发送POST请求,携带完整的通话元数据(包括
CallStatus)。 - 在你的后端服务中,只需判断
CallStatus是否为no-answer或canceled,即可识别这是已放弃通话,进而执行后续业务逻辑。
已放弃聊天(Abandoned Chats)
针对Twilio Flex场景
- Flex会在用户未被客服接入前结束聊天、或会话超时未响应时,触发
chat.session.abandoned事件。 - 你可以在Flex控制台的「Events」模块中创建Webhook订阅:选择
chat.session.abandoned事件类型,填写你的回调URL,当事件触发时,Twilio会向该URL发送包含会话ID、用户信息等详情的POST请求。
针对Twilio Programmable Chat场景
- 可以配置Channel Webhooks,监听
channel.destroyed事件,再结合会话的未分配状态(比如没有客服加入过会话),判断是否为用户主动放弃的聊天。
注意事项
- 务必为你的Webhook服务开启Twilio请求签名验证,避免接收伪造的回调请求。
- Flex Insights中的已放弃数据正是基于这些底层事件统计生成的,所以Webhook捕获的事件和Insights数据完全同源,准确性一致。
内容的提问来源于stack exchange,提问作者ahmad haidar
相关产品推荐
相关产品推荐

