Можно ли в FQL список друзей, которым принадлежит конкретный телефон? (Запрос из источника wallpost) - PullRequest
2 голосов
/ 14 июля 2011

Я заметил, что у каждого сообщения на стене на мобильном телефоне будет что-то вроде

44 минуты назад через BlackBerry
3 часа назад через iPhone

и если мы нажмем слово «BlackBerry» или «iPhone», оно будет перенаправлено на
http://www.facebook.com/mobile/?v=6628568379 (для iPhone)
или http://www.facebook.com/mobile/?v=2254487659 (для BlackBerry)

Можно ли в любом случае использовать FQL для друзей пользователя с определенным телефоном (или получить доступ к значению "v"), используя указанные выше источники?

1 Ответ

3 голосов
/ 21 июля 2011

Нет способа специально запросить «друзей, которые используют определенное устройство», но с помощью новостной ленты вы можете определить это для некоторых пользователей

Ознакомьтесь с таблицей FQL «потока»: https://developers.facebook.com/docs/reference/fql/stream/

С помощью access_token с разрешением read_stream для одного из ваших пользователей вы можете просмотреть сообщения в их ленте новостей и проверить столбец app_id, чтобы увидеть, какое приложение использовалось для публикации статьи.Очевидно, что эти устройства появятся только у тех пользователей, которые недавно опубликовали что-то, что видно в ленте пользователя вашего приложения, но это начало

Как вы заметили, мобильные клиенты можно узнать по новостным лентам, некоторыеиз которых:

  • 6628568379 = Facebook для iPhone
  • 2254487659 = Facebook для Blackberry
  • 41158896424 = HTC Sense
  • 4620273157 = Facebook для HPwebOS
  • 74769995908 = Facebook для Android
  • 135892916448833 = Facebook для Windows Phone
  • 139682082719810 = Facebook для каждого телефона (Java-клиент)

AПример запроса, который, кажется, дает то, что вы хотите:

select actor_id, app_id from stream where source_id = me() limit 500

Ответ на это выглядит следующим образом:

{
  0: {
actor_id: <snip>,
app_id: 74769995908,
  },
  1: {
 actor_id: <snip>,
 app_id: 6628568379,
},
 2: {
  actor_id: <snip>,
  app_id: 6628568379,
 },  
 ...

Из этого я вижу, что первый (отрубленный) пользователь использует Android, а следующие два используют приложение для iPhone

...