diff --git a/src/get-weather.js b/src/get-weather.js index db2552f34a33ca88bd93e7b4317542bb3e84d855..14b98734f6d56a14a305d4b612765afb5b635db1 100755 --- a/src/get-weather.js +++ b/src/get-weather.js @@ -13,7 +13,6 @@ function getWeather(fn) { if(err){ console.log('error:', error); } else { - console.log(`weather: ${body}`); let weather = JSON.parse(body) fn(weather); } diff --git a/src/weather-to-lights.js b/src/weather-to-lights.js index b05574aaf9817df408421688186ae25d3433a290..1675f6f205177844cee337b1ecd165c9efa3e300 100755 --- a/src/weather-to-lights.js +++ b/src/weather-to-lights.js @@ -8,6 +8,7 @@ let getOnLights = require('./get-on-lights'); let sleep = require('./sleep'); let retry = require('./retry'); +const REDO_DURATION = 60000; const RAIN_DURATION = 15000; const MIN_DURATION = 15000; const MAX_DURATION = 15000; @@ -114,6 +115,30 @@ getWeather(weatherInfo => { } + retry(() => client.lights.save(light) ); + } + }); + + sleep(REDO_DURATION).then(() => { + for (let lightData of onLights) { + let light = lightData.light; + + light.alert = "none"; + light.brightness = lightData.brightness; + if(light.colorMode.includes("hs")) { + light.hue = lightData.hue; + light.saturation = lightData.saturation; + } + + if(light.colorMode.includes("xy")) { + light.xy = lightData.xy; + } + + if(light.colorMode.includes("ct")) { + light.colorTemp = lightData.colorTemp; + } + + retry(() => client.lights.save(light) ); } });