如何开发Facebook主页自动回评及发私信的聊天机器人
Facebook公共主页评论触发聊天机器人落地方案
权限配置
- 你之前查阅的
pages_read_user_content不是该场景的匹配权限,要实现评论读取、公域回复、私域发信全流程,需要给应用申请以下权限,所有权限通过平台审核后才能对普通用户生效,测试阶段可通过添加测试主页、测试账号绕过审核调试:pages_show_list:读取授权主页基础信息、关联帖子数据pages_manage_posts:拥有在授权主页帖子下公开发布评论回复的权限pages_manage_engagement:读取主页帖子下所有用户发布的评论内容、互动数据pages_messaging:获得向与主页产生有效互动(含评论行为)的用户发送私信的权限
- 权限审核需要提交真实的功能演示录屏、权限使用场景说明,材料和实际功能不符会直接被打回。
Webhook事件订阅配置
- 进入Meta开发者平台对应应用的后台,找到Webhook配置板块,选择关联的主页对象,订阅两类核心事件即可,不需要额外写轮询逻辑拉取数据:
feed事件:主页帖子下新增评论、新增回复时,平台会主动向你配置的服务器回调地址推送全量数据,包含评论ID、评论用户页面对应唯一标识(PSID)、评论内容、所属帖子ID、时间戳字段messages事件:用于接收私信发送状态回执、用户后续回复私信的事件通知
- 配置回调地址时,平台会发送带校验参数的GET请求,你需要原样返回请求里的
hub.challenge字段值才能完成绑定;上线前必须加签名校验逻辑,用平台提供的Webhook密钥验证请求来源,拦截伪造请求。
核心逻辑实现
- 事件过滤:收到
feed事件推送后,只处理item值为comment、verb值为add的新增评论事件,直接过滤评论删除、评论编辑、帖子更新、主页自身发评论这类无关场景,避免出现无限自回复循环 - 公开评论回复:调用主页评论发布接口,传入收到的评论ID作为父节点,拼接预设的机器人回复内容即可,接口请求必须携带主页长期访问令牌(永久有效),不要用有效期2小时的短期令牌做生产部署
- 私信触达:从事件数据里拿到评论用户对应的PSID,调用主页私信发送接口传入PSID和私信内容即可完成发送;注意用户评论后24小时内可自由发送普通内容,超过24小时只能发送符合平台规则的带官方标签的消息,否则会被接口拦截
- 去重处理:Webhook事件存在重复推送的可能,要把事件ID做本地缓存,同一个事件ID仅处理一次,避免重复回复、重复发信骚扰用户。
常见避坑
- 所有接口调用必须基于主页管理员的明确授权,不要尝试爬取未授权主页的内容,否则会触发平台风控直接封禁应用接口权限
- 自动回复内容不要包含违规导流、虚假宣传类信息,平台会定期扫描主页公开互动内容,违规会直接限制主页的评论、私信功能
- 权限未过审前,只有添加到应用测试列表的账号、主页能触发完整逻辑,普通账号的评论不会推送到你的回调地址,不要拿非测试账号做上线前调试。
内容的提问来源于stack exchange,提问作者CDN
相关产品推荐
相关产品推荐

