Je pense que @Curious et @ MustafaDokumacı ont fourni des solutions qui fonctionnent bien. La différence cependant est qu'avec la solution de @ MustafaDokumacı, le message est diffusé dans une salle et pas seulement à un client particulier.
La différence est importante lorsqu'un accusé de réception est demandé.
io.sockets.connected[socketid].emit('message', 'for your eyes only', function(data) {...});
fonctionne comme prévu, tandis que
io.to(socketid).emit('message', 'for your eyes only', function(data) {...});
échoue avec
Error: Callbacks are not supported when broadcasting