### OpenWeather EVENT POLLER ------------------------ This module requires user-specific parameters: - openweatherKey - tempThreshold - city ### urlService = 'http://api.openweathermap.org/data/2.5/weather' ### Fetches the temperature ### getWeatherData = ( cb ) -> url = urlService + '?APPID=' + params.openweatherKey + '&q=' + params.city needle.request 'get', url, null, null, cb ### Pushes the current weather data into the system ### exports.currentData = () -> getWeatherData ( err, resp, body ) -> if err or resp.statusCode isnt 200 log JSON.stringify body else exports.pushEvent body ### Emits one event per day if the temperature today raises above user defined threshold ### exports.temperatureOverThreshold = () -> getWeatherData ( err, resp, body ) -> if err or resp.statusCode isnt 200 log JSON.stringify body else #If temperature is above threshold if body.main.temp_max - 272.15 > params.tempThreshold exports.pushEvent threshold: params.tempThreshold measured: body.main.temp_max - 272.15