Compare commits
2 Commits
Author | SHA1 | Date | |
---|---|---|---|
4029a7992f
|
|||
d4bf2e3f23
|
21
climate/emma-bedroom/set-temp-vars.js
Normal file
21
climate/emma-bedroom/set-temp-vars.js
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
const topic = msg.topic
|
||||||
|
const payload = msg.payload
|
||||||
|
const lastMode = flow.get('emmaBedroom.lastMode', 'diskCon')
|
||||||
|
|
||||||
|
if (topic === 'daytemp') {
|
||||||
|
flow.set('emmaBedroom.dayTemp', payload, 'diskCon')
|
||||||
|
} else if (topic === 'nighttemp') {
|
||||||
|
flow.set("emmaBedroom.nightTemp", payload, "diskCon")
|
||||||
|
} else if (topic === 'bedtemp') {
|
||||||
|
flow.set("emmaBedroom.bedTemp", payload, "diskCon")
|
||||||
|
}
|
||||||
|
|
||||||
|
if (lastMode === 'day') {
|
||||||
|
flow.set('emmaBedroom.airconTargetTemp', flow.get('emmaBedroom.dayTemp', 'diskCon'), 'diskCon')
|
||||||
|
} else if (lastMode === 'night') {
|
||||||
|
flow.set('emmaBedroom.airconTargetTemp', flow.get('emmaBedroom.nightTemp', 'diskCon'), 'diskCon')
|
||||||
|
} else if (lastMode === 'bedtime') {
|
||||||
|
flow.set('emmaBedroom.airconTargetTemp', flow.get('emmaBedroom.bedTemp', 'diskCon'), 'diskCon')
|
||||||
|
}
|
||||||
|
|
||||||
|
node.status({fill:'green',shape:'dot',text:`Set ${topic} to ${payload}`})
|
@ -3,11 +3,13 @@ const lights = states['light.kallen_bedroom_lights'].state
|
|||||||
const duration = states['input_number.kallen_bedroom_lights_off_delay'].state
|
const duration = states['input_number.kallen_bedroom_lights_off_delay'].state
|
||||||
const lux = parseInt(states['sensor.kallen_bedroom_illuminance'].state)
|
const lux = parseInt(states['sensor.kallen_bedroom_illuminance'].state)
|
||||||
const threshold = parseInt(states['input_number.kallen_bedroom_lux_threshold'].state)
|
const threshold = parseInt(states['input_number.kallen_bedroom_lux_threshold'].state)
|
||||||
const sleeping = states['input_boolean.kallen_sleeping'].state
|
const kallenBedroomSleep = states['input_boolean.kallen_sleeping'].state
|
||||||
|
const masterBedroomSleep = states['input_boolean.master_bedroom_sleeping'].state
|
||||||
|
const peopleSleeping = (masterBedroomSleep === 'on' || kallenBedroomSleep === 'on')
|
||||||
const payload = msg.payload
|
const payload = msg.payload
|
||||||
const newDuration = duration * 60
|
const newDuration = duration * 60
|
||||||
|
|
||||||
if (sleeping === 'off') {
|
if (peopleSleeping === false) {
|
||||||
if (payload === 'on') {
|
if (payload === 'on') {
|
||||||
if (lux <= threshold && lights === 'off') {
|
if (lux <= threshold && lights === 'off') {
|
||||||
node.status({fill:'green',shape:'dot',text:'Turning lights on'})
|
node.status({fill:'green',shape:'dot',text:'Turning lights on'})
|
||||||
|
Reference in New Issue
Block a user