Skip to content

Commit

Permalink
decouple socket events from sockets.js
Browse files Browse the repository at this point in the history
  • Loading branch information
orendon committed Apr 16, 2012
1 parent b52e4da commit 207b3e5
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 12 deletions.
4 changes: 2 additions & 2 deletions chat/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@
<script>
var socket = io.connect();

socket.on('test', function (data) {
socket.on('get-message', function (data) {
var formattedMessage = data.details + '<br/>' + document.getElementById('divMessage').innerHTML;
document.getElementById('divMessage').innerHTML = formattedMessage;
});

function putMessage() {
var txtNick = document.getElementById('txtNick');
var txtMessage = document.getElementById('txtMessage');
socket.emit('putMessage', { nick: txtNick.value , message: txtMessage.value });
socket.emit('send-message', { nick: txtNick.value , message: txtMessage.value });
txtMessage.value = '';
txtMessage.focus();
}
Expand Down
5 changes: 4 additions & 1 deletion index.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,10 @@ var server = require('./server.js'),
handler = require('./handlers'),
sockets = require('./sockets.js');

var socket = new sockets.SocketServer;
var events = {
chat: './chat/chat-socket.js'
};
var socket = new sockets.SocketServer(events);

var handlers = {};
handlers['/'] = handler.index;
Expand Down
16 changes: 7 additions & 9 deletions sockets.js
Original file line number Diff line number Diff line change
@@ -1,26 +1,24 @@

function SocketServer() {
function SocketServer(events) {
this.socketio = require('socket.io');

var socketio = this.socketio;
var io;

this.listen= function(app) {
io = socketio.listen(app);

//heroku configuration
io.configure(function () {
io.set("transports", ["xhr-polling"]);
io.set("polling duration", 10);
});

//socket handlers
//bind socket events
io.sockets.on('connection', function (socket) {
socket.on('putMessage', function (data) {
console.log("the message was: " + data.message);
socket.emit('test', { details: data.nick + ': ' + data.message } );
socket.broadcast.emit('test', { details: data.nick + ': ' + data.message } );
});
for(event in events) {
require(events[event]).bind(socket);
}
});
}

Expand Down

0 comments on commit 207b3e5

Please sign in to comment.