public static bool AddUserToRoom(IWebSocketConnection socket, string roomName) { if (!Exists(roomName)) { return(false); } var info = socket.GetInfo(); var oldRoom = info.RoomName != null ? Rooms[info.RoomName] : null; var newRoom = Rooms[roomName]; if (newRoom == oldRoom) { return(true); } if (oldRoom != null) { RemoveUserFromRoom(socket, oldRoom.RoomName); } // Change name if a user with this name already exists in the new room. Helper.VerifyFixUsername(newRoom, info); newRoom.AddSocket(socket); return(true); }