Получение сообщений на стене друга с помощью Facebook API

#php #facebook #status

#php #Facebook #Статус

Вопрос:

Я бы хотел, чтобы мое приложение Facebook получало идентификатор пользователя, использующего приложение, и находило сообщения, сделанные по этому идентификатору, на стене одного из их друзей (я бы предпочел пример с индивидуальным идентификатором, а не перебор всех друзей).

Я полагаю, что существует большая вероятность того, что оба пользователя должны будут предоставить разрешения приложению для этого, и это нормально.

Я бы предпочел сообщения, сделанные непосредственно на стене другого пользователя, а также любые комментарии, сделанные к обновлениям статуса целевого пользователя / собственным сообщениям на стене.

Предпочтительнее был бы FQL, но я могу работать с graph. Я пишу на PHP, но я могу попробовать перевести с другого языка, если вы знаете решение в этом.

Код, который я сейчас использую, является:

 SELECT message FROM stream WHERE source_id = <FRIEND ID> AND target_id = <USER ID>
  

Я жестко запрограммировал <FRIEND ID> тестовый идентификатор (одного из разработчиков), и я пробовал с двумя другими <USER ID> (тоже разработчиками), всем пользователям предоставлено разрешение read_stream.
Я не уверен, но я думал, что FQL вернет ошибку, если не было разрешения. В любом случае, он просто возвращается пустым.

Ответ №1:

вам понадобятся как минимум «read_stream» и «publish_stream» пользователей.

Затем вы можете выбрать через fql. Смотрите http://developers.facebook.com/docs/reference/fql/stream

и http://developers.facebook.com/docs/authentication/permissions / список разрешений, которые вы можете запросить.

Комментарии:

1. Спасибо за предложение! Э … как мне заставить эту штуку распознавать перерывы в строке? Ранее сегодня я попробовал выполнить потоковый запрос, но в результате получилась пустая страница. Мой FQL был таким: code ‘ВЫБЕРИТЕ сообщение ИЗ потока, ГДЕ source_id = <ИДЕНТИФИКАТОР ДРУГА> И target_id = <ИДЕНТИФИКАТОР ПОЛЬЗОВАТЕЛЯ>’ Также, «Таблица потоков ограничена последними 30 днями или 50 сообщениями, в зависимости от того, что больше». и я действительно надеялся получить все обратно, если это возможно.

2. в комментариях нет разрывов строк. вам нужно будет показать некоторый код. есть ли у вас read_stream от обоих пользователей? сложно сказать, нужны ли вам оба варианта или нет, но я бы сказал, что да.