我试图找到一种方法来查看用户是否在线/连接而不知道其SID。我得到的唯一方法是检查它的最后活动时间。如果它返回错误然后它在线,如果它有价值然后它不在线....我不确定是否有任何其他方式来查看用户是否在线。
我是否必须在Ejabberd中切换任何特定的东西?
但是当我发送智商时它也不起作用。
var iq = $iq({
type: 'get',
id: 'last1',
to: "jay@server.com" })
.c('query', {xmlns: 'jabber:iq:last'});
conn.sendIQ(iq);
编辑:我发现请求实体无权检索最后的活动信息,我将如何允许?我是管理员
答案 0 :(得分:0)
要获取最后一个活动信息,需要将用户添加到他/她的名单列表中。让我们说 A 希望上次看到 B 的活动,然后需要将A添加到B的名单列表中。
因此,您需要在访问最后看到的信息之前将A和B添加到彼此的名单列表中。您可以使用设置名单或ejabberd ejabberdctl 管理工具添加彼此的名单列表。
我猜你已经在ejabberd配置中启用了 mod_last 模块。