利用 Dialogflow Meta Messenger 集成,您可以创建一个 Meta Messenger 聊天机器人以与最终用户互动。
运作方式
集成的工作原理如下:
- 您将创建一个使用 Meta Messenger 平台的 Meta 应用。
- 配置 Dialogflow 集成和 Meta 应用,让它们相互通信。
- Dialogflow 集成使用 Meta Messenger API 向最终用户发送消息。
- Dialogflow 集成充当 Messenger 平台的元 Webhook,以接收来自最终用户的消息。
设置
如需设置集成,请执行以下操作:
按照以下步骤创建 Meta 应用:Meta App Development。
设置 Meta 应用以使用 Meta Messenger 平台。请按照适用于 Messenger 平台的 Meta Webhook 文档中的步骤完成以下操作:
- 将 Messenger 平台添加到您的 Meta 应用。
- 为您的应用订阅元页面。确保已在页面订阅中启用
messages
和messaging_postbacks
。 - 在此步骤中,系统会为您提供访问令牌。复制此值。 此令牌将用于从 Dialogflow 控制台配置集成。
- 请勿配置网络钩子或测试集成。
从 Dialogflow 控制台配置集成:
- 转到 Dialogflow CX 控制台。
- 点击左侧面板上的管理标签页。
- 点击左侧边栏菜单中的集成。
- 点击 Meta Messenger 功能块上的连接按钮。
此时将打开一个配置对话框:
应用密钥:输入应用信息中心基本设置中的应用密钥。
验证令牌:您可以输入所需的任何私有令牌。复制此值。这将用于配置 Meta Messenger 网络钩子。
Page access token:输入您在上面的 Meta 应用设置过程中复制的访问令牌。
启用开始按钮:请参阅“开始”按钮部分。
网络钩子网址:复制此值。这将用于配置 Meta Messenger 网络钩子。
开始:点击即可为您的代理启动此集成服务。
完成 Meta 应用的设置并对其进行测试。按照适用于 Messenger 平台的 Meta Webhook 文档中的步骤完成以下操作:
- 为您的应用配置 Meta 网络钩子。使用您在上面复制的网络钩子网址和验证令牌值。请务必在页面订阅中启用
messages
和messaging_postbacks
。 - 测试应用。
- 为您的应用配置 Meta 网络钩子。使用您在上面复制的网络钩子网址和验证令牌值。请务必在页面订阅中启用
活动
此集成会调用以下事件。您可以创建自定义事件处理脚本来定义触发事件时要执行的操作。
Event | 说明 |
---|---|
FACEBOOK_WELCOME |
当最终用户点击 Meta Messenger 的“开始”按钮时即会触发。 |
FACEBOOK_MEDIA |
当最终用户的消息包含附件(例如音频、图片、视频等)时触发。 |
“开始”按钮
如需设置 Meta Messenger 的“开始使用”按钮,请执行以下操作:
在启用此集成服务时切换启用开始按钮。
此集成服务将通过调用 Messenger Profile API 为您启用该按钮。
curl -X POST \ -H "Content-Type: application/json" \ -d '{"get_started": {"payload": "FACEBOOK_WELCOME"}}' \ "https://graph.facebook.com/v10.0/me/messenger_profile?access_token=${PAGE_ACCESS_TOKEN}"
为
FACEBOOK_WELCOME
事件创建一个自定义事件处理脚本。
要进行测试,请按以下步骤操作:
删除上一个与元页面进行的对话(如果适用)。
- 开始按钮仅会显示在新对话上。
向您的元页面发起新会话。
点击开始按钮,并验证自定义事件处理脚本的响应。
您可以随时调用 Messenger Profile API 来管理开始使用按钮。这可能有助于进行测试。
例如,以下请求会检查开始按钮的状态:
curl -X GET \ "https://graph.facebook.com/v10.0/me/messenger_profile?fields=get_started&access_token=${PAGE_ACCESS_TOKEN}"
以下请求会停用开始按钮:
curl -X DELETE \ -H "Content-Type: application/json" \ -d '{"fields": ["get_started"]}' \ "https://graph.facebook.com/v10.0/me/messenger_profile?access_token=${PAGE_ACCESS_TOKEN}"
富响应消息
可通过履行中的自定义载荷支持富响应消息。如需了解消息格式,请参阅发送 API 参数消息对象。
例如,以下自定义载荷提供简单的文本消息:
{ "text": "Hello, world" }
以下自定义载荷提供图片消息:
{ "attachment": { "type": "image", "payload": { "url": "https://example.com/test.jpg" } } }
频道专用回复
配置完成后,当代理回复 Meta Messenger 消息时,系统会自动使用频道为 DF_CX_FB_MESSENGER
的频道专用响应。