リアルタイム API を使用して、Facebook からアプリのリアルタイム更新を取得しようとしています。サブスクリプションを構成しました。
{
"data": [
{
"object": "user",
"callback_url": "https://myappname.herokuapp.com/realtime.php",
"fields": [
"activities",
"feed",
"is_app_user",
"likes",
"online_presence",
"photos",
"picture",
"status",
"wall_count"
],
"active": true
}
]
}
投稿リクエストを受け取ったときに、単にリクエストをログに記録するエンドポイントを作成しました。しかし、Facebookからの電話はないようです。エンドポイントに手動で投稿すると、投稿本文の json がログに記録されます。heroku ログを確認しましたが、ポスト リクエスト フォーム fb の痕跡はなく、手動リクエストのみが存在します。
<?php
$method = $_SERVER['REQUEST_METHOD'];
if ($method == 'GET' && $_GET['hub_mode'] == 'subscribe') {
echo $_GET['hub_challenge'];
} else if ($method == 'POST') {
$data = file_get_contents("php://input");
$json = json_decode($data, true);
error_log("update recieved");
error_log('updates = ' . print_r(json, true));
pg_close($db);
}
?>
https://graph.facebook.com/yourappid/subscriptions?access_token=youraccesstoken&object=user&fields=feed&verify_token=yourownsecretstringsetinyourphpfile&method=post&callback_url=http://www.yourwebsite.com/facebook_subscribe.php で指定されたコールバック要求テストを行いました 。 me null は、サブスクリプションが成功したことを示します。
いくつかのステータスの更新といいねをしましたが、fb からの更新はありません。ここで何か不足していますか?
前もって感謝します。