2014-07-18 2 views
0

Je travaille avec socket.io 1.0 et peut-être que je me trompe avec ma conception.Socket.io-1.0 obtenir des clients de l'espace de noms

En fait, ouvrir un côté serveur d'espace de noms avec

var nsp = io.of('/myNamespace'); 

Et Les clients se connectent avec

var socket = io.connect('http://localhost/myNamespace'); 

Je peux commencer la communication sans problème. côté serveur je signaux avec attraper

nsp.on('connection', function(socket){ 
    socket.on('disconnect', function(){ 
     //problem here 
    }); 
}); 

Dans la déconnexion je voudrais déconnecter tous les sockets connectés à mon espace de noms, donc j'essayé de faire

for(var myParticipantID in io.sockets.adapter.nsp.connected) 
{ 
    io.sockets.adapter.nsp.connected[myParticipantID].disconnect(); 
} 

mais ça ne fonctionne pas ... Je n'ai pas d'erreur, mais la connexion des clients encore j'ai essayé avec

io.sockets.nsp.clients(); 

mais j'ai erreur depuis socket.io 1.0

Je ne veux pas créer de pièce, mais c'est peut-être mon erreur?

Merci pour votre aide, MagicDenver

Répondre

0

Si cela aiderait quelqu'un, je travaille avec le noeud js donc je créé une valeur:

app.set(idNameSpace,[]); 

et pousser prise lorsque j'ai une nouvelle connexion

0

Vous devez utiliser la fonction io.of (espace de noms) pour obtenir des clients connectés.

for (var id in io.of('/namespace').connected) { 
    var s = io.of('/namespace').connected[id]; 

    s.disconnect(); 
} 

Si vous ne connaissez pas l'espace de noms et que vous êtes dans un communiqué de socket.on, vous pouvez utiliser socket.nsp.connected au lieu de io.of('/namespace').connected

Questions connexes