From 58a7cfea813a5a96d3f3992a26068ca3f8905fdd Mon Sep 17 00:00:00 2001 From: Tony Stork Date: Sat, 29 Mar 2025 01:29:01 -0400 Subject: [PATCH] Move master bedroom last mode context to object --- flows.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flows.json b/flows.json index 41c16a3..d48df13 100644 --- a/flows.json +++ b/flows.json @@ -21875,7 +21875,7 @@ "z": "72f99805df043603", "g": "e065b1ed4938b477", "name": "Meltdown Center", - "func": "const states = global.get('homeassistant.homeAssistant.states')\nconst toggle = msg.payload\nconst ac = global.get('masterBedroom.aircon.installed', \"diskCon\")\nconst mbrLastMode = flow.get(\"mbrLastMode\", \"diskCon\")\nconst bedTemp = states['input_number.master_bedroom_bedtime_temp'].state\n\nlet setTemp = bedTemp\nlet setEco = 'none'\nlet setHvac = 'cool'\nlet setAcFan = 'High'\nlet setFan = 'turn_off'\n\nlet sendFan = {\n \"payload\": {\n \"action\": `fan.${setFan}`,\n \"target\": {\n \"entity_id\": [\"fan.master_bedroom_fan\"]\n },\n \"data\": {}\n }\n}\n\nlet sendHvac = {\n \"payload\": {\n \"action\": \"climate.set_hvac_mode\",\n \"target\": {\n \"entity_id\": [\"climate.master_bedroom_aircon\"]\n },\n \"data\": {\n \"hvac_mode\": setHvac\n }\n }\n}\n\nlet sendTemp = {\n \"payload\": {\n \"action\": \"climate.set_temperature\",\n \"target\": {\n \"entity_id\": [\"climate.master_bedroom_aircon\"]\n },\n \"data\": {\n \"temperature\": setTemp\n }\n }\n}\n\nlet sendEco = {\n \"payload\": {\n \"action\": \"climate.set_preset_mode\",\n \"target\": {\n \"entity_id\": [\"climate.master_bedroom_aircon\"]\n },\n \"data\": {\n \"preset_mode\": setEco\n }\n }\n}\n\nlet sendAcFan = {\n \"payload\": {\n \"action\": \"climate.set_fan_mode\",\n \"target\": {\n \"entity_id\": [\"climate.master_bedroom_aircon\"]\n },\n \"data\": {\n \"fan_mode\": setAcFan\n }\n }\n}\n\nlet reset = {\n \"topic\": \"Reset\"\n}\n\nif (toggle === 'on') {\n node.status({fill:\"red\",shape:\"dot\",text:\"DANGER MODE ACTIVE\"})\n node.send([null,sendFan,null])\n if (ac === 'on') {\n node.send([[sendHvac,sendTemp,sendEco,sendTemp],null,null])\n }\n} else {\n node.status({fill:\"green\",shape:\"dot\",text:\"Danger Mode Off\"})\n node.send([null,null,reset])\n}", + "func": "const states = global.get('homeassistant.homeAssistant.states')\nconst toggle = msg.payload\nconst ac = global.get('masterBedroom.aircon.installed', \"diskCon\")\nconst lastMode = flow.get(\"masterBedroom.lastMode\", \"diskCon\")\nconst bedTemp = states['input_number.master_bedroom_bedtime_temp'].state\n\nlet setTemp = bedTemp\nlet setEco = 'none'\nlet setHvac = 'cool'\nlet setAcFan = 'High'\nlet setFan = 'turn_off'\n\nlet sendFan = {\n \"payload\": {\n \"action\": `fan.${setFan}`,\n \"target\": {\n \"entity_id\": [\"fan.master_bedroom_fan\"]\n },\n \"data\": {}\n }\n}\n\nlet sendHvac = {\n \"payload\": {\n \"action\": \"climate.set_hvac_mode\",\n \"target\": {\n \"entity_id\": [\"climate.master_bedroom_aircon\"]\n },\n \"data\": {\n \"hvac_mode\": setHvac\n }\n }\n}\n\nlet sendTemp = {\n \"payload\": {\n \"action\": \"climate.set_temperature\",\n \"target\": {\n \"entity_id\": [\"climate.master_bedroom_aircon\"]\n },\n \"data\": {\n \"temperature\": setTemp\n }\n }\n}\n\nlet sendEco = {\n \"payload\": {\n \"action\": \"climate.set_preset_mode\",\n \"target\": {\n \"entity_id\": [\"climate.master_bedroom_aircon\"]\n },\n \"data\": {\n \"preset_mode\": setEco\n }\n }\n}\n\nlet sendAcFan = {\n \"payload\": {\n \"action\": \"climate.set_fan_mode\",\n \"target\": {\n \"entity_id\": [\"climate.master_bedroom_aircon\"]\n },\n \"data\": {\n \"fan_mode\": setAcFan\n }\n }\n}\n\nlet reset = {\n \"topic\": \"Reset\"\n}\n\nif (toggle === 'on') {\n node.status({fill:\"red\",shape:\"dot\",text:\"DANGER MODE ACTIVE\"})\n node.send([null,sendFan,null])\n if (ac === 'on') {\n node.send([[sendHvac,sendTemp,sendEco,sendTemp],null,null])\n }\n} else {\n node.status({fill:\"green\",shape:\"dot\",text:\"Danger Mode Off\"})\n node.send([null,null,reset])\n}", "outputs": 3, "timeout": "", "noerr": 0, @@ -22021,7 +22021,7 @@ "z": "72f99805df043603", "g": "e065b1ed4938b477", "name": "Set Mode", - "func": "const states = global.get(\"homeassistant.homeAssistant.states\")\nconst sleeping = states[\"input_boolean.master_bedroom_sleeping\"].state\nconst earlyNight = states[\"binary_sensor.early_night_mode\"].state\nconst giveMeDarkness = states[\"input_boolean.give_me_darkness\"].state\nconst nightMode = states[\"input_boolean.night_mode\"].state\nconst goodnight = states[\"input_boolean.goodnight\"].state\nconst coolingActive = states['input_boolean.master_bedroom_cooling_on'].state\n\nlet mbrLastMode = []\n\nif (sleeping === 'on' || nightMode === 'on' || goodnight === 'on') {\n mbrLastMode = 'bedtime'\n} else if (earlyNight === 'on' || giveMeDarkness === 'on' || coolingActive === 'on') {\n mbrLastMode = 'night'\n} else {\n mbrLastMode = 'day'\n}\n\nflow.set(\"mbrLastMode\", mbrLastMode, \"diskCon\")\nnode.status({ fill: \"green\", shape: \"dot\", text: `Last Mode Set: ${mbrLastMode}`})", + "func": "const states = global.get(\"homeassistant.homeAssistant.states\")\nconst sleeping = states[\"input_boolean.master_bedroom_sleeping\"].state\nconst earlyNight = states[\"binary_sensor.early_night_mode\"].state\nconst giveMeDarkness = states[\"input_boolean.give_me_darkness\"].state\nconst nightMode = states[\"input_boolean.night_mode\"].state\nconst goodnight = states[\"input_boolean.goodnight\"].state\nconst coolingActive = states['input_boolean.master_bedroom_cooling_on'].state\n\nlet lastMode = []\n\nif (sleeping === 'on' || nightMode === 'on' || goodnight === 'on') {\n lastMode = 'bedtime'\n} else if (earlyNight === 'on' || giveMeDarkness === 'on' || coolingActive === 'on') {\n lastMode = 'night'\n} else {\n lastMode = 'day'\n}\n\nflow.set(\"masterBedroom.lastMode\", lastMode, \"diskCon\")\nnode.status({ fill: \"green\", shape: \"dot\", text: `Last Mode Set: ${lastMode}`})", "outputs": 0, "timeout": "", "noerr": 0, @@ -22190,7 +22190,7 @@ "z": "72f99805df043603", "g": "e065b1ed4938b477", "name": "Reset", - "func": "const mbrLastMode = flow.get('mbrLastMode', \"diskCon\")\nconst linkSource = msg._linkSource\n\nlet setTime = []\nlet setType = []\nlet setTopic = []\n\nif (mbrLastMode === 'day') {\n setTime = 'day'\n setType = 'manual'\n setTopic = 'manual-day'\n} else if (mbrLastMode === 'night') {\n setTime = 'night'\n setType = 'manual'\n setTopic = 'manual-night'\n} else if (mbrLastMode === 'bedtime') {\n setTime = 'bedtime'\n setType = 'manual'\n setTopic = 'manual-bedtime'\n}\n\nlet reset = {\n \"type\": setType,\n \"time\": setTime,\n \"topic\": setTopic,\n \"_linkSource\": linkSource\n}\n\nnode.send(reset)\nnode.status({ fill: \"green\", shape: \"dot\", text: `Mode reset to ${setTopic}`})", + "func": "const lastMode = flow.get('masterBedroom.lastMode', \"diskCon\")\nconst linkSource = msg._linkSource\n\nlet setTime = []\nlet setType = []\nlet setTopic = []\n\nif (lastMode === 'day') {\n setTime = 'day'\n setType = 'manual'\n setTopic = 'manual-day'\n} else if (lastMode === 'night') {\n setTime = 'night'\n setType = 'manual'\n setTopic = 'manual-night'\n} else if (lastMode === 'bedtime') {\n setTime = 'bedtime'\n setType = 'manual'\n setTopic = 'manual-bedtime'\n}\n\nlet reset = {\n \"type\": setType,\n \"time\": setTime,\n \"topic\": setTopic,\n \"_linkSource\": linkSource\n}\n\nnode.send(reset)\nnode.status({ fill: \"green\", shape: \"dot\", text: `Mode reset to ${setTopic}`})", "outputs": 1, "timeout": "", "noerr": 0,