Quelqu'un peut-il m'aider à envoyer un message à des amis Facebook à l'aide de l'API graphique.
J'ai essayé
$response = $facebook->call_api("/me/feed", "post", "to=john","message=You have a Test message");
Ça ne fonctionne pas. J'ai les accès de l'utilisateur dans ma main. Seulement je suis confus sur le processus d'envoi.
Vous ne pouvez pas envoyer de messages à l'aide d'une application Facebook. Vous pouviez le faire auparavant, mais la quantité colossale (prévisible?) D'abus a conduit à la révocation de cette capacité.
Pourvu qu'Alice, votre utilisateur, vous ait donné le nécessaire autorisations étendues , vous avez les options suivantes:
Vous pouvez ouvrir la boîte de dialogue d'envoi dans une fenêtre contextuelle.
$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).', ...
Pour des options détaillées, voir: 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);
Techniquement, vous pouvez faire un post ou un flux croisé avec des paramètres de confidentialité qui permettent uniquement au propriétaire du flux de voir le post, mais ce n'est pas vraiment d'envoyer un message à une personne.
Vous pouvez envoyer à leur e-mail facebook. L'e-mail Facebook consiste en un pseudo de profil+'@facebook.com '. L'e-mail sera envoyé à leur message de boîte de réception Facebook. Notez que l'e-mail facebook n'accepte pas les e-mails d'usurpation. Vous aurez besoin d'un domaine en marque blanche ou utilisez 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
Vous devrez intégrer le chat xmpp pour répondre à un message et écrire un nouveau message.
J'ai vu ce post et j'ai remarqué que ce n'était pas bien. En utilisant l'API javascriot, vous pouvez publier dans le flux d'un ami comme ceci: Dans cet exemple, "friendID" est l'ID utilisateur FB de l'ami. Cet appel api nécessite l'autorisation "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);
}
});
Donc, cela se fait avec le SDK javasfcript - la méthode PHP doit être similaire.
Au lieu d'utiliser le code ci-dessous
[facebook dialog:@"feed"
andParams:params
andDelegate:self];
Utilisez la solution suivante
[facebook requestWithGraphPath:@"me/feed"
andParams:params
andHttpMethod:@"POST"
andDelegate:self];