Perfecto, muchas gracias era justo lo que necesitaba.
Lo que comentas de hacer el array cada vez que conecto el socket al room, era lo que tenia pensado si no encontraba el metodo que me has facilitado, pero si existe algo nativo me gusta más usarlo.
Dejo como se quedo la esencia de la función por si a alguien le resulta util. El ejemplo esta aplicado para informar de la desconexión.
Código Javascript
:
Ver originalapp.io.route('disconnect', function(req){
var rooms = app.io.sockets.manager.roomClients[req.io.socket.id];
for (var room in rooms) {
if (room.length > 0) { // evita la habitacion global
room = room.substr(1); // quitamos el prefijo /
app.io.room(room).broadcast('msgPrivados', {'text':req.session["name"]+' se desconecto'}); // voy emitiendo el mensaje por cada room
}
}
});