wss.on("connection", (socket, req) => {
const query = getJsonFromUrl(req.url);
const sid = query["sid"];
- // Ignore duplicate connections (on the same live game that we play):
+ // Ignore duplicate connections (on the same live game that we play):
if (!!clients[sid])
return socket.send(JSON.stringify({code:"duplicate"}));
clients[sid] = socket;
//console.log(obj.code);
switch (obj.code)
{
- case "askclients":
- socket.send(JSON.stringify({code:"clients", sockIds:Object.keys(clients).filter(k => k != sid)}));
+ case "pollclients":
+ socket.send(JSON.stringify({code:"pollclients",
+ sockIds:Object.keys(clients).filter(k => k != sid)}));
break;
case "askidentity":
- clients[obj.target].send(JSON.stringify({code:"identify",from:sid}));
+ clients[obj.target].send(
+ JSON.stringify({code:"askidentity",from:sid}));
+ break;
+ case "askchallenges":
+ clients[obj.target].send(
+ JSON.stringify({code:"askchallenges",from:sid}));
+ break;
+ case "askgame":
+ clients[obj.target].send(
+ JSON.stringify({code:"askgame",from:sid}));
break;
case "identity":
- clients[obj.target].send(JSON.stringify({code:"identity",user:obj.user}));
+ clients[obj.target].send(
+ JSON.stringify({code:"identity",user:obj.user}));
break;
case "askchallenges":
- // TODO: ask directly to people (webRTC)
- // TODO... + clarify socket system
break;
case "newchallenge":
clients[obj.target].send(JSON.stringify({code:"newchallenge",chall:obj.chall}));