S
S
Space2014-03-17 15:02:11
JavaScript
Space, 2014-03-17 15:02:11

How to send a message to specific users?

Hello. How to send a message to specific users via socket.io? Can I have a piece of code? The essence is important, how to send opr. users. Maybe you can make it send to where it came from?

Answer the question

In order to leave comments, you need to log in

2 answer(s)
A
Aliansys, 2014-03-17
@ruslite

From the socket.io documentation (sending messages)

// отправить текущему сокету сформировавшему запрос (туда откуда пришла)
socket.emit('message', "this is a test");

// отправить всем пользователям, включая отправителя
io.sockets.emit('message', "this is a test");

// отправить всем, кроме отправителя
socket.broadcast.emit('message', "this is a test");

// отправить всем клиентам в комнате (канале) 'game', кроме отправителя
socket.broadcast.to('game').emit('message', 'nice game');

// отправить всем клиентам в комнате (канале) 'game', включая отправителя
io.sockets.in('game').emit('message', 'cool game');

// отправить конкретному сокету, по socketid
io.sockets.socket(socketid).emit('message', 'for your eyes only');

B
Burgul, 2014-03-17
@Burgul

To send to a specific client use:
Where id is the sid of the socket.io client.
To send data from the server to the sender, use the callback function argument:
Server:

socket.on('message', function (data,callback) {
        socket.broadcast.emit('message', data);
        callback("Send");
    });

Customer:
socket.emit('message',msg,function(data) {
        console.log(data);
});

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question