我可以将特定的播放器连接到特定的房间,例如:
socket.join('sampleroom');
文档说“您可以使用请假方法离开房间”,例如:
socket.leave('sampleroom');
但是我只希望任何客户端使用io对象而不是套接字退出。我需要类似的东西:
io.sockets(specificSocketID).leave('sampleroom');
有什么方法可以只使用带有io对象的套接字id离开客户端?
最佳答案
您可以将传入的套接字保存到自己的对象中。
var sockets = {};
io.on('connection',function(socket){
sockets[specificSocketID] = socket;
io.on('disconnect',function(){
delete sockets[specificSocketID];
});
});
//then you can easily call a specific socket with its id
sockets[specificSocketID].join('sampleRoom');
sockets[specificSocketID].leave('sampleRoom');