移交协议 |
Messenger 开放平台移交协议支持两个或更多应用相互传递对话控制权,从而参与对话。通过 Facebook 公共主页订阅的应用会自动启用移交协议。
注意:对话路由现已推出,很快将取代移交协议。您应该尽快将应用更新为使用对话路由。
Facebook 公共主页或 Instagram 专业帐户可使用多种消息应用与对其内容感兴趣的客户或用户交流。例如,在提供客户支持服务时,可将客户转到自动化体验,如果自动化体验无法解决客户的问题,则可将客户转到由客服人员提供在线支持的其他应用。如要在应用之间,或应用与 Facebook 公共主页收件箱或 Instagram 收件箱之间转移对话和有关对话的元数据,必须将对话控制权从一个应用传递到另一个应用。移交协议支持转移对话控制权。
默认情况下,当客户发送消息来发起对话时,此对话处于空闲模式。应用将通过 Webhooks 收到通知,表明已收到消息,而且该消息正在等待回复。应用需要订阅针对移交的 Webhooks,才能收到此通知。
当对话处于空闲模式时,任何应用均可接管对话控制权。掌握对话控制权的应用拥有回复消息的专属能力。一次只有一个应用掌握控制权,在掌握控制权的应用释放控制权之前,其他应用无法发送消息。在应用释放控制权后,对话恢复空闲模式,然后下一个应用便可接管控制权。
应用接管对话控制权后,将收到消息 Webhooks 发送的通知。所有其他应用将收到针对移交的 Webhooks 发送的通知。
如果对话在 24 小时内没有收到任何活动,将自动恢复空闲模式。掌握控制权的应用可以根据需要延长控制权到期时间,使该时间超过 24 小时。
如果未掌握对话控制权的应用试图向用户发送消息,系统将返回 400 错误,错误子代码为 2018300
。
如果想要在收到消息后让特定应用处理消息,您可以将此应用指定为主要接收器。主要接收器接收对话的所有新消息,可以将对话控制权转移到其他应用、Facebook 公共主页收件箱或 Instagram 收件箱,而且在必要情况下可以从其他应用接管对话控制权。当非主要接收器应用结束对话,并释放控制权时,此对话将被设置为空闲模式。
如果对话处于空闲模式时用户向您的公共主页或帐户发送新消息,则主要接收器将接管对话控制权,并接收有关新消息的 Webhooks 通知。
注意:设置主要接收器不是必要操作。
您无法将 Facebook 公共主页收件箱或 Instagram 收件箱指定为主要接收器。但是,如果您将消息移到“主要”文件夹,或者回复收件箱未控制的对话中的消息,收件箱会接管此对话的控制权。如果您回复的消息在收件箱中被标记为完成,则对话控制权仍为之前掌握控制权的应用或主要接收器(如果已设置)所有,或者系统会释放控制权,使对话恢复空闲模式。
使用 Messenger 直达广告 (CTM) 对话接入点时,您可以将对话指定至特定应用。商家可以使用 CTM 发起与客户的对话,以开发潜在客户、提升品牌知名度等等。
如果不设置主要接收器,任何应用均可设置公共主页层级菜单。如果已设置主要应用,只有主要应用可以设置或删除公共主页层级菜单。
掌握对话控制权的应用可设置或删除用户层级菜单,即使此应用不是主要接收器也是如此,并且当对话处于空闲模式时,任何应用都能设置用户层级菜单。
当客户从菜单中选择项目时,创建此菜单的应用将接管对话的控制权。在配置创建菜单的应用处理该数据后,可完成此操作。
当客户点击回传行动号召 (CTA) 时,创建此回传行动号召 (CTA) 的应用将接管对话的控制权,即使其他应用掌握了控制权也是如此。在配置创建回传行动号召 (CTA) 的应用处理该数据后,可完成此操作。
如果在其他应用控制对话时发送调查,此调查将在其他应用释放控制权且对话处于空闲模式后才能送达。
Facebook 公共主页订阅的消息应用需要具备以下组件才能成功实现移交协议。
需要可在公共主页上执行 MODERATE
任务的用户请求的公共主页访问口令,才能向移交协议端点发出调用。
应用需要通过应用审核,才能:
如果应用已通过应用审核,获准使用人工客服功能,即使该应用未掌握对话控制权,也可向用户发送消息,并且该消息上将标记人工客服标签。这是唯一一种未掌握对话控制权的应用可发送消息的情况。
应用需要具备 pages_messaging
权限,才能请求客户授予访问消息数据的权限。
使用移交协议时,应用应订阅两类 Webhooks,即消息 Webhooks 和待命 Webhooks。应用收到的通知取决于对话控制权。如果应用掌握对话控制权,会收到消息 Webhooks 通知。如果应用未掌握对话控制权,会收到待命 Webhooks 通知。
商家可使用一个应用提供自动化体验,用于解决常见问题,如果自动化体验无法解决客户的问题,则可将客户转到另一个提供在线支持的应用。自动化应用可设置为主要接收器,使所有对话都由自动化应用控制。当在线支持客服人员需要加入对话时,提供在线支持的应用可以请求对话的控制权。当在线客服人员应用完成对话后,会释放对话控制权,让自动化应用重新掌握控制权。如果在线客服人员应用需要更长时间来处理客户的问题,可以请求延长时间。这些应用都应该订阅消息 Webhooks 和待命 Webhooks,以确保正常开展对话。
商家可开展营销活动,通过自动化体验甄选潜在客户,或根据商品测验提供商品推荐。在甄选潜在客户后,商家可以使用 Facebook 公共主页收件箱或 Instagram 收件箱跟进这些潜在客户。自动化应用可设置为主要接收器,使所有对话都由自动化应用控制。自动化应用在完成潜在客户甄选阶段的任务后,会将对话控制权传递给 Facebook 公共主页收件箱或 Instagram 收件箱。在 Facebook 公共主页收件箱或 Instagram 收件箱中完成对话后,系统会将此对话标记为完成。这样会释放对话控制权,以便主要应用掌握控制权。这些应用都应该订阅消息 Webhooks 和待命 Webhooks,以确保正常开展对话。
商家可开展营销活动,将潜在客户转到自动化应用,尝试特定 Messenger 体验。自动化应用可设置为主要接收器,使所有对话都由自动化应用控制。当在线支持客服人员需要加入对话时,提供在线支持的应用可以请求对话的控制权。当在线客服人员应用完成对话后,会释放对话控制权,让自动化应用重新掌握控制权。如果在线客服人员应用需要更长时间来处理客户的问题,可以请求延长时间。这些应用都应该订阅消息 Webhooks 和待命 Webhooks,以确保正常开展对话。