LoginSignup
9
9

More than 5 years have passed since last update.

ルーム機能実装のためのsocket.joinの使い方メモ

Last updated at Posted at 2013-12-12

socket.joinで簡単にルーム機能を実装できると聞いたが、なかなか使い方を理解できなかったのでメモ。

socket.ioにはルーム機能があって、これを使えばチャットルームなどを簡単に実装できる。

やり方

socket.join("部屋名"); //部屋名に入室

で入室処理。

io.sockets.to("部屋名").emit('message');  //特定の部屋に向けてイベントを発射

これで特定の部屋だけにイベントを送る。

この二つの組み合わせでルーム機能が作れる。

一応言っておくと、部屋自体をオブジェクト等で作成する必要はない。

まとめると

1 socket.join(部屋名)でクライアントと部屋名を紐づける。
2 io.sockets.to("部屋名").emit('');で特定の部屋だけにイベントを発生させる。

これで同じページにいても、それぞれの部屋が独立する。

自分が実際に実装した時は、expressで

app.get("/room1", function(req, res) {
  roomnumber = "1";
});

として、要求されたアドレスに応じて処理を変えたが、コードが冗長になってしまった。もっと楽ちんな方法があればいいが。

9
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
9