【发布时间】:2012-12-19 07:18:57
【问题描述】:
我目前正在 facebook 中开发一个应用程序,其中包含登录用户的朋友列表并显示他们的在线状态。为此,我使用了以下 FQL 查询:
SELECT name,uid, online_presence FROM user WHERE online_presence IN ('active', 'idle') AND uid IN ( SELECT uid2 FROM friend WHERE uid1 = me())
friends_online_presence 是扩展权限并返回 Facebook 聊天状态(字符串,活动、空闲、离线或错误之一)。
我的问题是如何获得朋友在线状态变化的实时更新?
选项 1: 在后台进程中定期查询 Facebook API
选项 2: 连接 XMPP 以获得实时更新(下面重复问题的答案)。
这里之前也有人问过这个问题,这里有一些重复(未解决):
facebook-api-real-time-friends-online-presence-update &
Is-it-possible-to-subscribe-to-real-time-updates-for-user-online-presence。
我想知道是否有人解决了这个问题,如果是,您是如何解决的。
如果您能详细说明一下选项 2(使用 XMPP/Jabber),那就太好了,因为当用户数较少时,我觉得定期查询只够了一段时间.
【问题讨论】:
-
我接受了唯一的答案,因为如果我不接受并且赏金结束,我将无法接受这个问题的任何答案。
-
我将处理提供的唯一答案,但仍然开放寻求答案。
标签: ruby-on-rails facebook xmpp facebook-fql facebook-chat