我的名册机制有问题,我正在使用 JSJaC javascript 库。
我的情况:
用户 A 有一个简单的名册,其中包含另一个订阅“both”的用户 B。用户 B 具有相同的配置。
当用户 A 登录到 openfire 时,我调用我的“getRoster()”函数返回用户的朋友列表(在我的情况下,只有用户 B),但是我如何检查用户 B 当前是否可以聊天?
我看到有一些存在机制,但我不明白如何使用这些机制。
对不起我糟糕的英语。谢谢。
我的名册机制有问题,我正在使用 JSJaC javascript 库。
我的情况:
用户 A 有一个简单的名册,其中包含另一个订阅“both”的用户 B。用户 B 具有相同的配置。
当用户 A 登录到 openfire 时,我调用我的“getRoster()”函数返回用户的朋友列表(在我的情况下,只有用户 B),但是我如何检查用户 B 当前是否可以聊天?
我看到有一些存在机制,但我不明白如何使用这些机制。
对不起我糟糕的英语。谢谢。
您应该注册一个presence
处理程序。假设您有 roster 作为用户数据数组,您可以这样做:
xmpp.registerHandler 'presence', (response) ->
user = _.find @roster, jid: (response.getFrom().split '/').shift()
if user
if response.getType() is 'unavailable'
user.online = no
else
user.online = yes
当您将自己的存在发送到服务器时,服务器开始将您订阅的联系人的所有存在发送给您。默认情况下,您必须将所有联系人视为离线。
我对 JSJaC 不熟悉,但可能存在一个回调。