From d0b4cd4f7e6364a35a420f2f3b0fcdbb502d8a9a Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Wed, 5 Aug 2015 00:51:32 -0400 Subject: basic routing --- server/ws.js | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 server/ws.js (limited to 'server/ws.js') diff --git a/server/ws.js b/server/ws.js new file mode 100644 index 0000000..4715d34 --- /dev/null +++ b/server/ws.js @@ -0,0 +1,37 @@ + +var server = require('socket.io') + +var ws = module.exports = {} + +ws.listen = function(app){ + ws.io = server(app) +} +ws.add = function(name){ + var room = {} + room.users = {} + + var ns = base.io.of('/' + name) + + ns.on('connection', function(socket){ + + var username + + socket.on('join', function(data){ + username = data.username + if (room.users[username]) { + // already connected? + room.users[username].disconnect() + room.users[username] = socket + } + }) + + socket.on('message', function(data){ + ns.emit('message', data) + }) + + socket.on('disconnect', function(){ + delete room.users[username] + }) + + }) +} -- cgit v1.2.3-70-g09d2