Node.JS WebSocket and Socket -
i want mix 2 streams of ordinary socket , websocket. received socket messages should broadcasted on websocket connected users.
i have part of code:
var net = require('net'); var io = require('socket.io').listen(13673, 'localhost'); net.createserver(function (stream) { stream.setencoding('utf8'); stream.on('data', function (data) { // here should ws broadcast console.log(data); }); }).listen(24768); io.sockets.on('connection', function (socket) { socket.on('message', function (text) { var message = { 'type': 'message', 'received': new date(), 'text': text }; socket.broadcast.json.send([message]); socket.json.send([message]); }); });
so, apart works fine, want listen normal socket time , process received messages websocket. put 1 other doesn't work.
try keeping array of connected websocket clients, , when receive tcp socket message, loop through array , broadcast each client:
var net = require('net'); var io = require('socket.io').listen(13673, 'localhost'); var clients = []; net.createserver(function (stream) { stream.setencoding('utf8'); stream.on('data', function (data) { // here should ws broadcast for(var = 0; < clients.length; i++) clients[i].json.send(/*your message*/); console.log(data); }); }).listen(24768); io.sockets.on('connection', function (socket) { clients.push(socket); });
Comments
Post a Comment