2017-08-05 59 views
0

我花了整整一天的时间来试图找出这个错误,我也注意到有类似的问题与相同的消息,但我完全不知道我找到答案在那里,所以如果有人能指出或给我任何问题的提示,我完全明白这一点。Facebook API:(#100)没有找到匹配的用户

我正在从一个Facebook页面一个将消息发送到用户X(由用户id)谁使FB页A的信息的评论中,通过检测FB应用名称:MyApp的请求。我正在Facebook Graph Explorer上尝试。

我通过获取Facebook页面的帖子中的评论列表来获取用户ID,但我完全无法发送消息。

以下是错误

{ 
     "error": { 
     "message": "(#100) No matching user found", 
     "type": "OAuthException", 
     "code": 100, 
     "error_subcode": 2018001, 
     "fbtrace_id": "H3yMO0RWaDy" 
     } 
} 

这里是我的轨道

  1. MyApp的已设置网络挂接OK,因为它没有为测试目的(未经批准的应用程序)尚未公布,所以我必须将用户X帐户添加到MyApp的测试人员池中(我试图发送的消息也是此用户X)

  2. 我登录到用户X以对帖子发表评论在FB页A

  3. 在图形浏览器,我选择的应用:MyApp的,并得到FB页A的页面访问令牌,我进行了以下两个要求

3.1 /{page_id}_{post_id}?fields=comments 随着这个,我可以得到FB页面A中现有评论的列表,这里是输出:

{ 
    "comments": { 
     "data": [ 
        { 
        "created_time": "...", 
        "from": { 
         "name": "User X", 
         "id": "123456789" // this is the user Id that I would take to send the message to 
        }, 
        "message": "Sample comment from User X", 
        "id": "..." // {page_id}_{post_id} 
        } 
       ], 
       "paging": { 
        .... 
       } 
       }, 
       "id": "..." // {page_id}_{post_id 
    } 
} 

3.2 {page_id}/messages:我想从FB页A将消息发送到用户X与用户ID,我从3.1步

recipient: {id: "123456789"} // there seems be a problem with this id that I got from step 3.1, FB cannot find the user id with this number 
message: {text: "hello"} 

我也承认对应用程序/页面范围的ID为用户获得。

我已经订阅MyApp的到FB页A与API (/{page_id}/subscribed_apps)

Facebook的API V2.10

我不知道什么是错的。

回答

1

我想通了。 Facebook Messenger Platform使用分页作用域用户标识,但我使用的是应用作用域标识。他们是不同的。

下面是从Facebook如何获得分页范围ID

的ID必须是通过信使进入 点取回或通过Messenger网络挂接的ID(例如,一个人可能官方文档在您的Messenger中发现 您的业务并从那里开始对话。

这些ID是页面作用域ID(PSID)。这意味着对于给定页面,ID是 是唯一的。

如果您有现有的Facebook登录集成,用户标识为 应用范围,并且不适用于Messenger平台。

该解决方案订阅MyApp的到FB页(我已经完成),以获得网络挂接工作,在那里我会从用户的信息获取页面范围的ID。

此外,如何设置订阅这里找到

http://ukimiawz.github.io/facebook/2015/08/12/webhook-facebook-subscriptions/

详细
相关问题