#facebook-fql
#facebook-fql
Вопрос:
Я пытаюсь получить все фотографии, которые мое приложение разместило в потоке пользователя, используя FQL. Я понимаю, что мог бы сделать это, сначала выполнив следующий запрос:
SELECT attachment FROM stream WHERE source_id = me() AND app_id = <my_app_id>
а затем локально анализировать вложения, чтобы определить их тип. Но мне интересно, есть ли какой-нибудь способ включить тип вложения в мой запрос, чтобы возвращались только вложения с фотографиями?
Ответ №1:
Facebook обновил таблицу потоков, включив в нее «тип»:
https://developers.facebook.com/docs/reference/fql/stream/
The type of this story. Possible values are:
11 - Group created
12 - Event created
46 - Status update
56 - Post on wall from another user
66 - Note created
80 - Link posted
128 - Video posted
247 - Photos posted
237 - App story
272 - App story
Итак, ответ на мой вопрос становится:
SELECT attachment FROM stream WHERE source_id = me() AND type = 247 AND app_id = <my_app_id>
Кстати, не похоже, что они ретроактивно обновили таблицу потоков, т.Е. Старые сообщения не имеют значения «тип»
Ответ №2:
если вы не выбрали / не создали определенный альбом для фотографий, публикуемых в учетной записи пользователя, все они будут в одном альбоме — что-то вроде <app_name> Photos
.
Взято из сообщения в блоге facebook 489 :
… Мы автоматически создаем альбом для вашего приложения, если он еще не существует. Все фотографии, загруженные таким образом, будут добавлены в этот же альбом.
Оттуда вы можете получить все публикации с фотографиями, сделанные вашим приложением. Я считаю очень маловероятным, что пользователь загрузит фотографию в конкретный альбом вашего приложения (хотя это возможно)
Кроме того, сохранение photo_id / album_id в вашей собственной базе данных для использования в будущем — отличная идея.
Комментарии:
1. Спасибо за ответ. Я пытаюсь сделать свое приложение максимально гибким, поэтому я не хочу ограничивать пользователя использованием только одного альбома. В идеале я должен иметь возможность указывать тип в своем запросе, но пока я не понял, как это сделать…