首页 文章

如何使用Accessstoken通过图形api发送消息facebook朋友

提问于
浏览
41

任何人都可以帮助我使用图形API向Facebook朋友发送消息 .

我试过了

$response = $facebook->call_api("/me/feed", "post", "to=john","message=You have a Test message");

它不起作用 . 我手里拿着用户的accessstoken.only我很困惑发送过程 .

11 回答

  • 9

    您可以在弹出窗口中打开Send Dialog .

    $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/

  • 2

    您可以发送到他们的Facebook电子邮件 . Facebook电子邮件包含 Profiles 昵称'@ facebook.com' . 该电子邮件将转到他们的Facebook收件箱消息 . 请注意,Facebook电子邮件不接受欺骗性电子邮件 . 您将需要whitelabel域或使用SendGrid .

  • -1

    从技术上讲,您可以使用隐私设置进行馈送或交叉发布,这些设置只允许Feed所有者查看帖子,但不会真正向某人发送消息 .

  • 2

    看起来你想要将消息直接发送到接收器's primary inbox, there isn't任何图形api为此,你需要使用facebook xmpp chat api并发送消息,但是我已经制作了一个易于使用的php类,只是一些函数调用和调用发送消息的功能和消息将被发送,它的开源,检查出来:facebook message api php描述说它是一个封闭源,但评论说它现在是一个开源,你可以从github克隆 . 它现在是开源的 .

  • 2

    我看到这篇文章,发现它不对 . 使用javascriot api你可以像这样发布给朋友的feed:在这个例子中,“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方法必须类似 .

  • 0

    而不是使用下面的代码

    [facebook dialog:@"feed"
         andParams:params 
         andDelegate:self];
    

    使用以下解决方案

    [facebook requestWithGraphPath:@"me/feed"
       andParams:params
       andHttpMethod:@"POST"
       andDelegate:self];
    
  • 29

    您需要集成xmpp chat来回复消息并编写新消息 .

  • 51

    您无法使用Facebook应用程序发送消息 . 你曾经能够做到这一点,但是(可预测的?)巨大的滥用量导致了这种能力的撤销 .

    如果您的用户Alice已经为您提供了必要的extended permissions,您有以下选择:

    • 代表她发布到Alice的墙上

    • 发送电子邮件给Alice

    • 代表Alice创建活动

    • 邀请Bob(不是您的用户)来表示事件

    • 代表Alice向Bob发出请求/邀请

    • 从App向Alice发出请求

  • 4
    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
    
  • 5

    触发此事件以发送消息(应在之前完成facebook对象的初始化) .

    to:facebook的用户ID

    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 . 必需,但大多数SDK自动指定 .

    • 显示
      用于呈现对话框的显示模式 . 这是由大多数SDK自动指定的 .


    • 要将消息发送到的用户标识或用户名 . 对话框出现后,用户可以指定要向其发送消息的其他用户,Facebook组和电子邮件地址 . 将内容发送到Facebook群组会将其发布到群组的墙上 .

    • 链接
      (必填)发送消息的链接 .

    • 图片
      默认情况下,将从指定的链接中获取图片 . 要包含在邮件中的图片的URL . 图片将显示在链接旁边 .

    • name默认情况下,将从指定的链接中获取 Headers . 链接的名称,即用户将单击的显示文本 .

    • 说明
      默认情况下,将从指定的链接中获取描述 . 描述性文本显示在链接下方 .

  • 0
    $attachment =  array(
    
        'access_token' => $access_token,
        'message' => "$msg",
        'name' => "$name",
        'link' => "$link",
        'description' => "$desc",
    );
    
    facebook->api('/'.$uesr_id.'/feed', 'POST', $attachment);
    

相关问题