on disconnect update chat rooms

isekai-main
Barış Soner Uşaklı 2 years ago
parent 1e38a16bdb
commit cfa00ece35

@ -97,6 +97,10 @@ function onConnection(socket) {
socket.on('disconnect', () => { socket.on('disconnect', () => {
onDisconnect(socket); onDisconnect(socket);
}); });
socket.on('disconnecting', () => {
onDisconnecting(socket);
});
} }
function onDisconnect(socket) { function onDisconnect(socket) {
@ -104,6 +108,19 @@ function onDisconnect(socket) {
plugins.hooks.fire('action:sockets.disconnect', { socket: socket }); plugins.hooks.fire('action:sockets.disconnect', { socket: socket });
} }
async function onDisconnecting(socket) {
if (socket.uid > 0) {
for (const roomName of socket.rooms) {
if (roomName.startsWith('chat_room') && !roomName.includes('public')) {
Sockets.server.in(roomName).emit('event:chats.user-online', {
uid: socket.uid,
state: 0,
});
}
}
}
}
async function onConnect(socket) { async function onConnect(socket) {
try { try {
await validateSession(socket, '[[error:invalid-session]]'); await validateSession(socket, '[[error:invalid-session]]');

Loading…
Cancel
Save