1)为了可靠地向用户发送消息,通过用户交互自发发送消息,您将需要来自FB的订阅消息传递权限,目前它处于限制测试阶段。
Subscription Messaging仅限于来自News,Personal Tracker和Productivity类别中的应用的非广告消息。如果您的机器人符合这些类别之一,您可以获得权限以执行您想要的操作。
如果没有,您仍然可以向用户发送通知,但每次需要引发他们的响应(按下按钮,文字响应)以获得超出标准消息传递24小时限制的其他消息。这些消息可以是促销。
2)获取用户的页面作用域ID时,如果您有其用户ID用于其他应用程序或页面,请使用ID匹配API。
您必须创建一个FB Business帐户(如果您还没有帐户)并将您的应用程序和页面与业务关联,请按照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"
}
}
]
https://developers.facebook.com/docs/messenger-平台/策略概述 - “特定用例的订阅消息(测试版)” – CBroe