我正在尝试解决以下问题:人们可以连接到一个房间,每隔5秒从这个房间随机选择2个人开始游戏(如果房间里至少有2个人)。游戏是一个新的房间。
所以我将人们带到io['client'].join('waitingRoom');
等候室,并将他的身份io['client']['id']
保存到数据库中(所以基本上我在数据库中保存了像'Dde7Wp41kf0EA3r3AAAA'
这样的字符串)。
我有一个每5秒运行一次的任务,从数据库中随机选择2个ID,问题是我不知道如何在新的'game'
房间中添加这2个ID。我只有一个哈希(一些字符串),而不是一个套接字对象。我可以这样做吗?
答案 0 :(得分:1)
您应该使用io.sockets的连接对象。它存储套接字,您可以通过id检索它们。
http://socket.io/docs/server-api/#namespace#connected:object
示例:
io.sockets.connected[socketIoID].emit('message', {data: 'test'});