Socket.io 通过散列(字符串)连接房间

Socket.io 通过散列(字符串)连接房间,socket.io,socket.io-1.0,Socket.io,Socket.io 1.0,我试图解决以下问题:人们可以连接到一个房间,每5秒钟从这个房间中随机选择两个人开始游戏(如果房间中至少有两个人)。游戏是一个新房间 因此,我加入了人们的等候室与io['client']。加入('waitingRoom')并将他的IDio['client']['ID']保存到数据库中(因此基本上我在数据库中保存了一个字符串,如'Dde7Wp41kf0EA3r3AAAA') 我有一个任务,每5秒运行一次,从数据库中随机选择2个ID,问题是我不知道如何在新的'game'房间中添加这2个ID。我只有一个

我试图解决以下问题:人们可以连接到一个房间,每5秒钟从这个房间中随机选择两个人开始游戏(如果房间中至少有两个人)。游戏是一个新房间

因此,我加入了人们的等候室与
io['client']。加入('waitingRoom')
并将他的ID
io['client']['ID']
保存到数据库中(因此基本上我在数据库中保存了一个字符串,如
'Dde7Wp41kf0EA3r3AAAA'


我有一个任务,每5秒运行一次,从数据库中随机选择2个ID,问题是我不知道如何在新的
'game'
房间中添加这2个ID。我只有一个散列(一些字符串),没有套接字对象。我可以这样做吗?

您应该使用io.sockets的连接对象。它存储套接字,您可以通过id检索它们

例如:

io.sockets.connected[socketIoID].emit('message', {data: 'test'});

浏览一下源代码,我看不到按ID获取套接字的好方法。您可能必须在对象中存储ID->socket。