2015-03-08 34 views
0

我在房间里有4个插座。我如何链接套接字?我想要像这样使用它:如何链接socket.io中的套接字?

socket1 = param1; 
socket2 = param2; 
socket3 = param3; 
socket4 = param4; 

allSockets = ??? 

allSockets.on('', function(...)...) 
+0

您可以播放/发射到所有一个房间的成员。我不知道有什么方法可以将监听程序应用于只监听房间中的这些套接字,而无需将监听程序附加到房间中的每个套接字。 – jfriend00 2015-03-08 18:56:32

+0

如果我在4个参数中得到它,我该如何听所有? – 92mate 2015-03-08 19:06:14

+0

我不明白你的意思是“如果我得到4个参数”。如果您试图实现特定的功能签名,请显示如何声明该功能。 – jfriend00 2015-03-08 19:10:37

回答

0

您可以向房间的所有成员广播/发射。我不知道有什么方法可以将侦听器应用于只侦听房间中的这些套接字,而无需将单独的侦听器附加到房间中的每个套接字。

我能想到的一对夫妇的替代实现的:

如果你有,你想申请的听众,那么你可以通过数组进行迭代,并添加监听套接字的数组:

function addListeners(sockets, msg, fn) { 
    for (var i = 0; i < sockets.length; i++) { 
     sockets[i].on(msg, fn); 
    } 
} 

它可能还可以到监听器添加到所有插座,但只处理了消息,如果插座实际上是在一个特定的rooom:

io.on('connection', function(socket) { 
    socket.on("msg", function(data) { 
     // here check if this socket is actually in the desired room 
     // if so, process the message 
     // if not, ignore the message 
    }); 
}); 
相关问题