Как отправить сообщение facebook другу через график api с помощью Accessstoken
Может ли кто-нибудь помочь мне отправить сообщение друзьям из Facebook, используя график api.
Я пробовал
$response = $facebook->call_api("/me/feed", "post", "to=john","message=You have a Test message");
Это не работает.
У меня есть accesstoken пользователя в моей руке. Только я запутался в процессе отправки.
Ответы
Ответ 1
Вы не можете отправлять сообщения с помощью приложения Facebook. Вы имели обыкновение делать это, но (предсказуемое?) Колоссальное количество злоупотреблений привело к отзыву этой способности.
Предоставленный Алисе, ваш пользователь, предоставил вам необходимые расширенные разрешения, у вас есть следующие возможности:
- Опубликовать на стене Алисы от ее имени
- Отправить электронное письмо в Alice
- Создание событий от имени Алисы
- пригласить Боба (не вашего пользователя) на указанные события.
- Выдать запрос/приглашение от имени Алисы Бобу
- Выдать запрос из приложения в Alice
Ответ 2
Вы можете открыть Отправить диалог во всплывающем окне.
$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/
Ответ 3
запустить это событие для отправки сообщения (инициализация объекта facebook должна выполняться до).
to: идентификатор пользователя facebook
function facebook_send_message(to) {
FB.ui({
app_id:'xxxxxxxx',
method: 'send',
name: "sdfds jj jjjsdj j j ",
link: 'https://apps.facebook.com/xxxxxxxaxsa',
to:to,
description:'sdf sdf sfddsfdd s d fsf s '
});
}
Свойства
-
app_id
Идентификатор вашего приложения. Требуется, но автоматически указывается
по большинству SDK.
-
redirect_uri
URL-адрес для перенаправления после того, как пользователь нажмет кнопку "Отправить" или "Отменить"
кнопок в диалоговом окне. Требуется, но автоматически определяется большинством
SDKs.
-
дисплей
Режим отображения, в котором отображается диалог. Это автоматически
определенных большинством SDK.
-
в
Идентификатор пользователя или имя пользователя для отправки сообщения. После диалога
пользователь может указать дополнительных пользователей, группы Facebook и
адреса электронной почты, на которые следует отправить сообщение. Отправка содержимого на
Группа Facebook отправит его на стену группы.
-
ссылка
(обязательно) Ссылка для отправки сообщения.
-
картина
По умолчанию изображение будет взято из указанной ссылки. URL-адрес
изображения для включения в сообщение. Изображение будет показано
рядом со ссылкой.
-
имя
По умолчанию заголовок будет выбран из указанной ссылки. Имя
ссылка, то есть текст, отображаемый на том, что пользователь будет нажимать.
-
Описание
По умолчанию описание будет взято из указанной ссылки.
Описательный текст, который будет показан ниже ссылки.
Ответ 4
$attachment = array(
'access_token' => $access_token,
'message' => "$msg",
'name' => "$name",
'link' => "$link",
'description' => "$desc",
);
facebook->api('/'.$uesr_id.'/feed', 'POST', $attachment);
Ответ 5
Технически вы можете делать фид или пересылать сообщение с настройками конфиденциальности, которые позволяют только владельцу фида видеть сообщение, но его не отправляет сообщение человеку.
Ответ 6
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
Ответ 7
Вы можете отправить их на электронную почту в facebook. Электронная почта Facebook состоит из профиля nickname+'@facebook.com '. Письмо будет отправлено в их почтовое сообщение в facebook. Обратите внимание, что электронная почта facebook не принимает спуфинг электронной почты. Вам понадобится домен whitelabel или используйте SendGrid.
Ответ 8
Вам нужно будет интегрировать чат xmpp для ответа на сообщение и написать новое сообщение.
Ответ 9
Я видел этот пост и заметил, что это неправильно. Используя javascriot api, вы можете отправить сообщение другу так:
В этом примере "friendID" - это идентификатор пользователя FB друга.
Этот вызов 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 должен быть схожим.
Ответ 10
Вместо использования приведенного ниже кода
[facebook dialog:@"feed"
andParams:params
andDelegate:self];
Используйте следующее решение
[facebook requestWithGraphPath:@"me/feed"
andParams:params
andHttpMethod:@"POST"
andDelegate:self];
Ответ 11
Похоже, вы хотите отправить сообщение прямо в основной почтовый ящик получателя, для этого нет никакого графика api, вам нужно использовать facebook xmpp chat api и отправить сообщение, однако я сделал класс php, который слишком просто в использовании, просто некоторые вызовы функций и вызов функции отправки сообщения, и сообщение будет отправлено с открытым исходным кодом, проверьте его: facebook message api php описание говорит о закрытом исходном коде, но в комментарии говорится, что теперь он открыт с открытым исходным кодом, вы можете клонировать из github. Это открытый исходный код.