/** * Module Name: Rain * Description: Quietly judges your choice of climate. */ var request = require('request'), _ = require('underscore')._; var rain = function(dbot) { var commands = { '~rain': function(event) { var apikey = dbot.config.rain.apikey; var place = event.input[1]; if (!place) { var place = "Aberystwyth"; } var url = "http://api.wunderground.com/api/" + apikey + "/conditions/q/" + place + ".json"; request(url, function(error, response, body) { if(response.statusCode == "200") { var data = JSON.parse(body); var obs = data["current_observation"]; if (obs) { var precip = obs["precip_1hr_metric"]; var score = 2 * Math.pow(precip,0.5); score = Math.ceil(score); if (score > 10) { score = 11; } } else { var score = "u"; } } else { var score = "e"; } event.reply(dbot.t("rain-"+score,{"place": place})); }); } }; commands['~rain'].regex = [/rain (.+)/, 2]; this.commands = commands; this.on = 'PRIVMSG'; }; exports.fetch = function(dbot) { return new rain(dbot); };