Facebook SDK访问页面消息的权限

Facebook SDK访问页面消息的权限

问题描述:

如何获取令牌以便能够读取发送到我的Facebook页面的数据消息?Facebook SDK访问页面消息的权限

如果我在这里看到:https://developers.facebook.com/docs/facebook-login/permissions/#overview有描述:

read_page_mailboxes: 使您的应用程序来检索网页Facebook的消息对话。您必须使用页面访问令牌来执行此操作。通过Graph API调用/{page_id}/conversations来检索对话。

我应该怎么做才能访问?

感谢

+0

使用grap api资源管理器,然后调用端点/ {iduser} /帐户,这将为您提供与iduser关联的页面和权限,这将在返回的数据中具有访问令牌。保存它,并使用它时,曾经做api调用或只是file_get_contents(api结束点) –

+0

@AbhikChakraborty你的意思是'php'' $ response = $ facebook-> api('/ my_acc_id/account');'? –

+0

是的,你可以做到这一点..事实上,当你打电话给粉丝页面时,你可能会或可能没有应用程序,所以在这种情况下,你可以使用图形浏览器来生成令牌。但是是$ response = $ facebook-> api('/ my_acc_id/account');是API调用 –

这里是你如何做到这一点,首先你需要获取页面标记为您的网页,我假设你已经登录使用范围的用户manage_pagesread_page_mailboxes

要读/回复/删除消息,你必须是一个完全管理,内容制作者或主持人

页ADM ins具有不同的角色,这由 数组返回,如上所示。提供给他们的功能是 基于以下烫发值决定:

你可以阅读更多关于它在这里:https://developers.facebook.com/docs/facebook-login/access-tokens/#pagetokens

现在的代码,你需要得到的页面访问令牌:

//get user accounts  
$pages = $this->facebook->api('/me/accounts'); 
foreach ($pages['data'] as $page) { 
    if($page['id']==PAGE_ID_YOU_WANT){ 
     //the user is admin of the page you want 
     $page_access_token = $page['access_token']; 
     $page_conversations = $facebook->api('/PAGE_ID_YOU_WANT/conversations', 'GET', array('access_token' => $page_access_token)); 
    } 

} 
+1

现货。打败我吧。道具提及用户所需的权利。 – Sean

+0

@Fabio感谢您的回复.....但是在我尝试之后,我得到一个空白屏幕。有什么不对的吗? –

+0

是有,就行了typpo'$ page_conversations = $ facebook-> API( '{PAGE_ID} /会话', 'GET',阵列( 'ACCESS_TOKEN'=> $ page_access_token));'没有一个在行尾添加了分号,我添加了它 –