我正在node-web kit和SailJs中创建一个多用户聊天应用程序,并且我试图实现用户的登录状态。用户打开应用程序后即可上线。用户下线的情况有:
- 用户点击注销按钮
- 用户关闭应用程序窗口。
- 用户关闭他/她的系统。
当用户关闭系统时,注销状态不起作用。这是我编写的代码的一部分:
UserSocket.find({
companyId: user.companyId
}, function (err, sockets) {
if (!err && sockets != undefined && sockets.length > 0) {
socketList = _.pluck(sockets, "socketId");
sails.sockets.emit(socketList, 'userOffline', {
previous: user
});
}
});
请帮我解决这个问题。提前致谢。
最佳答案
您是否尝试过在 config/sockets.js 中使用 onDisconnect 方法?
module.exports.sockets = {
onDisconnect: function(session, socket) {
//do your stuff here
}
}
关于node.js - Socket.io+SailsJS : Chat application-How to check whether the client is shut down, 并使用户离线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27897926/