Socket.IOのRoom
参考
接続が来る
code:js
io.on("connection", (socket) => {
// ここで様々な処理
});
ioはSocketIOサーバーのインスタンス
socketはある1つのclientとのコネクション
特定のclientだけに送信
送信
code:js
socket.emit("foo", value);
特定のclient以外の全員に送信
code:js
socket.broadcast.emit("foo", value);
room
roomに入れる
code:js
socket.join("自宅");
サーバー側のconnectioイベントで掴んだsocket instanceでやる
clientでやっても意味なし
roomから退出する
code:js
socket.leave("自宅");
切断時に自動的にleaveしてくれないので
切断イベントでleaveさせる
code:js
socket.on("disconnect", () => {
socket.leave("自宅");
});
roomを使った送信
room全員に送信
code:js
io.to("自宅").emit("よし、みんな聞け", value)
特定のclient以外のroom内全員に送信
code:js
socket.broadcast.to("自宅").emit("foo", value);