- case "pollgamers":
- socket.send(JSON.stringify({code:"pollgamers",
- sockIds: Object.keys(clients).filter(k =>
- k != sid && clients[k].page.indexOf("/game/") >= 0
- )}));
- break;
- case "pagechange":
- // page change clients[sid].page --> obj.page
- // TODO: some offline rooms don't need to receive disconnect event
- notifyRoom(clients[sid].page, "disconnect");
- if (clients[sid].page.indexOf("/game/") >= 0)
- notifyRoom("/", "gdisconnect");
- clients[sid].page = obj.page;
- // No need to notify connection: it's self-sent in .vue file
- //notifyRoom(obj.page, "connect");
- if (obj.page.indexOf("/game/") >= 0)
- notifyRoom("/", "gconnect");
- break;
- case "askidentity":
- clients[obj.target].sock.send(JSON.stringify(
- {code:"askidentity",from:sid}));
- break;
- case "asklastate":
- clients[obj.target].sock.send(JSON.stringify(
- {code:"asklastate",from:sid}));