来自facebook messenger bot对话的API身份验证

时间:2016-04-13 15:38:44

标签: facebook authentication bots facebook-messenger facebook-messenger-bot

在facebook Messenger平台上与bot的对话中使用外部API进行身份验证的最佳方法是什么?

对于一个广泛的例子,我希望我的机器人的用户在他们自己的外部网站的配置文件上创建项目。有没有办法从用户那里获取登录信息,或者将我的机器人连接到外部网站,而用户没有用他们的用户名和密码明确地向机器人发送消息?

我在User Profile API下的文档中找到了:

  

您可以使用User Profile API中的人员姓名或个人资料照片来个性化对话。要获取此信息,请向https://graph.facebook.com/v2.6/发送GET请求?fields = first_name,last_name,profile_pic& access_token =。阅读Send API参考中的更多详细信息。

这并不是我想要的,但它有所帮助。以下是来自文档的更多信息:

  

用户个人资料API

     

请求

     

curl -X GET "https://graph.facebook.com/v2.6/<USER_ID>?fields=first_name,last_name,profile_pic&access_token=<PAGE_ACCESS_TOKEN>"

     

响应

     

{ "first_name": "Peter", "last_name": "Chang", "profile_pic": "https://fbcdn-profile-a.akamaihd.net/hprofile...70ec9c19b18" }

1 个答案:

答案 0 :(得分:12)

这取决于他们是如何进入的。

  1. 如果它们来自您的网站,您可以使用其帐户中的“发送到Messengee”按钮。使用pass through param将您的帐户链接到用户线程。 这是[{3}}:
  2. 的摘录
      

    该插件接受您定义的传递参数。此参数通过回调发回给您。您可以使用它将身份验证事件链接到人员和/或事务。例如,某人可以输入特定交易的在线流程,然后单击“发送至Messenger”按钮。您可以传入数据以了解哪个用户和事务与身份验证事件相关联。您应该对此参数进行编码和加密。

    1. 如果他们直接进入您的机器人,您必须在对话中向他们提供某种类型的登录信息(您的登录信息)。这将发生在指向移动网址的链接中。