node.js escuta UDP e encaminha para clientes da web http conectados

Sou novo em node.js, então perdoe a ignorância se isso for simples.

O que eu quero fazer é configurar um servidor http node.js simples ao qual um cliente da web se conecta. Eu também quero que o servidor node.js atue como um ouvinte UDP em uma porta separada, na qual ele receberá cargas úteis JSON de algum outro aplicativo. Eu quero que o servidor node.js encaminhe essas cargas JSON imediatamente para um ou mais dos clientes web conectados.

Cheguei longe de um pouco de googling inicial:

Crie um servidor http node.js simples que responda com uma página html estática:

//Initialize the HTTP server on port 8080, serve the index.html page
var server = http.createServer(function(req, res) {
    res.writeHead(200, { 
        'Content-type': 'text/html'});
        res.end(fs.readFileSync(__dirname + '/index.html'));
    }).listen(8080, function() {
        console.log('Listening at: 127.0.0.1 8080');
    }
);

Inicialize um servidor UDP em uma porta separada:

//Initialize a UDP server to listen for json payloads on port 3333
var srv = dgram.createSocket("udp4");
srv.on("message", function (msg, rinfo) {
  console.log("server got: " + msg + " from " + rinfo.address + ":" + rinfo.port);
  io.sockets.broadcast.emit('message', 'test');
  //stream.write(msg);
  //socket.broadcast.emit('message',msg);
});

srv.on("listening", function () {
  var address = srv.address();
  console.log("server listening " + address.address + ":" + address.port);
});

srv.bind(5555);

Use o socket.io para estabelecer uma conexão ativa entre o web client e o servidor:

//this listens for socket messages from the client and broadcasts to all other clients
var io = require('socket.io').listen(server);
io.sockets.on('connection', function (socket) {
    socket.on('message', function (msg) {
      console.log('Message Received: ', msg.data.skeletons[0] ? msg.data.skeletons[0].skeleton_id : '');
      socket.broadcast.emit('message', msg);
    }
  );
});

Eu acho que o meu problema é que eu não sei como fazer a ponte 2 e 3, para obter os pacotes UDP recebidos transmitidos para os clientes socket.io conectados. Ou talvez haja uma maneira mais simples e elegante de fazer isso? Eu encontrei a documentação para socket.io estar faltando ...

EDIT: graças à pessoa que corrigiu a formatação do código

questionAnswers(1)

yourAnswerToTheQuestion