1

我想为订阅该通知的一小部分用户构建一个生成通知的应用程序(例如 SMS -> 移动用户将在他或她的手机上收到通知,就像在接收 SMS 时一样)。

我已经建立了一个应用程序和这样一个社区页面(我对 Facebook 不是很熟悉)。

这是我的代码:

//PHP SDK
require 'include/facebook.php';

//Instant Facebook-Object
$facebook = new Facebook(array(
  'appId'  => '...',
  'secret' => '...',
  'cookie' => true,
));

$user = $facebook->getUser();

if ($user) {
  try {
    // Proceed knowing you have a logged in user who's authenticated.
    $userData = $facebook->api('/me');
  } catch (FacebookApiException $e) {
    error_log($e);
    $user = null;
  }
}

// If a user haven't been loged in, so the user have to authorize
if (!$user) {
  $loginUrl = $facebook->getLoginUrl(
            array(
                'scope' => 'publish_stream',
                'redirect_uri' => 'http://my-hosting.url/'
            )
    );
    header('Location: '.$loginUrl);
    exit;
}

try {
    $publishStream = $facebook->api("/$testid/feed", 'post', array(
        'message' => 'Hello World',
        'link'  => 'http://www.example.org/',
        'name' => 'Test',
        'description' => 'Wohoo some great text.',
        )
    );
} catch (FacebookApiException $e) {
    var_dump($e);   
}

我正在玩$testid它包含例如$user社区页面 ID

如果是用户 ID,我会在墙上收到消息,但没有任何通知,这很可悲。如果我将其更改为社区页面,我将收到一条异常消息:

(#210) 用户不可见

这似乎不允许社区页面这样做。好吧,在我尝试获得该许可之前,我想问一下这种方式是否可行,或者我只是在浪费时间。

4

2 回答 2

2

我主要想到了两种使用图形 api 向用户发送通知的方法,然后每种方法分成两种。

1)请求请求社交渠道的一部分,有两种类型:

  • 用户请求 - 将显示在 facebook 标题的“地球”通知区域。
  • 应用程序请求 - 将显示为书签菜单中应用程序名称附近的计数器

2) 私人消息 如果您发送私人消息,那么用户将像任何其他 PM 一样收到它,这意味着如果用户在他的手机上安装了 facebook 应用程序,那么他将在新的 PM 上收到通知。

您有两种使用 api 发送消息的方法:

  • 发送对话框- 问题是您需要使用 facebook 对话框(使用他们的 SDK 之一)。
  • 聊天 API - 使用 xmpp,您可以代表登录用户发送消息。需要 xmpp_login 权限。
于 2012-05-21T09:14:43.950 回答
0

您可以使用通知 API 将通知发送给注册用户。

参考:
https ://developers.facebook.com/docs/app_notifications/

但我不知道我们如何设置每天发送通知的时间。

于 2012-09-07T12:07:49.907 回答