切换至Conversation Routing后,非默认App无法接收线程移交Webhooks
解决Meta Conversation Routing迁移后非默认App无法接收线程移交Webhooks的问题
核心原因
Conversation Routing和原Handover Protocol的权限逻辑完全不同:原Handover是基于App的线程移交权限直接触发Webhooks,而Conversation Routing依赖路由规则分配对话,非默认App必须被明确纳入规则配置,才能触发对应的Webhooks事件。
排查与修复步骤
- 检查路由规则配置
进入Meta Business Manager的主页设置,找到「Conversation Routing」模块,确认你的非默认App是否被添加到目标路由规则中:- 若为关键词/自动触发路由,需确保规则触发时会将对话分配给该非默认App;
- 若为手动移交场景,要确认非默认App在「可移交目标App列表」内。
- 验证Webhook订阅事件
在非默认App的Webhook设置里,确认已订阅conversation_routing.update或相关迁移后的事件(替代原messaging_handovers),同时确保App已获取主页的「Messaging」权限。 - 确认App角色权限
检查非默认App在主页的角色为「App Developer」或更高权限,且已完成主页与App的绑定。Conversation Routing对App权限要求更严格,低权限App无法接收路由触发的Webhooks。 - 测试事件触发与日志
手动触发一次线程移交操作,同时查看Meta App Dashboard的Webhook日志:- 若日志无对应事件,说明路由规则未生效;
- 若日志有事件但服务未接收,需排查网络连通性或签名验证逻辑。
- 适配新事件格式
Conversation Routing的Webhook事件结构与原Handover Protocol存在差异,需调整你的Webhook解析逻辑,适配新的事件字段与类型。
内容的提问来源于stack exchange,提问作者TomekK
相关产品推荐
相关产品推荐

