Javascript 如何使用stanza.io客户端和ejabberd服务器在线显示?
我在ejabberd在线出现问题,我正在为一位客户开发聊天客户端,我有这部分代码:Javascript 如何使用stanza.io客户端和ejabberd服务器在线显示?,javascript,xmpp,chat,ejabberd,stanza.io,Javascript,Xmpp,Chat,Ejabberd,Stanza.io,我在ejabberd在线出现问题,我正在为一位客户开发聊天客户端,我有这部分代码: client.connect(); client.on('session:started', () => { client.getRoster() client.sendPresence(); onConnect(); }); 当我启动会话事件时,我将我的状态发送到服务器,以便向其他用户显示为“在线”,但它不起作用,事件的名称是否错误?其他功能运行良好,我可以发送消息,但只能在脱机
client.connect();
client.on('session:started', () => {
client.getRoster()
client.sendPresence();
onConnect();
});
当我启动会话事件时,我将我的状态发送到服务器,以便向其他用户显示为“在线”,但它不起作用,事件的名称是否错误?其他功能运行良好,我可以发送消息,但只能在脱机状态下发送。有什么建议吗?提前感谢。确保您的其他客户端也有,并且其他用户也在您的状态中。确保您的其他客户端也有,并且其他用户也在您的状态中。您需要将您的状态发送到服务器
this.client.on('session:started', () => {
this.client.enableCarbons(err => {
if (err) {
console.log('Server does not support carbons', err);
}
});
this.client.sendPresence();
});
在保存任何新用户时,我们需要订阅该用户
this.client.subscribe(id);
当对方用户收到状态类型为订阅时,他们必须接受订阅
this.client.acceptSubscription(id)
您需要将状态信息发送到服务器
this.client.on('session:started', () => {
this.client.enableCarbons(err => {
if (err) {
console.log('Server does not support carbons', err);
}
});
this.client.sendPresence();
});
在保存任何新用户时,我们需要订阅该用户
this.client.subscribe(id);
当对方用户收到状态类型为订阅时,他们必须接受订阅
this.client.acceptSubscription(id)
我使用psi来调试客户端,如果我理解正确,我需要订阅以查看用户是否在线,即使客户端发送状态?我将尝试订阅以查看发生了什么我使用psi对客户端进行调试,如果我理解正确,我需要订阅以查看用户是否在线,即使客户端发送状态信息?我会尝试订阅看看会发生什么我们可以一起发送订阅和接受订阅alsoyeah…我们可以这样做alsoWe可以一起发送订阅和接受订阅alsoyeah…我们也可以这样做