私はNode ExpressアプリケーションでSocket.IOを使用しています。this excellent postで説明されている方法を使用してソケット接続とセッションを関連づけています。 a commentで著者は、このような特定のユーザー(セッション)にメッセージを送信する方法を説明します複数の部屋へのSocket.IOのメッセージ
sio.on('connection', function (socket) {
// do all the session stuff
socket.join(socket.handshake.sessionID);
// socket.io will leave the room upon disconnect
});
app.get('/', function (req, res) {
sio.sockets.in(req.sessionID).send('Man, good to see you back!');
});
は良いアイデアのように思えます。しかし、私のアプリでは、一度に複数のユーザーにメッセージを送信することがよくあります。私はSocket.IOでこれを行う最善の方法について疑問を抱いています - 基本的には最高のパフォーマンスで複数の部屋にメッセージを送信する必要があります。助言がありますか?
これらは私が既に各ユーザーを識別するために行っていることと同等だと思います。つまり、各ユーザーは自分のセッションキーに基づいて独自のsocket.ioチャンネルを取得し、そのチャンネルにブロードキャストしてそのユーザーに送信します(ただ1つのソケットで直接発光するのではなく)。だから私の質問です:これらのユーザーのうちの2人(各部屋で表される)が同じメッセージを受信する必要がある場合、これを行う効率的な方法はありますか? – Joel
最後のビットは 'io.of( '/ chat/channel-name')であってはいけません – Funkodebat