发布到Facebook组墙和标签成员 - 图谱API - C#

时间:2015-01-31 23:11:00

标签: c# facebook facebook-graph-api

我目前正在创建一个Web应用程序,到目前为止已创建了一个Facebook群组,现在可以发布到该群组的墙上:

创建群组:

        dynamic fbInfo = fb.Post("/v2.2/" + appId + "/groups", new
        {
            name = GroupName,
            description = GroupDesc,
            admin = PersonID
        });

发布到小组的墙上:

        dynamic fbInfo = fb.Post("/v2.2/" + GroupID + "/feed", new
        {
            message = "This is a test message"
        });

所以现在我想在这篇文章中标记一个小组成员,我不确定如何做到这一点。 我已经尝试过 - @ [PersonID:1:PersonName]但是这并没有完全做到,任何人的想法? :)

编辑:

如果没有人知道使用图形API标记人的方法,那么有人知道如何将图像发布到Facebook组(该应用已创建)吗?

        dynamic fbInfo2 = fb.Post("/v2.2/" + groupID + "/photos", new
        {
            access_token = token,
            message = "This is the caption stuff",
            photo = @"/Content/Images/Image1.jpg"
        });

我尝试了此代码,但它需要用户访问令牌而不是应用访问令牌。

2 个答案:

答案 0 :(得分:0)

您可以tag or mention users in Open Graph stories,但我不确定您是否可以在没有用户手动操作的情况下执行此操作。取决于您尝试使用该应用程序完成的任务,可能会有所帮助,也可能没有帮助。

如果您有照片链接,可以将照片发布到相册;但是,我认为这仅限于用户和页面。这将是一个真正的黑客,但你可以 change a group's cover photo用你使用该应用程序生成的群组,这样至少可以让你发布照片。

然而,令人遗憾的是,应用程序的组API并不十分强大。是为应用程序创建用户/页面并通过该选项发布?

答案 1 :(得分:0)

为我们下载的Facebook API类创建一个对象..

 $facebook = new Facebook(array(
     'appId'  => $config['App_ID'],
     'secret' => $config['App_Secret'],
     'cookie' => true
    )); 

获取您发布链接的组ID

 $group_id = $_GET['group'];

这是图像发布

$publish = $facebook->api('/'.$group_id.'/feed', 'post',
        array('access_token' => $access_token,
        'message'=> 'Testing',
        'from' => $config['App_ID'],
        'to' => $group_id,
        'caption' => 'caption',
        'name' => 'Name',
        'link' => 'http://www.google.com/',
        'picture' => 'full path of Image',
        'description' => 'Testing'
        ));

这适用于留言或状态发布
$ publish = $ facebook-> api('/'。$ group_id。'/ feed','post',         array('access_token'=> $ access_token,'message'=>“这是消息”。'通过IOS Demo',         'from'=> $配置[ 'APP_ID']         ));