Regardless of whether or not the user you want to contact is in a room, the easiest way to contact them, provided you have the proper identifying information, is still just a simple socket.emit().
You stated that you already have their socket.id; if so, then getting their socket object is as simple as: io.sockets.sockets[socket.id]
.
To send a message you can then say: io.sockets.sockets[socket.id].emit('identifier', data);
That should answer your question, although these are two additional things you may find helpful:
-To broadcast to the entire room you are focusing on: io.sockets.in('room').emit('event_name', data)
-There is a very rich amount of information regarding both rooms and connected sockets stored within io.sockets. I strongly recommend that you put a console.log(io.sockets);
in the beginning of your code and inspect the object closely to see what else you can access.
Hope this helps!