Отправка сообщения определенной группе клиентов в socketio - PullRequest
1 голос
/ 30 июля 2011

Как лучше всего отправить сообщение через сокет io группе пользователей, например, только тем, кто находится в определенной комнате чата, а не всем пользователям?

Мне известно о Отправка только данныхдля выбранных пользователей, использующих Socket.io-node , но версия socketio .7 была выпущена недавно, и кажется, что может быть более элегантный способ использования нового API с использованием get / set или namespacing?

1 Ответ

7 голосов
/ 30 июля 2011

Я думаю, вам стоит поискать концепцию комнаты:

Номер

Иногда вы хотите разместить определенные розетки в одной комнате, чтобы их было легко транслировать всем вместе.

Думайте об этом как о встроенных каналах для сокетов. Розетки присоединяются и оставляют комнаты в каждой розетке.

Сторона сервера:

var io = require('socket.io').listen(80);

io.sockets.on('connection', function (socket) {
  socket.join('justin bieber fans');
  socket.broadcast.to('justin bieber fans').emit('new fan');
  io.sockets.in('rammstein fans').emit('new non-fan');
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...