我有一个多语言网站,使用node.js和socket.io作为websocket系统,用于实时广播分数和其他信息。此外,使用会议室,此信息仅发送给正在查看特定内容的用户,例如足球比赛。
所以,我有一个用户加入了匹配-23 和匹配-56 的房间,他正在查看该网站的法语版本。我以为我可能会使用命名空间来告诉socket.io必须以哪种语言发送内容。
var socketio = io.connect("http://server.com:1234/fr");
socketio.emit('join', [23, 56]);
应该向收听特定房间的所有用户发送某些更新;例如,房间中的用户匹配-23 ,而不考虑他所在的命名空间。我试过:
io.sockets.in('match-56').emit('update', data);
但是我在客户端上没有收到任何消息。如果我不使用名称空间,那一切都有效。
那么,是否有可能向所有命名空间中的特定房间发送消息?或者我必须分别对每个命名空间进行操作吗?
谢谢!