Facebook Messenger 机器人验证

Facebook Messenger Bot verification

我提交了我的 Facebook Messenger 机器人进行应用审查,拒绝原因是“没有收到回复”。

我已经从我自己的帐户和我添加到我的 Facebook 应用程序中用于测试的其他一些测试人员测试了我的机器人。 但是,当我尝试使用默认 Open Graph Test User 进行测试时,我没有得到任何响应。发送消息 API 失败并出现错误:

{"error": {"message":"(#100) No matching user found", "type":"OAuthException", ...}}

我在这里做错了什么?如何使用 Send/Receive 消息 API 向测试用户发送消息?

我遇到了同样的问题,并在 facebook 开发者社区得到了回应。似乎是确认错误: https://developers.facebook.com/bugs/230322797329131/?hc_location=ufi

更新: 它现在似乎工作。自本周二以来,我可以看到评论者向机器人发送消息并在页面的消息中得到回复。

以下答案:

1) 你不应该在没有测试你的东西是否有效的情况下提交应用审查。

2) 我猜您使用了测试用户界面中的用户 ID。如果您更仔细地阅读文档,您会发现用于 Messenger 平台的用户 ID 不同于您从 Facebook 登录获得的用户 ID(这是测试用户界面显示的)。阅读 https://developers.facebook.com/docs/messenger-platform/implementation#send_message

下的 "Send/Receive API" 部分

我的问题是

我正在 收件人 ID 而不是 发件人 ID json数据.

dict_to_send = {
   'message': {'text': u'hello FB'},
   'recipient': {'id': **'*sender_id_here*'**}
}
res = requests.post("https://graph.facebook.com/v2.6/me/messages?access_token=your_token_here", <br>data=json.dumps(dict_to_send), headers = {'content-type':'application/json'})

应仅为以下事件订阅 FB 应用程序 webhook:

  • 条消息
  • messaging_postbacks

订阅其他事件之一可能会引发该异常。

来源: https://developers.facebook.com/bugs/578746852290927/?hc_location=ufi