登录开始免费试用
Meta Tech Provider

通过 Coexistence 将 Botpress 机器人连接到 WhatsApp

在 Botpress 的 WhatsApp 集成中选择 Manual Configuration。粘贴已连接号码的访问令牌和号码 ID,自选一个验证令牌,App ID 和 Client Secret 留空。然后把 Botpress 的 Webhook URL 和该验证令牌设为此号码的 Webhook 目标,Meta 就会把每条消息送到机器人。

Optional

Botpress 的 Client Secret 字段:若留空,则跳过 Webhook 签名验证。

5 fields

Botpress 指南订阅的 Webhook 字段,包括 messages 和模板状态更新。

24 hours

客户消息开启的客户服务窗口,窗口内可以发送任何服务消息。

哪种 Botpress 配置适用于 Coexistence 号码?

Manual Configuration。其他选项会通过 Botpress 自己的 Meta 应用来连接号码,这等于对号码重新做一次接入,而不是使用已经连接好的号码。

在 WhatsApp 集成中,打开 Configuration 下拉菜单并选择 Manual Configuration。它需要 Verify Token、Access Token、Default Bot Phone Number ID,另有可选的 App ID、Client Secret 和 WABA ID。

访问令牌、号码 ID 和 WABA ID 都来自该连接:控制台会显示它们,get_api_credentials 也会把它们返回给助手。验证令牌可以是您自选的任意字符串。App ID 和 Client Secret 保持为空。Botpress 的指南把密钥当作需要填写的字段,但其集成定义将它标为可选,并说明没有它就会跳过签名验证。这一点很重要,因为 Meta 用 Tech Provider 应用的密钥为每次投递签名,而任何客户都不持有这个密钥。

Botpress 的 Webhook 如何收到 Meta 的消息?

通过号码的 Webhook 目标。Botpress 的指南要求您把它的 Webhook URL 和验证令牌粘贴到 Meta 应用的 WhatsApp 配置中。这里没有属于您的 Meta 应用:Meta 会把号码的事件路由到连接中指定的任何目标。因此,请复制 Botpress 为该集成显示的 Webhook URL,连同相同的验证令牌,在控制台或通过 set_webhook_destination 设为目标。

Meta 会发送一个验证 GET 请求,Botpress 作出响应,投递随即开始。Botpress 保存手动配置时,还会向 Graph 查询该令牌由哪个应用签发,以此检查令牌,因此无效或已撤销的令牌会在保存时失败,而不是等到第一条消息才出错。

Botpress 的处理程序也会处理 smb_message_echoes,这是有人从 WhatsApp Business 应用回复时 Meta 发送的事件。因此,机器人看得到手机上的回复,而不是对其一无所知。

Required?What to enter
Access TokenRequiredThe connected number's token
Default Bot Phone Number IDRequiredThe connected number's phone number id
Verify TokenRequiredAny string, reused in the webhook destination
WABA IDOptionalThe connected number's WABA id
App ID and Client SecretOptionalLeave both empty

机器人需要了解 Coexistence 的哪些方面?

首先要知道可能已经有真人在对话。WhatsApp Business 应用在该号码上继续可用,所以客户可能在同一分钟内既收到手机的回复,又收到机器人的回复。请在流程中决定收到回显事件时怎么做:多数团队会在一段时间内对该联系人暂停机器人,避免打断已经介入的人。

第二是时间。回复来信的机器人在 24 小时客户服务窗口内工作,窗口内允许发送自由文本。若流程在一天后才发送内容,例如跟进或提醒,就需要已批准的模板,在此发送自由文本会返回错误 131047。Botpress 的指南订阅了模板状态字段,正是为了这类主动消息。

另外,Coexistence 号码的吞吐量固定为每秒 20 条消息,远高于对话式机器人的发送量。

常见错误

  • 把您自己 Meta 应用的密钥填进 Client Secret。签名永远对不上,Botpress 会对每次投递返回 401。
  • 选择 OAuth 或沙盒选项而不是 Manual Configuration。这些选项通过 Botpress 自己的应用连接号码,而不是使用已连接的号码。
  • 忽略回显事件。如果没有针对手机回复的规则,机器人会盖过已经介入的真人。
使用 EasyCoexistence 完成这些操作

在 easycoexistence.com 连接号码,把它的访问令牌和号码 ID 粘贴到 Botpress 的 Manual Configuration,再把 Botpress 的 Webhook URL 设为目标。每个号码每月 US$ 9 起,随号码增加降至 US$ 1,前 3 天免费。

常见问题

跳过签名检查安全吗?

这会把保护转移到 URL 上。Botpress 为每个集成生成专属的 Webhook URL,所以请保密。媒体文件仍须凭令牌从 Meta 获取,伪造的事件做不到这一点。

同一个号码还能同时供应 n8n 吗?

一个号码只有一个 Webhook 目标。请把它指向其中一个系统,若还有系统需要这些事件,再由该系统转发。

Botpress 需要我的 WABA ID 吗?

其定义目前将它标为可选,并说明未来的主要版本会要求必填,所以请按连接中的信息填写。

消息会经过 EasyCoexistence 吗?

不会。Meta 直接投递到 Botpress 的 Webhook URL,内容从不存放在我们这一侧。

继续阅读

准备开始了吗?

几分钟即可设置 WhatsApp Coexistence,而不是几个月。应用会继续在手机上运行。

开始免费试用

验证时间

Botpress 接入 WhatsApp:使用 Coexistence