Meta 中的 Messenger

利用 Dialogflow Meta Messenger 集成,您可以创建一个 Meta Messenger 聊天机器人以与最终用户互动。

运作方式

集成的工作原理如下:

设置

如需设置集成,请执行以下操作:

  1. 按照以下步骤创建 Meta 应用:Meta App Development

  2. 设置 Meta 应用以使用 Meta Messenger 平台。请按照适用于 Messenger 平台的 Meta Webhook 文档中的步骤完成以下操作:

    • 将 Messenger 平台添加到您的 Meta 应用。
    • 为您的应用订阅元页面。确保已在页面订阅中启用 messagesmessaging_postbacks
    • 在此步骤中,系统会为您提供访问令牌。复制此值。 此令牌将用于从 Dialogflow 控制台配置集成。
    • 请勿配置网络钩子或测试集成。
  3. 从 Dialogflow 控制台配置集成:

    1. 转到 Dialogflow CX 控制台
    2. 点击左侧面板上的管理标签页。
    3. 点击左侧边栏菜单中的集成
    4. 点击 Meta Messenger 功能块上的连接按钮。
    5. 此时将打开一个配置对话框:

      • 应用密钥:输入应用信息中心基本设置中的应用密钥。

      • 验证令牌:您可以输入所需的任何私有令牌。复制此值。这将用于配置 Meta Messenger 网络钩子。

      • Page access token:输入您在上面的 Meta 应用设置过程中复制的访问令牌。

      • 启用开始按钮:请参阅“开始”按钮部分。

      • 网络钩子网址:复制此值。这将用于配置 Meta Messenger 网络钩子。

      • 开始:点击即可为您的代理启动此集成服务。

  4. 完成 Meta 应用的设置并对其进行测试。按照适用于 Messenger 平台的 Meta Webhook 文档中的步骤完成以下操作:

    • 为您的应用配置 Meta 网络钩子。使用您在上面复制的网络钩子网址验证令牌值。请务必在页面订阅中启用 messagesmessaging_postbacks
    • 测试应用。

活动

此集成会调用以下事件。您可以创建自定义事件处理脚本来定义触发事件时要执行的操作。

Event 说明
FACEBOOK_WELCOME 当最终用户点击 Meta Messenger 的“开始”按钮时即会触发。
FACEBOOK_MEDIA 当最终用户的消息包含附件(例如音频、图片、视频等)时触发。

“开始”按钮

如需设置 Meta Messenger 的“开始使用”按钮,请执行以下操作:

  1. 在启用此集成服务时切换启用开始按钮

    • 此集成服务将通过调用 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}"
      
  2. FACEBOOK_WELCOME 事件创建一个自定义事件处理脚本

要进行测试,请按以下步骤操作:

  1. 删除上一个与元页面进行的对话(如果适用)。

    • 开始按钮仅会显示在新对话上。
  2. 向您的元页面发起新会话。

  3. 点击开始按钮,并验证自定义事件处理脚本的响应。

您可以随时调用 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频道专用响应