任何人都可以帮助我使用图形 api 向 Facebook 朋友发送消息。
我试过了
$response = $facebook->call_api("/me/feed", "post", "to=john","message=You have a Test message");
它不工作。我手里有用户的访问令牌。只有我对发送过程感到困惑。
任何人都可以帮助我使用图形 api 向 Facebook 朋友发送消息。
我试过了
$response = $facebook->call_api("/me/feed", "post", "to=john","message=You have a Test message");
它不工作。我手里有用户的访问令牌。只有我对发送过程感到困惑。
您不能使用 Facebook 应用程序发送消息。你曾经能够做到这一点,但是(可预见的?)大量滥用导致了这种能力的撤销。
如果您的用户 Alice 为您提供了必要的扩展权限,您有以下选择:
您可以在弹出窗口中打开发送对话框。
$parameters = array(
'app_id' => $facebook->getAppId(),
'to' => $facebookUserId,
'link' => 'http://google.nl/',
'redirect_uri' => 'http://my.app.url/callback'
);
$url = 'http://www.facebook.com/dialog/send?'.http_build_query($parameters);
echo '<script type="text/javascript">window.open('.json_encode($url).', ...
有关详细选项,请参阅: https ://developers.facebook.com/docs/reference/dialogs/send/
$attachment = array(
'access_token' => $access_token,
'message' => $msg,
'name' => $name,
'link' => $link,
'description' => $desc,
);
facebook->api('/'.$uesr_id.'/feed', 'POST', $attachment);
从技术上讲,您可以使用隐私设置进行提要或交叉提要帖子,仅允许提要所有者查看帖子,但不会真正向某人发送消息。
您可以发送到他们的 Facebook 电子邮件。Facebook 电子邮件由个人资料昵称+'@facebook.com' 组成。该电子邮件将发送到他们的 Facebook 收件箱消息。请注意,Facebook 电子邮件不接受欺骗性电子邮件。您将需要 whitelabel 域或使用 SendGrid。
You can use
HTTP POST with
PATH
https://graph.facebook.com/friend_facebook_id/feed
PARAMETER
MESSAGE = your message
ACCESS_TOKEN = your oauth2 access token
您将需要集成 xmpp 聊天来回复消息并编写新消息。
看到这个帖子,发现不对。使用 javascriot api,您可以像这样发布到朋友的提要:在这个例子中,“friendID”是朋友的 FB 用户 ID。此 api 调用需要“publish_stream”权限。
FB.api('/'+friendID+'/feed', 'post',
{
method: 'feed',
message: messageText,
name: 'write a title here',
caption: 'Put a caption here.',
description: 'Put your description here.',
link: 'http://stackoverflow.com/questions/2943297/how-send-message-facebook-friend-through-graph-api-using-accessstoken',
picture: 'link to the preview thumbnail',
},
function(response) {
if (!response || response.error) {
//alert('Error occured');
} else {
//alert('Post ID: ' + response.id);
}
});
所以这是用 javasfcript SDK 完成的——PHP 方法必须类似。
而不是使用下面的代码
[facebook dialog:@"feed"
andParams:params
andDelegate:self];
使用以下解决方案
[facebook requestWithGraphPath:@"me/feed"
andParams:params
andHttpMethod:@"POST"
andDelegate:self];