stdin.addListener("data", function(d) { // note: d is an object, and when converted to a string it will // end with a linefeed. so we (rather crudely) account for that // with toString() and then substring() var str = d.toString().substring(0, d.length-1) mhal.addMass(str); mhal.save(); console.log("Parsed line"); });
client.addListener('message', function (from, to, message, messageObj) { var messageArr = message.split(" "); var commandStr = messageArr[0].substring(1); if ( message.charAt(0) == '+' ) { if ( commandStr == "reassemble" && checkForPermission(from,messageObj.host,'z') ){ console.log(from + ' reassembled me!'); loadModules(); return; } var commandObj = getCommand(commandStr); if ( commandObj ){ try { var dest; if ( !checkForPermission(from,messageObj.host,commandObj.permission) ){ client.notice(from,"Access denied. Flag "+commandObj.permission+" is required."); return; } if ( commandObj.minParams && messageArr.length < commandObj.minParams+1 ){ getCommand("help").func(from,to,from,['+help',commandStr],messageObj); return; } console.log(from+" issued the command: "+messageArr); if ( commandObj.dest ){ switch (commandObj.dest){ case "source": dest = from; break; case "channel": { if ( to.charAt(0)=='#' ){ dest = to; break; } else { client.notice(from,"Can't use this command outside a channel."); return; } } case "any": default: dest = to.charAt(0)=='#'?to:from; break; } } else { dest = to.charAt(0)=='#'?to:from; } commandObj.func(from,to,dest,messageArr,messageObj); //if ( message.length < 2 ) { _helpCmd(from, to, ["+help","names"]); return; } }catch(ex){ console.log(ex); } } } else if ( message.indexOf(argv.nick) > -1 ) { var dest = to.charAt(0)=='#'?to:from; client.say(dest,mhal.getReplyFromSentence(message)); } else if ( message.charAt(0) == '!') { } else { mhal.addMass(message); mhal.save(); } });