首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过cron-job创建facebook事件

通过cron-job创建facebook事件
EN

Stack Overflow用户
提问于 2010-01-15 15:30:41
回答 2查看 1.3K关注 0票数 5

我正在尝试通过cron-job创建facebook事件。这些事件应该是代表我的facebook-connect-site的用户创建的,他们已经被授予了离线访问权限。我有没有过期的session_keys,但是不能让它工作!为我的应用程序创建活动就像是一种魅力,这不是我想要的……

代码语言:javascript
运行
复制
var_dump($event) with some randomly generated data:
'name' => string 'Try a athirst these and' (length=23)
'tagline' => string 'as it that he down the almost the' (length=33)
'description' => string 'that deeper but is sea whenever lead all a stream knowing robust bakehouses attending have am it pent for own quick' (length=115)
'category' => int 5
'subcategory' => int 52
'location' => string 'same as more the' (length=16)
'start_time' => int 1263630600
'end_time' => int 1263654000
'street' => string 'This Was Ships My 807' (length=21)
'phone' => string '49 692 324' (length=10)
'email' => string 'oeott@yahoo.com' (length=15)
'privacy_type' => string 'OPEN' (length=4)

<?php

$facebook = new Fb(FACEBOOK_API_KEY, FACEBOOK_API_SECRET);
// Set session key (that has been returned after offline-access has been granted)
$facebook->api_client->session_key = '5de03e54cb359f9asf3435365e-4588985454';
$eid = $facebook->api_client->events_create(json_encode($event));

?>

结果为:“异常'FacebookRestClientException‘,消息为'Invalid parameter'”

有谁能拯救我的一天吗?

EN

回答 2

Stack Overflow用户

发布于 2011-01-26 05:12:40

假设您已经请求了create_events扩展权限,那么您应该能够使用新的Open Graph API和最新的PHP SDK来执行此操作。代码应该是这样的(未经过测试):

代码语言:javascript
运行
复制
$facebook = new Facebook(array(
  'appId'  => 'application ID',
  'secret' => 'application secret',
  'cookie' => true,
));
if ($session = $facebook->getSession()) {
  try {
    $event = $facebook->api("/me/events","post",array(
      'title'=>'My Event Name',
      'start_time'=>1263630600,
      'end_time'=>1263654000,
      // etc add your other event info here
    ));
  } catch (FacebookApiException $e) {
    error_log($e);
  }
}

它也应该作为CRON任务运行,我不知道为什么它不会。

票数 1
EN

Stack Overflow用户

发布于 2011-02-11 19:07:13

您确定需要使用会话密钥吗?我一直在使用access_token,它是在授予向墙上张贴项目和离线访问用户信息的访问权限时提供的。

编辑:代码示例,非常适合我将项目发布到用户墙(事件的工作方式类似):

代码语言:javascript
运行
复制
<?php
$ch = curl_init ('https://graph.facebook.com/me/feed');
curl_setopt ($ch, CURLOPT_POST, true);
curl_setopt ($ch, CURLOPT_POSTFIELDS, array('access_token' => $user_access_token, 'message' => $message, 'link' => $link));
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
$ret = curl_exec ($ch);
$ret = json_decode($ret);
if (!empty($ret->id)) {
  return true;
}
return false;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2070072

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档