我正在使用now.js群组,并希望在用户离开群组时进行侦听,以便在群组为空时执行一些整理。我发现每次用户进入一个组时都会多次调用leave事件,即如果我加入一个组并在第三次关闭我的浏览器3次就会被调用3次。
chatserver.prototype.joinGroup = function(groupId) {
//user joins group
var group = this.nowjs.getGroup(doc_id);
group.addUser(that.user.clientId);
//want to know when a user leaves a group
group.on('leave', function() {
console.log("user left group:"+groupId)
//do group clean up
});
};
我在确定范围时出错了吗?
答案 0 :(得分:0)
您应该断开与已连接的群组中的每个用户的连接。
类似的东西:
nowjs.on('disconnect', function() {
var that = this;
this.getGroups( function(groups) {
for ( i=0 ; i < groups.length; i++ ) {
nowjs.getGroup(groups[i]).removeUser(that.user.clientId);
}
}
}