diff --git a/displayclienthtml/node_modules b/displayclienthtml/node_modules new file mode 120000 index 0000000..c8195c1 --- /dev/null +++ b/displayclienthtml/node_modules @@ -0,0 +1 @@ +websocket_demo/node_modules/ \ No newline at end of file diff --git a/displayclienthtml/visionneuse.html b/displayclienthtml/visionneuse.html new file mode 100644 index 0000000..3185938 --- /dev/null +++ b/displayclienthtml/visionneuse.html @@ -0,0 +1,36 @@ + + + + +Web socket test + + + +
Received from server:
+
+ + diff --git a/displayclienthtml/ws_stdin.js b/displayclienthtml/ws_stdin.js new file mode 100644 index 0000000..b323c66 --- /dev/null +++ b/displayclienthtml/ws_stdin.js @@ -0,0 +1,75 @@ + +var count = 0; +var clients = {}; + +var http = require('http'); +var server = http.createServer(function(request, response) {}); + +server.listen(1234, function() { + console.log((new Date()) + ' Server is listening on port 1234'); +}); + +var WebSocketServer = require('websocket').server; +wsServer = new WebSocketServer({ + httpServer: server +}); + + +wsServer.on('request', function(r) { + + var connection = r.accept('echo-protocol', r.origin); + + // Specific id for this client & increment count + var id = count++; + + // Store the connection method so we can loop through & contact all clients + clients[id] = connection + + console.log((new Date()) + ' Connection accepted [' + id + ']'); + clients[id].sendUTF("Welcome to the server. You are connected. This message has been pushed to you."); + + // Create event listener + connection.on('message', function(message) { + + // The string message that was sent to us + var msgString = message.utf8Data; + + // Loop through all clients + for(var i in clients){ + // Send a message to the client with the message + clients[i].sendUTF(msgString); + } + }); + + // Create event listener for close + connection.on('close', function(reasonCode, description) { + delete clients[id]; + console.log((new Date()) + ' Peer ' + connection.remoteAddress + ' disconnected.'); + }); +}); + +var sendTime = function () { + var now, i = 0; + + // get time now + now = new Date(); + + // send time to all clients + for(i in clients) { + // Send a message to the client with the message + clients[i].sendUTF(now); + } + + // repeat in 5 seconds + setTimeout(sendTime, 5000); +}; + +process.stdin.resume(); +process.stdin.on('data', function(chunk) { + process.stdout.write('data: ' + chunk); + for(i in clients) { + // Send a message to the client with the message + clients[i].sendUTF(chunk); + } +}); +// every 5 seconds send the date/time