So my socket join calls are doing nothing.
Socket io rooms not working.
In server code socket rooms is not an array that is a object.
Each socket in socket io is identified by a random unguessable unique identifier socket id for your convenience each socket automatically joins a room identified by its own id.
One thing to keep in mind while using rooms is that they can only.
I will get rooms with socket adapter rooms it s different to api doc.
What socket io is not.
I have also tried reconfiguring my server to match the suggestions made by raghavgarg1257 and it still did not work either.
Rooms also share the same socket connection like namespaces.
But first let s detail what the socket io library is not.
Within each namespace you can also define arbitrary channels that sockets can join and leave.
Once again let me know if there s anything else you d like me to test or try and reproduce the issue.
In that case every socket in the room excluding the sender will get the event.
These channels are called rooms.
Where you can save socket id or other identifier with rooms.
In disconnect event you can query this object to know the rooms you have to leave.
Rooms are used to further separate concerns.
Socket to socket id emit will not work as it will send to everyone in the room named socket id but the sender.
If you are using some db o nosql you can save it for distributed environments.
Although socket io indeed uses websocket as a transport when possible it adds additional metadata to each packet.
Socket io is not a websocket implementation.
Steps to reproduce if the current behaviour is a bug async socketjoinroom socket.
Additonally if rooms list is temporary you can clean it whit controlled event after disconnecting.
To add to this i have downgraded versions of socket io back to 1 5 0 and still getting the same issue.
Please use the classic socket emit instead.
Report a bug request a feature current behaviour after updating my socket io from 1 x to 2 1 1 my sockets are not joining any rooms anymore.
To leave a channel you call leave in the same fashion as join both methods are asynchronous and accept a callback argument.
Repost from so but i need answers so here.