Facebook Messenger
Facebook Channel 以 Page 身份连接 Messenger。用户事件通过签名 Webhook 到达 Anyy,回复使用 Page Access Token 发送。
准备材料
- 已启用 Messenger 的 Meta App;
- 由该 App 管理的 Facebook Page;
- Page ID 和 App ID;
- Page Access Token;
- 自己生成的 Webhook Verify Token;
- Meta App Secret;
- 公网可访问的 HTTPS 回调地址。
App Review、Page 订阅和权限要求可能变化,请查看 Messenger Platform 官方入门文档。
在 Dashboard 中连接
- 打开 Dashboard → Channel → Add account。
- 选择 Facebook 和 Messenger webhook。
- 填入 Page ID、App ID。
- 输入 Page Access Token、Verify Token、App Secret。
- 检查私信访问策略并保存。
- 在 Meta 控制台订阅 Page 消息事件,完成 Setup/Doctor 提示的权限要求。
回调路径为:
/channels/facebook/ACCOUNT_ID/webhook
默认账号 ID 是 page。Meta 和 Anyy 必须配置相同的 Verify Token。
访问策略
Messenger 私信支持 pairing、open、allowlist、disabled。当前 Anyy Profile 不包含 Facebook 群聊。
anyy channel pairing list
anyy channel pairing approve --request REQUEST_ID
配对会授予对助手的访问权,批准前应核对 Page 和发信人身份。
验证连接
anyy channel doctor facebook
anyy channel reload
用具有平台访问资格的账号向 Page 发消息,分别确认事件进入、配对和回复。
先用 App/Page 角色账号测试
应用尚未完成审核时,先使用在 Meta App 或 Page 中拥有相应角色的账号。这样更容易区分 Anyy 配置错误和平台访问限制。
故障排查
| 现象 | 检查项 |
|---|---|
| Meta 无法验证回调 | HTTPS 可达性和 Verify Token |
| 签名事件被拒绝 | App Secret,以及代理是否保留原始 Header/Body |
| 能收消息但不能回复 | Page Access Token 和 Messaging 权限 |
| 发信人没有响应 | 私信策略、配对/allowlist、Gateway 状态 |
| 只有管理员能使用 | App 模式、App Review 和 Page 订阅 |