1

我正在尝试将 ticket_uri 添加到我正在创建的事件中。我在我的应用设置中启用了“事件时区”迁移。我代表作为页面管理员的用户发布。

目前,当我创建一个新事件时它不起作用。新活动没有门票 uri。如果我更新新事件,则在它创建之后,票证 uri 就可以工作......

这是一个错误还是我做错了什么?

    $fbEvent = $facebook->publish('/events', $event);

    if(isset($fbEvent['id']))
    {
        $facebook->publish('/' . $fbEvent['id'], array('ticket_uri' => 'http://lowiebenoot.be'));
    }

创建后立即更新只是愚蠢的...

4

1 回答 1

1

您必须获得“页面访问令牌”,然后发布到 {page_id}/events。这是我在几个地方发布的步骤的副本:

  1. 启用“事件时区迁移”
  2. 以在我们希望将事件发布到的 FB 页面上具有管理员权限的用户身份登录 FB
  3. 使用 APPLICATION 的 ID 构建此链接以授权管理页面 https://www.facebook.com/dialog/oauth?client_id=MY_APP_ID&redirect_uri=MY_SITE_URL&scope=manage_pages,create_event&response_type=token
  4. perm 的交换令牌(更长的令牌) https://graph.facebook.com/oauth/access_token?client_id=MY_APP_ID&client_secret=MY_CLIENT_SECRET&grant_type=fb_exchange_token&fb_exchange_token= (来自步骤 3 的令牌)
  5. 访问此页面,找到您要发布的页面并复制新的 access_token https://graph.facebook.com/me/accounts?access_token= (来自步骤 4 的令牌)
  6. 根据https://developers.facebook.com/docs/reference/api/page/#events上的说明,使用最后一个令牌(来自第 5 步)和 PAGE 的 ID 发布事件

请注意,如果您创建了很多事件,您将向每个点赞该页面的用户发送“垃圾邮件”。FB 最近添加了“no_feed_story”选项来防止这种情况。

于 2013-08-07T20:20:50.777 回答