是否可以订阅用户 online_presence 的实时更新?
Posted
技术标签:
【中文标题】是否可以订阅用户 online_presence 的实时更新?【英文标题】:Is it possible to subscribe to real-time updates for user online_presence? 【发布时间】:2012-07-28 00:37:54 【问题描述】:我的应用有一个搜索功能,您可以在其中根据各种过滤器找到用户。
我最近添加了一个指示器,以便您查看用户是否在线。我通过获取 user_online_presence 权限来完成这项工作,然后在过滤结果后,使用存储在我的数据库中的用户 access_token 发出 FQL 请求。
现在,我想这样做,这样我就可以根据用户是否登录来过滤搜索。因此,不知何故,我需要将每个用户的在线状态存储在我的数据库中。
这似乎是实时更新的用途,但 Facebook 并未将 online_presence 列为我可以订阅的内容。
在 https://developers.facebook.com/docs/reference/api/realtime/ 上,他们说: “您可以订阅除已验证之外的所有用户对象属性。”
但 online_presence 未列为用户字段: https://developers.facebook.com/docs/reference/api/user/
有人试过吗?
【问题讨论】:
【参考方案1】:它肯定是用户表的一个字段,否则下面的查询将不起作用。
SELECT uid, name, pic_square, online_presence FROM user
但是,它只列在: https://developers.facebook.com/docs/reference/fql/user/
而不是: https://developers.facebook.com/docs/reference/api/user/
当遇到此类问题时,我通常会通读两份文档上的注释。
然后我发现:“您可以缓存此数据并订阅其任何字段的实时更新,这些字段也是相应 Graph API 版本中的字段。” - 脸书
所以基本上,他们说除非两个链接中都存在该字段,否则它不会起作用。
然后我会尝试在我找到的这个问题中的答案:
Facebook API real-time friends' online presence update
我希望这至少可以为您澄清一些事情。祝你好运!
【讨论】:
【参考方案2】:根据我的问题 (https://***.com/questions/27222641/fetch-online-presence-for-thousands-of-facebook-app-users),上周我直接从 Facebook 听说这是不可能的,并且没有计划使其成为可能。希望这可以帮助。仍在寻找获取此信息的最佳方式。
【讨论】:
以上是关于是否可以订阅用户 online_presence 的实时更新?的主要内容,如果未能解决你的问题,请参考以下文章