Answer the question
In order to leave comments, you need to log in
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
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');
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");
});
socket.emit('message',msg,function(data) {
console.log(data);
});
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question