В настоящее время я сталкиваюсь с проблемой API реального времени Facebook.
Я хочу подписаться на ряд вещей в профиле пользователей, включая их "Likes" в категориях "Музыка", "Книги", "ТВ" и "Фильмы".
Я получаю правильную информацию, когда я запрашиваю через FQL и Graph, но Facebook не проверяет мою конечную точку уведомления, когда эти записи меняются в профиле пользователей.
Подписка и проверка в порядке. Вот активная подписка от Facebook из моего приложения:
["object"]=> string(4) "user"
["callback_url"]=> <correct callback URL>/facebook/update/"
["fields"]=>array(11) {
[0]=> string(13) "birthday_date"
[1]=> string(5) "books"
[2]=> string(10) "first_name"
[3]=> string(7) "friends"
[4]=> string(5) "likes"
[5]=> string(6) "movies"
[6]=> string(5) "music"
[7]=> string(4) "name"
[8]=> string(3) "sex"
[9]=> string(2) "tv"
[10]=> string(8) "username"
}
["active"]=> bool(true)
Сначала я не подписался на likes
, но добавил, что для проверки, исправляет ли он проблему... Это не так.
В документации говорится:
Вот список пользовательских подключений, на которые вы можете подписаться: фид, друзья, действия, интересы, музыка, книги, фильмы, телевидение, симпатии, проверок.
Я получаю уведомление, когда какая-либо из этих данных изменяется (включая friends
), это просто music
, books
, movies
и television
.
Возможно, еще более странно, когда я "люблю" случайную страницу Facebook (т.е. используя подобную кнопку, не добавляя ее в поле в моем профиле), я получаю уведомление, вызванное в поле like
. Когда я в отличие от той же страницы, я получаю уведомление, вызванное на likes
, music
, books
, movies
и television
!
Нет нужды говорить, я в замешательстве. Кто-нибудь сталкивается с этим или может предложить место, чтобы начать искать его исправить?
EDIT:. После некоторого дополнительного теста я обнаружил, что уведомление возникает при некоторых условиях, но не в других. например если вам нравится группа с этой страницы группы, будет отправлено уведомление. Если вы отредактируете свою музыку на странице "Редактировать профиль", не будет отправлено уведомление. Так что это звучит как ошибка.