Skip to content

Instantly share code, notes, and snippets.

@benolee
Created August 19, 2011 04:15
Show Gist options
  • Save benolee/1156025 to your computer and use it in GitHub Desktop.
Save benolee/1156025 to your computer and use it in GitHub Desktop.
writes chat logs to a file
var fs = require('fs');
var redis = require('redis');
var client = redis.createClient();
client.psubscribe('juggernaut');
client.on('pmessage', function(pattern, channel, msg){
var message = JSON.parse(msg);
var data = message.data;
switch(data.action) {
case 'join':
fs.open('chat.log', 'a', 0666, function(err, fd){
fs.write(fd, Date() + ' - ' + data.username + " joined\n", null, undefined, function (err, written) {});
});
break;
case 'part':
fs.open('chat.log', 'a', 0666, function(err, fd){
fs.write(fd, Date() + ' - ' + data.username + " parted\n", null, undefined, function (err, written) {});
});
break;
case 'send_message':
fs.open('chat.log', 'a', 0666, function(err, fd){
fs.write(fd, Date() + ' - ' + data.username + ': ' + data.message + "\n", null, undefined, function (err, written) {});
});
break;
}
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment