Facebook 聊天机器人和身份验证
Facebook chatbot and authentication
我有一个用户可以使用 Facebook 登录的应用程序。我有用户的授权令牌,有效期为 30 天。我正在使用护照。目前,我需要绝对最少的权限(仅限电子邮件),这样我的授权应用程序就不需要得到验证。
现在...我需要编写一个聊天机器人,它偶尔会写信给经过身份验证的用户。因此,机器人需要发起对话。它实际上是用户积极感兴趣的通知。
鉴于我知道如何编写聊天机器人本身,我想知道...这样做有可能吗?
如果不可能,是否可以 "link" 但是通过比较他们的 Facebook 用户 ID 来启动与我的机器人与其中一个登录用户的聊天? (恐怕不是,因为 Facebook 用户 ID 似乎仅限于应用程序!)
1) 为了可靠地向用户发送消息,不受用户交互的提示,您需要 FB 的订阅消息权限,目前处于限制性测试阶段。
Subscription Messaging 仅限于来自新闻、个人追踪器和生产力类别中的应用程序的非广告消息。如果您的机器人属于这些类别之一,您可能会获得执行所需操作的权限。
如果没有,您仍然可以向用户发送通知,但每次都需要引起他们的响应(按下按钮、文本响应),以便在标准消息传递的 24 小时限制之外获得另一条消息。这些消息可以是促销性的。
2) 当您拥有其他应用程序或页面的用户 ID 时,要获取用户的页面范围 ID,请使用 ID 匹配 API.
您必须创建一个 FB 企业帐户(如果您还没有)并将您的应用程序和页面与企业相关联,请按照 ID Matching API Docs 中的指南进行操作。
要获取您的企业帐户拥有的页面的所有页面范围 ID,当您拥有用户的应用程序 ID(例如,来自 FB 登录)时,您将向图表发出以下请求 API:
GET /{user-id}/ids_for_pages
?access_token=[app_access_token]
&appsecret_proof=[appsecret_proof]
您将收到如下所示的响应,其中包含您的企业帐户拥有的每个页面的指定用户的页面范围 ID:
"data": [
{
"id": "12345123", // The psid for the user for that page
"page": {
"category": "Musician",
"link": "https://www.facebook.com/Johns-Next-Great-Thing-380374449010653/",
"name": "John's Next Great Thing",
"id": "380374449010653"
}
}
]
我有一个用户可以使用 Facebook 登录的应用程序。我有用户的授权令牌,有效期为 30 天。我正在使用护照。目前,我需要绝对最少的权限(仅限电子邮件),这样我的授权应用程序就不需要得到验证。
现在...我需要编写一个聊天机器人,它偶尔会写信给经过身份验证的用户。因此,机器人需要发起对话。它实际上是用户积极感兴趣的通知。
鉴于我知道如何编写聊天机器人本身,我想知道...这样做有可能吗?
如果不可能,是否可以 "link" 但是通过比较他们的 Facebook 用户 ID 来启动与我的机器人与其中一个登录用户的聊天? (恐怕不是,因为 Facebook 用户 ID 似乎仅限于应用程序!)
1) 为了可靠地向用户发送消息,不受用户交互的提示,您需要 FB 的订阅消息权限,目前处于限制性测试阶段。
Subscription Messaging 仅限于来自新闻、个人追踪器和生产力类别中的应用程序的非广告消息。如果您的机器人属于这些类别之一,您可能会获得执行所需操作的权限。
如果没有,您仍然可以向用户发送通知,但每次都需要引起他们的响应(按下按钮、文本响应),以便在标准消息传递的 24 小时限制之外获得另一条消息。这些消息可以是促销性的。
2) 当您拥有其他应用程序或页面的用户 ID 时,要获取用户的页面范围 ID,请使用 ID 匹配 API.
您必须创建一个 FB 企业帐户(如果您还没有)并将您的应用程序和页面与企业相关联,请按照 ID Matching API Docs 中的指南进行操作。
要获取您的企业帐户拥有的页面的所有页面范围 ID,当您拥有用户的应用程序 ID(例如,来自 FB 登录)时,您将向图表发出以下请求 API:
GET /{user-id}/ids_for_pages
?access_token=[app_access_token]
&appsecret_proof=[appsecret_proof]
您将收到如下所示的响应,其中包含您的企业帐户拥有的每个页面的指定用户的页面范围 ID:
"data": [
{
"id": "12345123", // The psid for the user for that page
"page": {
"category": "Musician",
"link": "https://www.facebook.com/Johns-Next-Great-Thing-380374449010653/",
"name": "John's Next Great Thing",
"id": "380374449010653"
}
}
]