0

我的名册机制有问题,我正在使用 JSJaC javascript 库。

我的情况:

用户 A 有一个简单的名册,其中包含另一个订阅“both”的用户 B。用户 B 具有相同的配置。

当用户 A 登录到 openfire 时,我调用我的“getRoster()”函数返回用户的朋友列表(在我的情况下,只有用户 B),但是我如何检查用户 B 当前是否可以聊天?

我看到有一些存在机制,但我不明白如何使用这些机制。

对不起我糟糕的英语。谢谢。

4

2 回答 2

0

您应该注册一个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
于 2014-01-20T18:17:35.220 回答
0

当您将自己的存在发送到服务器时,服务器开始将您订阅的联系人的所有存在发送给您。默认情况下,您必须将所有联系人视为离线。

我对 JSJaC 不熟悉,但可能存在一个回调。

于 2012-11-30T20:05:36.340 回答