2015-04-25 18:37:13 +02:00
|
|
|
# Description:
|
|
|
|
# utilità per il meteo
|
|
|
|
#
|
|
|
|
# Dependencies:
|
2015-04-25 18:58:11 +02:00
|
|
|
# "moment":"2.10.2"
|
2015-04-25 18:37:13 +02:00
|
|
|
#
|
|
|
|
# Configuration:
|
|
|
|
# None
|
|
|
|
#
|
|
|
|
# Commands:
|
2015-04-25 18:59:22 +02:00
|
|
|
# hubot che tempo fa/c'è (a crema)? - guarda il cielo e risponde con informazioni sul meteo di crema
|
2015-04-25 18:37:13 +02:00
|
|
|
#
|
|
|
|
# Author:
|
|
|
|
# Enrico Fasoli (fazo96)
|
|
|
|
|
2015-04-25 18:58:11 +02:00
|
|
|
moment = require 'moment'
|
|
|
|
|
2015-04-25 18:37:13 +02:00
|
|
|
module.exports = (robot) ->
|
2015-04-28 19:52:29 +02:00
|
|
|
robot.respond /(?:che )?(?:tempo|meteo)(?: c'è| fa)?(?: a crema)?(?:\?)?/i, (res) ->
|
2015-04-25 18:58:11 +02:00
|
|
|
url = 'http://api.openweathermap.org/data/2.5/weather?id=3177841&lang=it&units=metric'
|
|
|
|
robot.http(url)
|
|
|
|
.get() (err, r, body) ->
|
2015-04-28 19:52:29 +02:00
|
|
|
if err
|
|
|
|
return res.send 'Errore nel guardare il cielo.\n'+err
|
2015-04-25 18:58:11 +02:00
|
|
|
try
|
|
|
|
body = JSON.parse body
|
|
|
|
catch e
|
2015-04-26 02:25:12 +02:00
|
|
|
return res.send 'Errore nel guardare il cielo.'
|
2015-04-28 19:52:29 +02:00
|
|
|
unless body?.sys? and body?.main? and body?.weather?.push?
|
|
|
|
return res.send 'Errore nel guardare il cielo.\n'+JSON.stringify(body)
|
2015-04-25 18:58:11 +02:00
|
|
|
alba = moment.unix(body.sys.sunrise).format('H:MM')
|
|
|
|
tramonto = moment.unix(body.sys.sunset).format('H:MM')
|
|
|
|
m = body.weather[0].description+' con '+body.main.humidity
|
2015-04-26 02:25:12 +02:00
|
|
|
m += '% di umidità. Temperatura: '+Math.round(body.main.temp)+'°C. '
|
2015-04-25 18:58:11 +02:00
|
|
|
m += "l'alba è alle "+alba+" mentre il tramonto alle "+tramonto
|
|
|
|
res.send 'Meteo per Crema: '+m+'.'
|