使用Facebook连接Java脚本客户端API登录Facebook后,我已经获得了我的朋友列表。我想要在特定时间在线的朋友列表。
使用Facebook连接Java脚本客户端API登录Facebook后,我已经获得了我的朋友列表。我想要在特定时间在线的朋友列表。
user
表中的 online_presence
列,该列给出用户当前的Facebook聊天状态。这并不是一个完美的“此用户现在是否在线”的方法,但它确实可以用于这个一般性目的。该列是一个字符串,有四个可能的值:active
、idle
、offline
或 error
。与此同时,结合查询 friend
表,可以得到您所需的结果(在本例中,“在线”意味着 active
或 idle
)。SELECT uid FROM user WHERE
online_presence IN ('active', 'idle')
AND uid IN (
SELECT uid2 FROM friend WHERE uid1 = $user_id
)
更新:
请注意,您需要user_status
权限来读取用户的状态,以及user_online_presence
和/或friends_online_presence
权限来读取online_presence
。
感谢https://stackoverflow.com/users/613631/laphroaig提出这个问题(Facebook在线好友),也感谢https://stackoverflow.com/users/570958/roozbeh15提供的答案。