Socket.io-rooms
提供:Dev Guides
Socket.IO-客室
各名前空間内で、ソケットが参加および離脱できる任意のチャネルを定義することもできます。 これらのチャンネルは部屋と呼ばれます。 部屋は懸念をさらに分離するために使用されます。 部屋は、名前空間のような同じソケット接続も共有します。 ルームを使用する際に留意すべきことの1つは、サーバー側でのみ参加できるということです。
入室
ソケットで join メソッドを呼び出して、指定されたチャンネル/ルームにソケットをサブスクライブできます。 たとえば、 'room- <room-number>' という名前の部屋を作成し、いくつかのクライアントに参加してみましょう。 この部屋がいっぱいになるとすぐに、別の部屋を作成し、そこにクライアントを参加させます。
注-現在、デフォルトのネームスペースでこれを行っています。 '/'. 同じ方法でカスタム名前空間にこれを実装することもできます。
ルームに参加するには、参加関数呼び出しの引数としてルーム名を指定する必要があります。
クライアントでこの connectToRoom イベントを処理するだけです。
これで、3つのクライアントを接続すると、最初の2つのクライアントは次のメッセージを取得します-
最後のクライアントは次のメッセージを取得します-
部屋を出る
退室するには、ソケットでjoin関数を呼び出したときと同じようにleave関数を呼び出す必要があります。
例-部屋 'room-1' を離れるには、