我在ejabberd上出现问题,我正在为一个客户做一个聊天客户端,我有这部分代码:
client.connect();
client.on('session:started', () => {
client.getRoster()
client.sendPresence();
onConnect();
});当我获得会话启动事件时,我将我的状态发送到服务器,以便对其他用户显示为“在线”,但它不工作,事件的名称是错误的吗?其他功能运行良好,我可以发送消息,但仅在脱机状态下。有什么建议吗?提前谢谢。
发布于 2016-08-22 00:44:02
确保您的其他客户端也具有sent their presence,并且另一个用户对您的在线状态执行subscribed操作。
发布于 2017-07-18 01:50:37
您需要将您的状态发送到服务器
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);当对方用户收到在线状态类型为subscribe时,也必须接受该订阅
this.client.acceptSubscription(id)https://stackoverflow.com/questions/39047965
复制相似问题