rewrite user-count and disconnect events

This commit is contained in:
dwelle 2020-03-12 12:17:31 +01:00
parent ff9e761fe3
commit af0904ccfa

View File

@ -35,8 +35,8 @@ io.on("connection", socket => {
socket.broadcast.to(roomID).emit("new-user", socket.id); socket.broadcast.to(roomID).emit("new-user", socket.id);
} }
io.in(roomID).emit( io.in(roomID).emit(
"room-user-count", "room-user-change",
io.sockets.adapter.rooms[roomID].length Object.keys(io.sockets.adapter.rooms[roomID].sockets)
); );
}); });
@ -48,9 +48,11 @@ io.on("connection", socket => {
socket.on("disconnecting", () => { socket.on("disconnecting", () => {
const rooms = io.sockets.adapter.rooms; const rooms = io.sockets.adapter.rooms;
for (const roomID in socket.rooms) { for (const roomID in socket.rooms) {
const remaining = rooms[roomID].length - 1; const clients = Object.keys(rooms[roomID].sockets).filter(
if (remaining > 0) { id => id !== socket.id
socket.broadcast.to(roomID).emit("room-user-count", remaining); );
if (clients.length > 0) {
socket.broadcast.to(roomID).emit("room-user-change", clients);
} }
} }
}); });