使用 Meta Messenger 集成,您可以创建 Meta Messenger 机器人来与用户互动。
工作原理
集成的工作原理如下:
- 您需要创建一个使用 Meta Messenger Platform 的 Meta 应用。
- 您需要配置 Dialogflow CX 集成和 Meta 应用,以便它们相互通信。
- Dialogflow CX 集成使用 Meta Messenger API 向用户发送消息。
- Dialogflow CX 集成通过充当 Meta Webhooks for Messenger Platform 来接收来自用户的消息。
设置
在测试集成之前,请确保您的项目已启用结算功能。
如需设置集成,请执行以下操作:
- 按照以下步骤创建 Meta 应用: Meta 应用开发。
- 设置 Meta 应用以使用 Meta Messenger Platform。按照 Meta Webhooks for Messenger Platform 文档中的步骤完成以下操作:
- 将 Messenger Platform 添加到您的 Meta 应用。
- 为您的应用订阅 Meta 公共主页。确保已在页面订阅中启用
messages和messaging_postbacks。 - 复制此步骤中提供的访问令牌。此令牌用于通过 Dialogflow CX 控制台配置集成。
- 暂时先不要配置 webhook 或测试集成。
- 在 Dialogflow CX 控制台中配置集成:
- 前往 Dialogflow CX 控制台。
- 选择导航菜单中的管理标签页。
- 选择集成。
- 点击 Meta Messenger 功能块上的关联按钮。
- 填写配置对话框中的字段:
- 应用密钥:输入应用信息中心基本设置中的应用密钥。
- 验证令牌:输入您需要的任何私有令牌。复制此值。 此网址用于配置 Meta Messenger Webhook。
- Page access token(页面访问令牌):输入您在 Meta 应用设置期间复制的访问令牌。
- 启用“开始”按钮:选中此复选框可启用“开始”按钮。
- 网络钩子网址:复制此值。此令牌用于配置 Meta Messenger Webhook。
- 启动:选中此复选框可为代理启动集成服务。
- 完成 Meta 应用的设置并进行测试。按照 Meta Webhooks for Messenger Platform 文档中的步骤完成以下操作:
- 为您的应用配置 Meta 网络钩子。使用您之前复制的网络钩子网址和验证令牌值。请务必在页面订阅中启用
messages和messaging_postbacks。 - 测试应用。
- 为您的应用配置 Meta 网络钩子。使用您之前复制的网络钩子网址和验证令牌值。请务必在页面订阅中启用
活动
此集成会调用以下事件。您可以创建自定义事件处理脚本来定义触发事件时要执行的操作。
| Event | 说明 |
|---|---|
FACEBOOK_WELCOME |
当最终用户点击 Meta Messenger 的“开始”按钮时触发。 |
FACEBOOK_MEDIA |
当最终用户发送的消息包含附件(例如音频、图片或视频)时触发。 |
“开始”按钮
启用此集成服务时,请切换启用“开始”按钮。
通过此集成服务,您可以通过调用 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事件创建自定义事件处理脚本。
要进行测试,请按以下步骤操作:
- 删除与 Meta 页面之前的对话(如果适用)。
- 开始按钮仅会显示在新对话上。
- 在 Meta 页面上发起新对话。
- 点击开始按钮,并验证自定义事件处理脚本的响应。
您可以调用 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}"
富响应消息
Fulfillment 中的自定义载荷支持富响应消息。如需了解详情,请参阅发送 API 参数消息对象文档,了解消息格式。
例如,以下自定义载荷提供了一条短信:
{
"text": "Hello, world"
}
以下自定义载荷提供图片消息:
{
"attachment": {
"type": "image",
"payload": {
"url": "https://example.com/test.jpg"
}
}
}
渠道专属回复
配置特定于渠道的回答后,代理会自动使用 DF_CX_FB_MESSENGER 渠道来回答 Meta Messenger 消息。