v0.9.9
This commit is contained in:
@@ -0,0 +1,83 @@
|
||||
{
|
||||
"id": "bedroom_window_night",
|
||||
"category": "night",
|
||||
"name": {
|
||||
"pl": "Sypialnia: noc + zamknięte okno",
|
||||
"en": "Bedroom: night + closed window"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Łączy tryb nocny z NOT otwartego okna, aby profil sleep działał tylko przy zamkniętym oknie.",
|
||||
"en": "Combines night mode with NOT open-window logic so the sleep profile runs only with a closed window."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000148",
|
||||
"kind": "night_mode",
|
||||
"x": 35,
|
||||
"y": 65,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000149",
|
||||
"kind": "ha_state",
|
||||
"x": 35,
|
||||
"y": 185,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.bedroom_window",
|
||||
"operator": "eq",
|
||||
"value": "on"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000150",
|
||||
"kind": "logic_not",
|
||||
"x": 275,
|
||||
"y": 185,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000151",
|
||||
"kind": "logic_and",
|
||||
"x": 500,
|
||||
"y": 125,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000152",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 745,
|
||||
"y": 125,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "sleep",
|
||||
"setpoint": 20,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 180
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000153",
|
||||
"from": "node-00000000-0000-4000-8000-000000000149",
|
||||
"to": "node-00000000-0000-4000-8000-000000000150"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000154",
|
||||
"from": "node-00000000-0000-4000-8000-000000000148",
|
||||
"to": "node-00000000-0000-4000-8000-000000000151"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000155",
|
||||
"from": "node-00000000-0000-4000-8000-000000000150",
|
||||
"to": "node-00000000-0000-4000-8000-000000000151"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000156",
|
||||
"from": "node-00000000-0000-4000-8000-000000000151",
|
||||
"to": "node-00000000-0000-4000-8000-000000000152"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,92 @@
|
||||
{
|
||||
"id": "device_resilience",
|
||||
"category": "reliability",
|
||||
"name": {
|
||||
"pl": "Sterowanie tylko przy sprawnym urządzeniu",
|
||||
"en": "Only when device is healthy"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Uruchamia termostat tylko gdy urządzenie jest włączone, online i tryb domu pozwala na pracę.",
|
||||
"en": "Runs the thermostat only when the device is enabled, online and house mode allows operation."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000157",
|
||||
"kind": "device_state",
|
||||
"x": 40,
|
||||
"y": 55,
|
||||
"config": {
|
||||
"device_id": "$device1",
|
||||
"field": "online",
|
||||
"operator": "eq",
|
||||
"value": "true"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000158",
|
||||
"kind": "device_state",
|
||||
"x": 40,
|
||||
"y": 175,
|
||||
"config": {
|
||||
"device_id": "$device1",
|
||||
"field": "enabled",
|
||||
"operator": "eq",
|
||||
"value": "true"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000159",
|
||||
"kind": "house_mode",
|
||||
"x": 40,
|
||||
"y": 295,
|
||||
"config": {
|
||||
"operator": "neq",
|
||||
"value": "off"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000160",
|
||||
"kind": "logic_and",
|
||||
"x": 315,
|
||||
"y": 175,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000161",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 570,
|
||||
"y": 175,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "auto",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 90
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000162",
|
||||
"from": "node-00000000-0000-4000-8000-000000000157",
|
||||
"to": "node-00000000-0000-4000-8000-000000000160"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000163",
|
||||
"from": "node-00000000-0000-4000-8000-000000000158",
|
||||
"to": "node-00000000-0000-4000-8000-000000000160"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000164",
|
||||
"from": "node-00000000-0000-4000-8000-000000000159",
|
||||
"to": "node-00000000-0000-4000-8000-000000000160"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000165",
|
||||
"from": "node-00000000-0000-4000-8000-000000000160",
|
||||
"to": "node-00000000-0000-4000-8000-000000000161"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,130 @@
|
||||
{
|
||||
"id": "dual_threshold_control",
|
||||
"category": "advanced",
|
||||
"name": {
|
||||
"pl": "Dwa progi: grzanie i chłodzenie",
|
||||
"en": "Dual threshold heating/cooling"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Dwie niezależne gałęzie sterują grzaniem poniżej dolnego progu i chłodzeniem powyżej górnego.",
|
||||
"en": "Two independent branches heat below the lower threshold and cool above the upper threshold."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000312",
|
||||
"kind": "zone_temperature",
|
||||
"x": 35,
|
||||
"y": 70,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"operator": "lt",
|
||||
"value": 19
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000313",
|
||||
"kind": "zone_temperature",
|
||||
"x": 35,
|
||||
"y": 245,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"operator": "gt",
|
||||
"value": 25
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000314",
|
||||
"kind": "house_mode",
|
||||
"x": 250,
|
||||
"y": 70,
|
||||
"config": {
|
||||
"operator": "eq",
|
||||
"value": "heat"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000315",
|
||||
"kind": "house_mode",
|
||||
"x": 250,
|
||||
"y": 245,
|
||||
"config": {
|
||||
"operator": "eq",
|
||||
"value": "cool"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000316",
|
||||
"kind": "logic_and",
|
||||
"x": 470,
|
||||
"y": 70,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000317",
|
||||
"kind": "logic_and",
|
||||
"x": 470,
|
||||
"y": 245,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000318",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 715,
|
||||
"y": 70,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "comfort",
|
||||
"setpoint": 21,
|
||||
"mode": "heat",
|
||||
"cooldown_seconds": 90
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000319",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 715,
|
||||
"y": 245,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "comfort",
|
||||
"setpoint": 21,
|
||||
"mode": "cool",
|
||||
"cooldown_seconds": 90
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000320",
|
||||
"from": "node-00000000-0000-4000-8000-000000000312",
|
||||
"to": "node-00000000-0000-4000-8000-000000000316"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000321",
|
||||
"from": "node-00000000-0000-4000-8000-000000000314",
|
||||
"to": "node-00000000-0000-4000-8000-000000000316"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000322",
|
||||
"from": "node-00000000-0000-4000-8000-000000000313",
|
||||
"to": "node-00000000-0000-4000-8000-000000000317"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000323",
|
||||
"from": "node-00000000-0000-4000-8000-000000000315",
|
||||
"to": "node-00000000-0000-4000-8000-000000000317"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000324",
|
||||
"from": "node-00000000-0000-4000-8000-000000000316",
|
||||
"to": "node-00000000-0000-4000-8000-000000000318"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000325",
|
||||
"from": "node-00000000-0000-4000-8000-000000000317",
|
||||
"to": "node-00000000-0000-4000-8000-000000000319"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
{
|
||||
"id": "energy_price_eco",
|
||||
"category": "energy",
|
||||
"name": {
|
||||
"pl": "Droga energia + brak domowników",
|
||||
"en": "Expensive energy + nobody home"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Przy wysokiej cenie energii i nieobecności przełącza wybraną strefę w oszczędny profil away.",
|
||||
"en": "When energy is expensive and nobody is home, switches the selected zone to an economical away profile."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000054",
|
||||
"kind": "ha_numeric",
|
||||
"x": 40,
|
||||
"y": 70,
|
||||
"config": {
|
||||
"entity_id": "sensor.energy_price",
|
||||
"operator": "gt",
|
||||
"value": 0.8
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000055",
|
||||
"kind": "ha_state",
|
||||
"x": 40,
|
||||
"y": 190,
|
||||
"config": {
|
||||
"entity_id": "person.someone",
|
||||
"operator": "neq",
|
||||
"value": "home"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000056",
|
||||
"kind": "logic_and",
|
||||
"x": 315,
|
||||
"y": 130,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000057",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 570,
|
||||
"y": 130,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "away",
|
||||
"setpoint": 18,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 300
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000058",
|
||||
"from": "node-00000000-0000-4000-8000-000000000054",
|
||||
"to": "node-00000000-0000-4000-8000-000000000056"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000059",
|
||||
"from": "node-00000000-0000-4000-8000-000000000055",
|
||||
"to": "node-00000000-0000-4000-8000-000000000056"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000060",
|
||||
"from": "node-00000000-0000-4000-8000-000000000056",
|
||||
"to": "node-00000000-0000-4000-8000-000000000057"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,89 @@
|
||||
{
|
||||
"id": "frost_guard",
|
||||
"category": "safety",
|
||||
"name": {
|
||||
"pl": "Ochrona przeciwzamrożeniowa",
|
||||
"en": "Frost protection"
|
||||
},
|
||||
"description": {
|
||||
"pl": "W trybie grzania, przy niskiej temperaturze zewnętrznej i pokojowej, ustawia bezpieczny niski cel termostatu.",
|
||||
"en": "In heating mode, low outdoor and room temperatures select a safe low thermostat target."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000084",
|
||||
"kind": "house_mode",
|
||||
"x": 35,
|
||||
"y": 50,
|
||||
"config": {
|
||||
"operator": "eq",
|
||||
"value": "heat"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000085",
|
||||
"kind": "outdoor_temperature",
|
||||
"x": 35,
|
||||
"y": 170,
|
||||
"config": {
|
||||
"operator": "lt",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000086",
|
||||
"kind": "zone_temperature",
|
||||
"x": 35,
|
||||
"y": 290,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"operator": "lt",
|
||||
"value": 9
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000087",
|
||||
"kind": "logic_and",
|
||||
"x": 315,
|
||||
"y": 170,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000088",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 575,
|
||||
"y": 170,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "custom",
|
||||
"setpoint": 12,
|
||||
"mode": "heat",
|
||||
"cooldown_seconds": 300
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000089",
|
||||
"from": "node-00000000-0000-4000-8000-000000000084",
|
||||
"to": "node-00000000-0000-4000-8000-000000000087"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000090",
|
||||
"from": "node-00000000-0000-4000-8000-000000000085",
|
||||
"to": "node-00000000-0000-4000-8000-000000000087"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000091",
|
||||
"from": "node-00000000-0000-4000-8000-000000000086",
|
||||
"to": "node-00000000-0000-4000-8000-000000000087"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000092",
|
||||
"from": "node-00000000-0000-4000-8000-000000000087",
|
||||
"to": "node-00000000-0000-4000-8000-000000000088"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,91 @@
|
||||
{
|
||||
"id": "ha_attribute_mode_guard",
|
||||
"category": "advanced",
|
||||
"name": {
|
||||
"pl": "Atrybut HA + okno + dostępność",
|
||||
"en": "HA attribute + window + availability"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Czyta atrybut hvac_action, dostępność encji i stan okna, aby zatrzymać HVAC tylko przy wiarygodnych danych.",
|
||||
"en": "Reads hvac_action, entity availability and window state to stop HVAC only when the data is trustworthy."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000337",
|
||||
"kind": "ha_attribute",
|
||||
"x": 35,
|
||||
"y": 60,
|
||||
"config": {
|
||||
"entity_id": "climate.living_room",
|
||||
"attribute": "hvac_action",
|
||||
"operator": "neq",
|
||||
"value": "idle"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000338",
|
||||
"kind": "ha_state",
|
||||
"x": 35,
|
||||
"y": 180,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.window",
|
||||
"operator": "eq",
|
||||
"value": "on"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000339",
|
||||
"kind": "ha_available",
|
||||
"x": 35,
|
||||
"y": 300,
|
||||
"config": {
|
||||
"entity_id": "climate.living_room"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000340",
|
||||
"kind": "logic_and",
|
||||
"x": 315,
|
||||
"y": 180,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000341",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 575,
|
||||
"y": 180,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "auto",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 60,
|
||||
"power": false
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000342",
|
||||
"from": "node-00000000-0000-4000-8000-000000000337",
|
||||
"to": "node-00000000-0000-4000-8000-000000000340"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000343",
|
||||
"from": "node-00000000-0000-4000-8000-000000000338",
|
||||
"to": "node-00000000-0000-4000-8000-000000000340"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000344",
|
||||
"from": "node-00000000-0000-4000-8000-000000000339",
|
||||
"to": "node-00000000-0000-4000-8000-000000000340"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000345",
|
||||
"from": "node-00000000-0000-4000-8000-000000000340",
|
||||
"to": "node-00000000-0000-4000-8000-000000000341"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,105 @@
|
||||
{
|
||||
"id": "ha_boiler_supply_boost",
|
||||
"category": "home_assistant",
|
||||
"name": {
|
||||
"pl": "Gorące zasilanie kotła + zimny pokój → boost",
|
||||
"en": "Hot boiler supply + cold room → boost"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Czyta sensor.boiler_supply_temperature. Przy temperaturze zasilania powyżej 45°C i zimnym pokoju ustawia GREE na 23,5°C.",
|
||||
"en": "Reads sensor.boiler_supply_temperature. Above 45°C with a cold room, GREE is set to 23.5°C."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000256",
|
||||
"kind": "ha_available",
|
||||
"x": 25,
|
||||
"y": 45,
|
||||
"config": {
|
||||
"entity_id": "sensor.boiler_supply_temperature"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000257",
|
||||
"kind": "ha_numeric",
|
||||
"x": 25,
|
||||
"y": 160,
|
||||
"config": {
|
||||
"entity_id": "sensor.boiler_supply_temperature",
|
||||
"operator": "gt",
|
||||
"value": 45
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000258",
|
||||
"kind": "zone_temperature",
|
||||
"x": 25,
|
||||
"y": 275,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"operator": "lt",
|
||||
"value": 20
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000259",
|
||||
"kind": "house_mode",
|
||||
"x": 25,
|
||||
"y": 390,
|
||||
"config": {
|
||||
"operator": "eq",
|
||||
"value": "heat"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000260",
|
||||
"kind": "logic_and",
|
||||
"x": 320,
|
||||
"y": 215,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000261",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 590,
|
||||
"y": 215,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "custom",
|
||||
"setpoint": 23.5,
|
||||
"mode": "heat",
|
||||
"cooldown_seconds": 180,
|
||||
"power": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000262",
|
||||
"from": "node-00000000-0000-4000-8000-000000000256",
|
||||
"to": "node-00000000-0000-4000-8000-000000000260"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000263",
|
||||
"from": "node-00000000-0000-4000-8000-000000000257",
|
||||
"to": "node-00000000-0000-4000-8000-000000000260"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000264",
|
||||
"from": "node-00000000-0000-4000-8000-000000000258",
|
||||
"to": "node-00000000-0000-4000-8000-000000000260"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000265",
|
||||
"from": "node-00000000-0000-4000-8000-000000000259",
|
||||
"to": "node-00000000-0000-4000-8000-000000000260"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000266",
|
||||
"from": "node-00000000-0000-4000-8000-000000000260",
|
||||
"to": "node-00000000-0000-4000-8000-000000000261"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,105 @@
|
||||
{
|
||||
"id": "ha_external_heat_source_assist",
|
||||
"category": "home_assistant",
|
||||
"name": {
|
||||
"pl": "Inne źródło ciepła ON → wspomagaj GREE",
|
||||
"en": "Other heat source ON → assist with GREE"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Gdy zewnętrzne źródło działa, ale pokój nadal ma mniej niż 20°C, GREE wspomaga je w trybie heat z celem 23°C.",
|
||||
"en": "When an external heat source is running but the room is still below 20°C, GREE assists in heat mode with a 23°C target."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000236",
|
||||
"kind": "ha_available",
|
||||
"x": 25,
|
||||
"y": 40,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.external_heat_source"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000237",
|
||||
"kind": "ha_state",
|
||||
"x": 25,
|
||||
"y": 155,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.external_heat_source",
|
||||
"operator": "eq",
|
||||
"value": "on"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000238",
|
||||
"kind": "zone_temperature",
|
||||
"x": 25,
|
||||
"y": 270,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"operator": "lt",
|
||||
"value": 20
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000239",
|
||||
"kind": "house_mode",
|
||||
"x": 25,
|
||||
"y": 385,
|
||||
"config": {
|
||||
"operator": "eq",
|
||||
"value": "heat"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000240",
|
||||
"kind": "logic_and",
|
||||
"x": 320,
|
||||
"y": 210,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000241",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 590,
|
||||
"y": 210,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "custom",
|
||||
"setpoint": 23,
|
||||
"mode": "heat",
|
||||
"cooldown_seconds": 180,
|
||||
"power": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000242",
|
||||
"from": "node-00000000-0000-4000-8000-000000000236",
|
||||
"to": "node-00000000-0000-4000-8000-000000000240"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000243",
|
||||
"from": "node-00000000-0000-4000-8000-000000000237",
|
||||
"to": "node-00000000-0000-4000-8000-000000000240"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000244",
|
||||
"from": "node-00000000-0000-4000-8000-000000000238",
|
||||
"to": "node-00000000-0000-4000-8000-000000000240"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000245",
|
||||
"from": "node-00000000-0000-4000-8000-000000000239",
|
||||
"to": "node-00000000-0000-4000-8000-000000000240"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000246",
|
||||
"from": "node-00000000-0000-4000-8000-000000000240",
|
||||
"to": "node-00000000-0000-4000-8000-000000000241"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
{
|
||||
"id": "ha_external_heat_source_off",
|
||||
"category": "home_assistant",
|
||||
"name": {
|
||||
"pl": "Inne źródło ciepła ON → wyłącz GREE",
|
||||
"en": "Other heat source ON → turn GREE off"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Ogólny preset dla kominka, pieca lub innego źródła. Stan binary_sensor.external_heat_source = on wyłącza grupę albo strefę GREE.",
|
||||
"en": "Generic fireplace, furnace or other source preset. binary_sensor.external_heat_source = on turns the GREE group or zone off."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000229",
|
||||
"kind": "ha_available",
|
||||
"x": 35,
|
||||
"y": 70,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.external_heat_source"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000230",
|
||||
"kind": "ha_state",
|
||||
"x": 35,
|
||||
"y": 200,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.external_heat_source",
|
||||
"operator": "eq",
|
||||
"value": "on"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000231",
|
||||
"kind": "logic_and",
|
||||
"x": 315,
|
||||
"y": 135,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000232",
|
||||
"kind": "group_action",
|
||||
"x": 575,
|
||||
"y": 135,
|
||||
"config": {
|
||||
"group_id": "$group1",
|
||||
"power": false,
|
||||
"mode": "auto",
|
||||
"preset": "auto",
|
||||
"setpoint": 21,
|
||||
"cooldown_seconds": 120
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000233",
|
||||
"from": "node-00000000-0000-4000-8000-000000000229",
|
||||
"to": "node-00000000-0000-4000-8000-000000000231"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000234",
|
||||
"from": "node-00000000-0000-4000-8000-000000000230",
|
||||
"to": "node-00000000-0000-4000-8000-000000000231"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000235",
|
||||
"from": "node-00000000-0000-4000-8000-000000000231",
|
||||
"to": "node-00000000-0000-4000-8000-000000000232"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,106 @@
|
||||
{
|
||||
"id": "ha_gas_backup_heat",
|
||||
"category": "home_assistant",
|
||||
"name": {
|
||||
"pl": "Gaz nie grzeje + zimno → GREE jako backup",
|
||||
"en": "Gas not heating + room cold → GREE backup"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Gdy encja kotła jest dostępna, ale nie zgłasza heating, a w pokoju jest poniżej 19°C, GREE przejmuje awaryjne grzanie do 22°C.",
|
||||
"en": "When the boiler entity is available but does not report heating and the room drops below 19°C, GREE provides backup heat to 22°C."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000218",
|
||||
"kind": "ha_available",
|
||||
"x": 25,
|
||||
"y": 40,
|
||||
"config": {
|
||||
"entity_id": "climate.gas_boiler"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000219",
|
||||
"kind": "ha_attribute",
|
||||
"x": 25,
|
||||
"y": 155,
|
||||
"config": {
|
||||
"entity_id": "climate.gas_boiler",
|
||||
"attribute": "hvac_action",
|
||||
"operator": "neq",
|
||||
"value": "heating"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000220",
|
||||
"kind": "zone_temperature",
|
||||
"x": 25,
|
||||
"y": 270,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"operator": "lt",
|
||||
"value": 19
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000221",
|
||||
"kind": "house_mode",
|
||||
"x": 25,
|
||||
"y": 385,
|
||||
"config": {
|
||||
"operator": "eq",
|
||||
"value": "heat"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000222",
|
||||
"kind": "logic_and",
|
||||
"x": 320,
|
||||
"y": 210,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000223",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 590,
|
||||
"y": 210,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "custom",
|
||||
"setpoint": 22,
|
||||
"mode": "heat",
|
||||
"cooldown_seconds": 180,
|
||||
"power": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000224",
|
||||
"from": "node-00000000-0000-4000-8000-000000000218",
|
||||
"to": "node-00000000-0000-4000-8000-000000000222"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000225",
|
||||
"from": "node-00000000-0000-4000-8000-000000000219",
|
||||
"to": "node-00000000-0000-4000-8000-000000000222"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000226",
|
||||
"from": "node-00000000-0000-4000-8000-000000000220",
|
||||
"to": "node-00000000-0000-4000-8000-000000000222"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000227",
|
||||
"from": "node-00000000-0000-4000-8000-000000000221",
|
||||
"to": "node-00000000-0000-4000-8000-000000000222"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000228",
|
||||
"from": "node-00000000-0000-4000-8000-000000000222",
|
||||
"to": "node-00000000-0000-4000-8000-000000000223"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,106 @@
|
||||
{
|
||||
"id": "ha_gas_heating_boost",
|
||||
"category": "home_assistant",
|
||||
"name": {
|
||||
"pl": "Kocioł gazowy grzeje → dogrzewanie GREE",
|
||||
"en": "Gas boiler heating → GREE heat boost"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Gdy kocioł gazowy aktywnie grzeje, pokój ma mniej niż 20°C i dom jest w trybie heat, GREE wspomaga ogrzewanie celem 23,5°C.",
|
||||
"en": "When the gas boiler is actively heating, the room is below 20°C and house mode is heat, GREE assists with a 23.5°C target."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000198",
|
||||
"kind": "ha_available",
|
||||
"x": 25,
|
||||
"y": 35,
|
||||
"config": {
|
||||
"entity_id": "climate.gas_boiler"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000199",
|
||||
"kind": "ha_attribute",
|
||||
"x": 25,
|
||||
"y": 145,
|
||||
"config": {
|
||||
"entity_id": "climate.gas_boiler",
|
||||
"attribute": "hvac_action",
|
||||
"operator": "eq",
|
||||
"value": "heating"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000200",
|
||||
"kind": "zone_temperature",
|
||||
"x": 25,
|
||||
"y": 255,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"operator": "lt",
|
||||
"value": 20
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000201",
|
||||
"kind": "house_mode",
|
||||
"x": 25,
|
||||
"y": 365,
|
||||
"config": {
|
||||
"operator": "eq",
|
||||
"value": "heat"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000202",
|
||||
"kind": "logic_and",
|
||||
"x": 320,
|
||||
"y": 200,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000203",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 590,
|
||||
"y": 200,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "custom",
|
||||
"setpoint": 23.5,
|
||||
"mode": "heat",
|
||||
"cooldown_seconds": 180,
|
||||
"power": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000204",
|
||||
"from": "node-00000000-0000-4000-8000-000000000198",
|
||||
"to": "node-00000000-0000-4000-8000-000000000202"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000205",
|
||||
"from": "node-00000000-0000-4000-8000-000000000199",
|
||||
"to": "node-00000000-0000-4000-8000-000000000202"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000206",
|
||||
"from": "node-00000000-0000-4000-8000-000000000200",
|
||||
"to": "node-00000000-0000-4000-8000-000000000202"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000207",
|
||||
"from": "node-00000000-0000-4000-8000-000000000201",
|
||||
"to": "node-00000000-0000-4000-8000-000000000202"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000208",
|
||||
"from": "node-00000000-0000-4000-8000-000000000202",
|
||||
"to": "node-00000000-0000-4000-8000-000000000203"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
{
|
||||
"id": "ha_gas_heating_off",
|
||||
"category": "home_assistant",
|
||||
"name": {
|
||||
"pl": "Kocioł gazowy grzeje → wyłącz GREE",
|
||||
"en": "Gas boiler heating → turn GREE off"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Czyta hvac_action z climate.gas_boiler. Gdy HA zgłasza heating i encja jest dostępna, wyłącza wybraną strefę GREE.",
|
||||
"en": "Reads hvac_action from climate.gas_boiler. When HA reports heating and the entity is available, the selected GREE zone is turned off."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000191",
|
||||
"kind": "ha_available",
|
||||
"x": 35,
|
||||
"y": 70,
|
||||
"config": {
|
||||
"entity_id": "climate.gas_boiler"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000192",
|
||||
"kind": "ha_attribute",
|
||||
"x": 35,
|
||||
"y": 200,
|
||||
"config": {
|
||||
"entity_id": "climate.gas_boiler",
|
||||
"attribute": "hvac_action",
|
||||
"operator": "eq",
|
||||
"value": "heating"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000193",
|
||||
"kind": "logic_and",
|
||||
"x": 315,
|
||||
"y": 135,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000194",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 575,
|
||||
"y": 135,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "auto",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 120,
|
||||
"power": false
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000195",
|
||||
"from": "node-00000000-0000-4000-8000-000000000191",
|
||||
"to": "node-00000000-0000-4000-8000-000000000193"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000196",
|
||||
"from": "node-00000000-0000-4000-8000-000000000192",
|
||||
"to": "node-00000000-0000-4000-8000-000000000193"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000197",
|
||||
"from": "node-00000000-0000-4000-8000-000000000193",
|
||||
"to": "node-00000000-0000-4000-8000-000000000194"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,91 @@
|
||||
{
|
||||
"id": "ha_gas_heating_reduce",
|
||||
"category": "home_assistant",
|
||||
"name": {
|
||||
"pl": "Kocioł grzeje + pokój ciepły → obniż GREE",
|
||||
"en": "Boiler heating + room warm → reduce GREE"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Jeśli gaz już grzeje, a strefa osiągnęła co najmniej 21°C, obniża cel GREE do 18°C, aby źródła ciepła nie walczyły ze sobą.",
|
||||
"en": "When gas heat is already active and the zone reaches at least 21°C, lowers the GREE target to 18°C so the heat sources do not fight each other."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000209",
|
||||
"kind": "ha_available",
|
||||
"x": 35,
|
||||
"y": 50,
|
||||
"config": {
|
||||
"entity_id": "climate.gas_boiler"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000210",
|
||||
"kind": "ha_attribute",
|
||||
"x": 35,
|
||||
"y": 165,
|
||||
"config": {
|
||||
"entity_id": "climate.gas_boiler",
|
||||
"attribute": "hvac_action",
|
||||
"operator": "eq",
|
||||
"value": "heating"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000211",
|
||||
"kind": "zone_temperature",
|
||||
"x": 35,
|
||||
"y": 280,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"operator": "gte",
|
||||
"value": 21
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000212",
|
||||
"kind": "logic_and",
|
||||
"x": 315,
|
||||
"y": 165,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000213",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 575,
|
||||
"y": 165,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "custom",
|
||||
"setpoint": 18,
|
||||
"mode": "heat",
|
||||
"cooldown_seconds": 180,
|
||||
"power": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000214",
|
||||
"from": "node-00000000-0000-4000-8000-000000000209",
|
||||
"to": "node-00000000-0000-4000-8000-000000000212"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000215",
|
||||
"from": "node-00000000-0000-4000-8000-000000000210",
|
||||
"to": "node-00000000-0000-4000-8000-000000000212"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000216",
|
||||
"from": "node-00000000-0000-4000-8000-000000000211",
|
||||
"to": "node-00000000-0000-4000-8000-000000000212"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000217",
|
||||
"from": "node-00000000-0000-4000-8000-000000000212",
|
||||
"to": "node-00000000-0000-4000-8000-000000000213"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,89 @@
|
||||
{
|
||||
"id": "ha_heating_demand_follow",
|
||||
"category": "home_assistant",
|
||||
"name": {
|
||||
"pl": "Podążaj za żądaniem grzania z HA",
|
||||
"en": "Follow Home Assistant heating demand"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Stan binary_sensor.heating_demand = on uruchamia ogrzewanie GREE do 22,5°C, jeśli dom jest w trybie heat.",
|
||||
"en": "binary_sensor.heating_demand = on starts GREE heating to 22.5°C while the house is in heat mode."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000247",
|
||||
"kind": "ha_available",
|
||||
"x": 35,
|
||||
"y": 60,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.heating_demand"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000248",
|
||||
"kind": "ha_state",
|
||||
"x": 35,
|
||||
"y": 180,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.heating_demand",
|
||||
"operator": "eq",
|
||||
"value": "on"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000249",
|
||||
"kind": "house_mode",
|
||||
"x": 35,
|
||||
"y": 300,
|
||||
"config": {
|
||||
"operator": "eq",
|
||||
"value": "heat"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000250",
|
||||
"kind": "logic_and",
|
||||
"x": 315,
|
||||
"y": 180,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000251",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 575,
|
||||
"y": 180,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "custom",
|
||||
"setpoint": 22.5,
|
||||
"mode": "heat",
|
||||
"cooldown_seconds": 120,
|
||||
"power": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000252",
|
||||
"from": "node-00000000-0000-4000-8000-000000000247",
|
||||
"to": "node-00000000-0000-4000-8000-000000000250"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000253",
|
||||
"from": "node-00000000-0000-4000-8000-000000000248",
|
||||
"to": "node-00000000-0000-4000-8000-000000000250"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000254",
|
||||
"from": "node-00000000-0000-4000-8000-000000000249",
|
||||
"to": "node-00000000-0000-4000-8000-000000000250"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000255",
|
||||
"from": "node-00000000-0000-4000-8000-000000000250",
|
||||
"to": "node-00000000-0000-4000-8000-000000000251"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,106 @@
|
||||
{
|
||||
"id": "ha_thermostat_idle_fallback",
|
||||
"category": "home_assistant",
|
||||
"name": {
|
||||
"pl": "Termostat gazowy idle → awaryjne grzanie GREE",
|
||||
"en": "Gas thermostat idle → GREE fallback heat"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Jeśli climate.gas_boiler jest dostępny, ma hvac_action=idle i pokój spadnie poniżej 19°C, GREE uruchamia grzanie do 21,5°C.",
|
||||
"en": "If climate.gas_boiler is available, reports hvac_action=idle and the room falls below 19°C, GREE heats to 21.5°C."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000267",
|
||||
"kind": "ha_available",
|
||||
"x": 25,
|
||||
"y": 40,
|
||||
"config": {
|
||||
"entity_id": "climate.gas_boiler"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000268",
|
||||
"kind": "ha_attribute",
|
||||
"x": 25,
|
||||
"y": 155,
|
||||
"config": {
|
||||
"entity_id": "climate.gas_boiler",
|
||||
"attribute": "hvac_action",
|
||||
"operator": "eq",
|
||||
"value": "idle"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000269",
|
||||
"kind": "zone_temperature",
|
||||
"x": 25,
|
||||
"y": 270,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"operator": "lt",
|
||||
"value": 19
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000270",
|
||||
"kind": "house_mode",
|
||||
"x": 25,
|
||||
"y": 385,
|
||||
"config": {
|
||||
"operator": "eq",
|
||||
"value": "heat"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000271",
|
||||
"kind": "logic_and",
|
||||
"x": 320,
|
||||
"y": 210,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000272",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 590,
|
||||
"y": 210,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "custom",
|
||||
"setpoint": 21.5,
|
||||
"mode": "heat",
|
||||
"cooldown_seconds": 240,
|
||||
"power": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000273",
|
||||
"from": "node-00000000-0000-4000-8000-000000000267",
|
||||
"to": "node-00000000-0000-4000-8000-000000000271"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000274",
|
||||
"from": "node-00000000-0000-4000-8000-000000000268",
|
||||
"to": "node-00000000-0000-4000-8000-000000000271"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000275",
|
||||
"from": "node-00000000-0000-4000-8000-000000000269",
|
||||
"to": "node-00000000-0000-4000-8000-000000000271"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000276",
|
||||
"from": "node-00000000-0000-4000-8000-000000000270",
|
||||
"to": "node-00000000-0000-4000-8000-000000000271"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000277",
|
||||
"from": "node-00000000-0000-4000-8000-000000000271",
|
||||
"to": "node-00000000-0000-4000-8000-000000000272"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
{
|
||||
"id": "ha_window_guard",
|
||||
"category": "safety",
|
||||
"name": {
|
||||
"pl": "Otwarte okno — wyłącz HVAC",
|
||||
"en": "Open window — stop HVAC"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Przykład integracji z binary_sensor Home Assistant: otwarte okno wyłącza termostat. Ustaw właściwy entity_id.",
|
||||
"en": "Home Assistant binary_sensor example: an open window turns the thermostat off. Set the correct entity_id."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000093",
|
||||
"kind": "ha_state",
|
||||
"x": 45,
|
||||
"y": 90,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.window",
|
||||
"operator": "eq",
|
||||
"value": "on"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000094",
|
||||
"kind": "house_mode",
|
||||
"x": 45,
|
||||
"y": 220,
|
||||
"config": {
|
||||
"operator": "neq",
|
||||
"value": "off"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000095",
|
||||
"kind": "logic_and",
|
||||
"x": 305,
|
||||
"y": 155,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000096",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 560,
|
||||
"y": 155,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "auto",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 60,
|
||||
"power": false
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000097",
|
||||
"from": "node-00000000-0000-4000-8000-000000000093",
|
||||
"to": "node-00000000-0000-4000-8000-000000000095"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000098",
|
||||
"from": "node-00000000-0000-4000-8000-000000000094",
|
||||
"to": "node-00000000-0000-4000-8000-000000000095"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000099",
|
||||
"from": "node-00000000-0000-4000-8000-000000000095",
|
||||
"to": "node-00000000-0000-4000-8000-000000000096"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,90 @@
|
||||
{
|
||||
"id": "humidity_guard",
|
||||
"category": "safety",
|
||||
"name": {
|
||||
"pl": "Wysoka wilgotność — chłodzenie",
|
||||
"en": "High humidity cooling"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Przy wysokiej wilgotności, obecności domowników i trybie chłodzenia wymusza umiarkowane chłodzenie.",
|
||||
"en": "With high humidity, occupancy and cooling house mode, applies moderate cooling."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000100",
|
||||
"kind": "ha_numeric",
|
||||
"x": 40,
|
||||
"y": 60,
|
||||
"config": {
|
||||
"entity_id": "sensor.living_room_humidity",
|
||||
"operator": "gt",
|
||||
"value": 70
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000101",
|
||||
"kind": "house_mode",
|
||||
"x": 40,
|
||||
"y": 180,
|
||||
"config": {
|
||||
"operator": "eq",
|
||||
"value": "cool"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000102",
|
||||
"kind": "ha_state",
|
||||
"x": 40,
|
||||
"y": 300,
|
||||
"config": {
|
||||
"entity_id": "person.someone",
|
||||
"operator": "eq",
|
||||
"value": "home"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000103",
|
||||
"kind": "logic_and",
|
||||
"x": 315,
|
||||
"y": 180,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000104",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 575,
|
||||
"y": 180,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "custom",
|
||||
"setpoint": 22,
|
||||
"mode": "cool",
|
||||
"cooldown_seconds": 180
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000105",
|
||||
"from": "node-00000000-0000-4000-8000-000000000100",
|
||||
"to": "node-00000000-0000-4000-8000-000000000103"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000106",
|
||||
"from": "node-00000000-0000-4000-8000-000000000101",
|
||||
"to": "node-00000000-0000-4000-8000-000000000103"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000107",
|
||||
"from": "node-00000000-0000-4000-8000-000000000102",
|
||||
"to": "node-00000000-0000-4000-8000-000000000103"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000108",
|
||||
"from": "node-00000000-0000-4000-8000-000000000103",
|
||||
"to": "node-00000000-0000-4000-8000-000000000104"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,90 @@
|
||||
{
|
||||
"id": "mild_weather_eco",
|
||||
"category": "energy",
|
||||
"name": {
|
||||
"pl": "Łagodna pogoda — HVAC off",
|
||||
"en": "Mild weather — HVAC off"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Gdy temperatura zewnętrzna mieści się w komfortowym zakresie i okno jest zamknięte, wyłącza HVAC.",
|
||||
"en": "When outdoor temperature is within a comfortable band and the window is closed, turns HVAC off."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000068",
|
||||
"kind": "outdoor_temperature",
|
||||
"x": 35,
|
||||
"y": 55,
|
||||
"config": {
|
||||
"operator": "gte",
|
||||
"value": 17
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000069",
|
||||
"kind": "outdoor_temperature",
|
||||
"x": 35,
|
||||
"y": 175,
|
||||
"config": {
|
||||
"operator": "lte",
|
||||
"value": 24
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000070",
|
||||
"kind": "ha_state",
|
||||
"x": 35,
|
||||
"y": 295,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.window",
|
||||
"operator": "eq",
|
||||
"value": "off"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000071",
|
||||
"kind": "logic_and",
|
||||
"x": 310,
|
||||
"y": 175,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000072",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 565,
|
||||
"y": 175,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "auto",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 300,
|
||||
"power": false
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000073",
|
||||
"from": "node-00000000-0000-4000-8000-000000000068",
|
||||
"to": "node-00000000-0000-4000-8000-000000000071"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000074",
|
||||
"from": "node-00000000-0000-4000-8000-000000000069",
|
||||
"to": "node-00000000-0000-4000-8000-000000000071"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000075",
|
||||
"from": "node-00000000-0000-4000-8000-000000000070",
|
||||
"to": "node-00000000-0000-4000-8000-000000000071"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000076",
|
||||
"from": "node-00000000-0000-4000-8000-000000000071",
|
||||
"to": "node-00000000-0000-4000-8000-000000000072"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,108 @@
|
||||
{
|
||||
"id": "morning_boost",
|
||||
"category": "comfort",
|
||||
"name": {
|
||||
"pl": "Poranne dogrzanie przy mrozie",
|
||||
"en": "Cold-weather morning boost"
|
||||
},
|
||||
"description": {
|
||||
"pl": "W dni robocze rano, tylko w trybie grzania i przy mrozie na zewnątrz, podnosi cel do 22,5°C.",
|
||||
"en": "On workday mornings, only in heating mode and during cold weather, raises the target to 22.5°C."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000028",
|
||||
"kind": "weekday",
|
||||
"x": 35,
|
||||
"y": 50,
|
||||
"config": {
|
||||
"days": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000029",
|
||||
"kind": "time_range",
|
||||
"x": 35,
|
||||
"y": 170,
|
||||
"config": {
|
||||
"start": "05:30",
|
||||
"end": "07:30"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000030",
|
||||
"kind": "outdoor_temperature",
|
||||
"x": 35,
|
||||
"y": 290,
|
||||
"config": {
|
||||
"operator": "lt",
|
||||
"value": 5
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000031",
|
||||
"kind": "house_mode",
|
||||
"x": 35,
|
||||
"y": 410,
|
||||
"config": {
|
||||
"operator": "eq",
|
||||
"value": "heat"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000032",
|
||||
"kind": "logic_and",
|
||||
"x": 320,
|
||||
"y": 220,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000033",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 585,
|
||||
"y": 220,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "custom",
|
||||
"setpoint": 22.5,
|
||||
"mode": "heat",
|
||||
"cooldown_seconds": 180
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000034",
|
||||
"from": "node-00000000-0000-4000-8000-000000000028",
|
||||
"to": "node-00000000-0000-4000-8000-000000000032"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000035",
|
||||
"from": "node-00000000-0000-4000-8000-000000000029",
|
||||
"to": "node-00000000-0000-4000-8000-000000000032"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000036",
|
||||
"from": "node-00000000-0000-4000-8000-000000000030",
|
||||
"to": "node-00000000-0000-4000-8000-000000000032"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000037",
|
||||
"from": "node-00000000-0000-4000-8000-000000000031",
|
||||
"to": "node-00000000-0000-4000-8000-000000000032"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000038",
|
||||
"from": "node-00000000-0000-4000-8000-000000000032",
|
||||
"to": "node-00000000-0000-4000-8000-000000000033"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,103 @@
|
||||
{
|
||||
"id": "multi_room_group_guard",
|
||||
"category": "advanced",
|
||||
"name": {
|
||||
"pl": "Wiele pokoi → jedna grupa",
|
||||
"en": "Multiple rooms → one group"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Jeśli dowolna z dwóch stref jest za ciepła i dom jest w trybie cool, uruchamia wspólną grupę lub strefę.",
|
||||
"en": "If either of two zones is too warm and house mode is cooling, starts a shared group or zone."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000326",
|
||||
"kind": "zone_temperature",
|
||||
"x": 30,
|
||||
"y": 55,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"operator": "gt",
|
||||
"value": 25
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000327",
|
||||
"kind": "zone_temperature",
|
||||
"x": 30,
|
||||
"y": 175,
|
||||
"config": {
|
||||
"zone_id": "$zone2",
|
||||
"operator": "gt",
|
||||
"value": 25
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000328",
|
||||
"kind": "logic_or",
|
||||
"x": 280,
|
||||
"y": 115,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000329",
|
||||
"kind": "house_mode",
|
||||
"x": 280,
|
||||
"y": 245,
|
||||
"config": {
|
||||
"operator": "eq",
|
||||
"value": "cool"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000330",
|
||||
"kind": "logic_and",
|
||||
"x": 505,
|
||||
"y": 175,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000331",
|
||||
"kind": "group_action",
|
||||
"x": 760,
|
||||
"y": 175,
|
||||
"config": {
|
||||
"group_id": "$group1",
|
||||
"power": true,
|
||||
"mode": "auto",
|
||||
"preset": "comfort",
|
||||
"setpoint": 22,
|
||||
"cooldown_seconds": 120
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000332",
|
||||
"from": "node-00000000-0000-4000-8000-000000000326",
|
||||
"to": "node-00000000-0000-4000-8000-000000000328"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000333",
|
||||
"from": "node-00000000-0000-4000-8000-000000000327",
|
||||
"to": "node-00000000-0000-4000-8000-000000000328"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000334",
|
||||
"from": "node-00000000-0000-4000-8000-000000000328",
|
||||
"to": "node-00000000-0000-4000-8000-000000000330"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000335",
|
||||
"from": "node-00000000-0000-4000-8000-000000000329",
|
||||
"to": "node-00000000-0000-4000-8000-000000000330"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000336",
|
||||
"from": "node-00000000-0000-4000-8000-000000000330",
|
||||
"to": "node-00000000-0000-4000-8000-000000000331"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,163 @@
|
||||
{
|
||||
"id": "nested_guard",
|
||||
"category": "advanced",
|
||||
"name": {
|
||||
"pl": "Złożony warunek z OR i NOT",
|
||||
"en": "Nested OR and NOT guard"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Dni i godziny + temperatura zewnętrzna LUB pokojowa + NOT dla otwartego okna. Przykład wielopoziomowego grafu.",
|
||||
"en": "Weekdays and time + outdoor OR room temperature + NOT open window. An example of a multi-level graph."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000278",
|
||||
"kind": "weekday",
|
||||
"x": 25,
|
||||
"y": 35,
|
||||
"config": {
|
||||
"days": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000279",
|
||||
"kind": "time_range",
|
||||
"x": 25,
|
||||
"y": 145,
|
||||
"config": {
|
||||
"start": "06:00",
|
||||
"end": "22:30"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000280",
|
||||
"kind": "outdoor_temperature",
|
||||
"x": 25,
|
||||
"y": 255,
|
||||
"config": {
|
||||
"operator": "lt",
|
||||
"value": 8
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000281",
|
||||
"kind": "zone_temperature",
|
||||
"x": 25,
|
||||
"y": 365,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"operator": "lt",
|
||||
"value": 20
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000282",
|
||||
"kind": "logic_or",
|
||||
"x": 275,
|
||||
"y": 310,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000283",
|
||||
"kind": "ha_available",
|
||||
"x": 275,
|
||||
"y": 430,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.window"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000284",
|
||||
"kind": "ha_state",
|
||||
"x": 275,
|
||||
"y": 540,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.window",
|
||||
"operator": "eq",
|
||||
"value": "on"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000285",
|
||||
"kind": "logic_not",
|
||||
"x": 495,
|
||||
"y": 540,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000286",
|
||||
"kind": "logic_and",
|
||||
"x": 510,
|
||||
"y": 235,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000287",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 770,
|
||||
"y": 235,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "comfort",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 90
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000288",
|
||||
"from": "node-00000000-0000-4000-8000-000000000280",
|
||||
"to": "node-00000000-0000-4000-8000-000000000282"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000289",
|
||||
"from": "node-00000000-0000-4000-8000-000000000281",
|
||||
"to": "node-00000000-0000-4000-8000-000000000282"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000290",
|
||||
"from": "node-00000000-0000-4000-8000-000000000284",
|
||||
"to": "node-00000000-0000-4000-8000-000000000285"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000291",
|
||||
"from": "node-00000000-0000-4000-8000-000000000278",
|
||||
"to": "node-00000000-0000-4000-8000-000000000286"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000292",
|
||||
"from": "node-00000000-0000-4000-8000-000000000279",
|
||||
"to": "node-00000000-0000-4000-8000-000000000286"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000293",
|
||||
"from": "node-00000000-0000-4000-8000-000000000282",
|
||||
"to": "node-00000000-0000-4000-8000-000000000286"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000294",
|
||||
"from": "node-00000000-0000-4000-8000-000000000283",
|
||||
"to": "node-00000000-0000-4000-8000-000000000286"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000295",
|
||||
"from": "node-00000000-0000-4000-8000-000000000285",
|
||||
"to": "node-00000000-0000-4000-8000-000000000286"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000296",
|
||||
"from": "node-00000000-0000-4000-8000-000000000286",
|
||||
"to": "node-00000000-0000-4000-8000-000000000287"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
{
|
||||
"id": "night_group",
|
||||
"category": "night",
|
||||
"name": {
|
||||
"pl": "Noc dla grupy",
|
||||
"en": "Night group"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Nocny przedział czasu + tryb domu sterują presetem sleep dla grupy lub strefy.",
|
||||
"en": "Night time + house mode applies sleep preset to a group or zone."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000125",
|
||||
"kind": "time_range",
|
||||
"x": 50,
|
||||
"y": 100,
|
||||
"config": {
|
||||
"start": "22:30",
|
||||
"end": "06:00"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000126",
|
||||
"kind": "house_mode",
|
||||
"x": 50,
|
||||
"y": 230,
|
||||
"config": {
|
||||
"operator": "neq",
|
||||
"value": "off"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000127",
|
||||
"kind": "logic_and",
|
||||
"x": 315,
|
||||
"y": 165,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000128",
|
||||
"kind": "group_action",
|
||||
"x": 570,
|
||||
"y": 165,
|
||||
"config": {
|
||||
"group_id": "$group1",
|
||||
"power": true,
|
||||
"mode": "auto",
|
||||
"preset": "sleep",
|
||||
"setpoint": 20,
|
||||
"cooldown_seconds": 120
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000129",
|
||||
"from": "node-00000000-0000-4000-8000-000000000125",
|
||||
"to": "node-00000000-0000-4000-8000-000000000127"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000130",
|
||||
"from": "node-00000000-0000-4000-8000-000000000126",
|
||||
"to": "node-00000000-0000-4000-8000-000000000127"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000131",
|
||||
"from": "node-00000000-0000-4000-8000-000000000127",
|
||||
"to": "node-00000000-0000-4000-8000-000000000128"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
{
|
||||
"id": "night_quiet",
|
||||
"category": "night",
|
||||
"name": {
|
||||
"pl": "Nocny profil grupy",
|
||||
"en": "Night group profile"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Korzysta bezpośrednio z istniejącego Trybu nocnego aplikacji i stanu grupy, aby zastosować preset sleep.",
|
||||
"en": "Uses the app Night mode and group state directly to apply the sleep preset."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000132",
|
||||
"kind": "night_mode",
|
||||
"x": 45,
|
||||
"y": 90,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000133",
|
||||
"kind": "logic_and",
|
||||
"x": 310,
|
||||
"y": 155,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000134",
|
||||
"kind": "group_action",
|
||||
"x": 565,
|
||||
"y": 155,
|
||||
"config": {
|
||||
"group_id": "$group1",
|
||||
"power": null,
|
||||
"mode": "auto",
|
||||
"preset": "sleep",
|
||||
"setpoint": 20,
|
||||
"cooldown_seconds": 180
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000136",
|
||||
"kind": "group_state",
|
||||
"x": 45,
|
||||
"y": 225,
|
||||
"config": {
|
||||
"group_id": "$group1",
|
||||
"field": "power_enabled",
|
||||
"operator": "eq",
|
||||
"value": "true"
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000135",
|
||||
"from": "node-00000000-0000-4000-8000-000000000132",
|
||||
"to": "node-00000000-0000-4000-8000-000000000133"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000137",
|
||||
"from": "node-00000000-0000-4000-8000-000000000136",
|
||||
"to": "node-00000000-0000-4000-8000-000000000133"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000138",
|
||||
"from": "node-00000000-0000-4000-8000-000000000133",
|
||||
"to": "node-00000000-0000-4000-8000-000000000134"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,130 @@
|
||||
{
|
||||
"id": "occupancy_weather_matrix",
|
||||
"category": "advanced",
|
||||
"name": {
|
||||
"pl": "Obecność + pogoda + okno",
|
||||
"en": "Occupancy + weather + window"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Komfort działa tylko gdy ktoś jest w domu, występuje zapotrzebowanie pogodowe lub pokojowe i okno nie jest otwarte.",
|
||||
"en": "Comfort runs only when someone is home, outdoor or room demand exists, and the window is not open."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000297",
|
||||
"kind": "ha_state",
|
||||
"x": 25,
|
||||
"y": 40,
|
||||
"config": {
|
||||
"entity_id": "person.someone",
|
||||
"operator": "eq",
|
||||
"value": "home"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000298",
|
||||
"kind": "outdoor_temperature",
|
||||
"x": 25,
|
||||
"y": 155,
|
||||
"config": {
|
||||
"operator": "lt",
|
||||
"value": 9
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000299",
|
||||
"kind": "zone_temperature",
|
||||
"x": 25,
|
||||
"y": 270,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"operator": "lt",
|
||||
"value": 20
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000300",
|
||||
"kind": "logic_or",
|
||||
"x": 275,
|
||||
"y": 215,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000301",
|
||||
"kind": "ha_state",
|
||||
"x": 275,
|
||||
"y": 345,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.window",
|
||||
"operator": "eq",
|
||||
"value": "on"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000302",
|
||||
"kind": "logic_not",
|
||||
"x": 495,
|
||||
"y": 345,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000303",
|
||||
"kind": "logic_and",
|
||||
"x": 505,
|
||||
"y": 150,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000304",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 765,
|
||||
"y": 150,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "comfort",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 90
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000305",
|
||||
"from": "node-00000000-0000-4000-8000-000000000298",
|
||||
"to": "node-00000000-0000-4000-8000-000000000300"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000306",
|
||||
"from": "node-00000000-0000-4000-8000-000000000299",
|
||||
"to": "node-00000000-0000-4000-8000-000000000300"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000307",
|
||||
"from": "node-00000000-0000-4000-8000-000000000301",
|
||||
"to": "node-00000000-0000-4000-8000-000000000302"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000308",
|
||||
"from": "node-00000000-0000-4000-8000-000000000297",
|
||||
"to": "node-00000000-0000-4000-8000-000000000303"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000309",
|
||||
"from": "node-00000000-0000-4000-8000-000000000300",
|
||||
"to": "node-00000000-0000-4000-8000-000000000303"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000310",
|
||||
"from": "node-00000000-0000-4000-8000-000000000302",
|
||||
"to": "node-00000000-0000-4000-8000-000000000303"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000311",
|
||||
"from": "node-00000000-0000-4000-8000-000000000303",
|
||||
"to": "node-00000000-0000-4000-8000-000000000304"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
{
|
||||
"id": "offline_safe_off",
|
||||
"category": "reliability",
|
||||
"name": {
|
||||
"pl": "Urządzenie offline — bezpieczne wyłączenie",
|
||||
"en": "Offline device safe-off"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Gdy urządzenie jest offline, a termostat nadal aktywny, wydaje bezpieczne polecenie wyłączenia z długim cooldownem.",
|
||||
"en": "When a device is offline while its thermostat remains active, issues a conservative off command with a long cooldown."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000175",
|
||||
"kind": "device_state",
|
||||
"x": 35,
|
||||
"y": 85,
|
||||
"config": {
|
||||
"device_id": "$device1",
|
||||
"field": "online",
|
||||
"operator": "eq",
|
||||
"value": "false"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000176",
|
||||
"kind": "zone_state",
|
||||
"x": 35,
|
||||
"y": 215,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"field": "enabled",
|
||||
"operator": "eq",
|
||||
"value": "true"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000177",
|
||||
"kind": "logic_and",
|
||||
"x": 310,
|
||||
"y": 150,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000178",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 565,
|
||||
"y": 150,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "auto",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 300,
|
||||
"power": false
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000179",
|
||||
"from": "node-00000000-0000-4000-8000-000000000175",
|
||||
"to": "node-00000000-0000-4000-8000-000000000177"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000180",
|
||||
"from": "node-00000000-0000-4000-8000-000000000176",
|
||||
"to": "node-00000000-0000-4000-8000-000000000177"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000181",
|
||||
"from": "node-00000000-0000-4000-8000-000000000177",
|
||||
"to": "node-00000000-0000-4000-8000-000000000178"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,90 @@
|
||||
{
|
||||
"id": "overheat_guard",
|
||||
"category": "safety",
|
||||
"name": {
|
||||
"pl": "Ochrona przed przegrzaniem",
|
||||
"en": "Overheat guard"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Jeśli strefa jest bardzo ciepła, tryb domu to chłodzenie i okno jest zamknięte, uruchamia chłodzenie ochronne.",
|
||||
"en": "If a zone is very warm, house mode is cooling and the window is closed, starts protective cooling."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000109",
|
||||
"kind": "zone_temperature",
|
||||
"x": 35,
|
||||
"y": 65,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"operator": "gt",
|
||||
"value": 28
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000110",
|
||||
"kind": "house_mode",
|
||||
"x": 35,
|
||||
"y": 185,
|
||||
"config": {
|
||||
"operator": "eq",
|
||||
"value": "cool"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000111",
|
||||
"kind": "ha_state",
|
||||
"x": 35,
|
||||
"y": 305,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.window",
|
||||
"operator": "eq",
|
||||
"value": "off"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000112",
|
||||
"kind": "logic_and",
|
||||
"x": 310,
|
||||
"y": 185,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000113",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 570,
|
||||
"y": 185,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "custom",
|
||||
"setpoint": 22,
|
||||
"mode": "cool",
|
||||
"cooldown_seconds": 120
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000114",
|
||||
"from": "node-00000000-0000-4000-8000-000000000109",
|
||||
"to": "node-00000000-0000-4000-8000-000000000112"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000115",
|
||||
"from": "node-00000000-0000-4000-8000-000000000110",
|
||||
"to": "node-00000000-0000-4000-8000-000000000112"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000116",
|
||||
"from": "node-00000000-0000-4000-8000-000000000111",
|
||||
"to": "node-00000000-0000-4000-8000-000000000112"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000117",
|
||||
"from": "node-00000000-0000-4000-8000-000000000112",
|
||||
"to": "node-00000000-0000-4000-8000-000000000113"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
{
|
||||
"id": "peak_power_guard",
|
||||
"category": "energy",
|
||||
"name": {
|
||||
"pl": "Ochrona przed szczytem mocy",
|
||||
"en": "Peak power guard"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Wyłącza HVAC, gdy pobór mocy domu przekroczy ustawiony próg i system klimatu jest aktywny.",
|
||||
"en": "Turns HVAC off when household power draw exceeds the configured threshold while climate control is active."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000061",
|
||||
"kind": "ha_numeric",
|
||||
"x": 40,
|
||||
"y": 75,
|
||||
"config": {
|
||||
"entity_id": "sensor.house_power",
|
||||
"operator": "gt",
|
||||
"value": 5000
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000062",
|
||||
"kind": "house_mode",
|
||||
"x": 40,
|
||||
"y": 200,
|
||||
"config": {
|
||||
"operator": "neq",
|
||||
"value": "off"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000063",
|
||||
"kind": "logic_and",
|
||||
"x": 315,
|
||||
"y": 140,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000064",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 570,
|
||||
"y": 140,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "auto",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 180,
|
||||
"power": false
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000065",
|
||||
"from": "node-00000000-0000-4000-8000-000000000061",
|
||||
"to": "node-00000000-0000-4000-8000-000000000063"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000066",
|
||||
"from": "node-00000000-0000-4000-8000-000000000062",
|
||||
"to": "node-00000000-0000-4000-8000-000000000063"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000067",
|
||||
"from": "node-00000000-0000-4000-8000-000000000063",
|
||||
"to": "node-00000000-0000-4000-8000-000000000064"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"id": "presence_eco",
|
||||
"category": "energy",
|
||||
"name": {
|
||||
"pl": "Obecność: komfort / eco",
|
||||
"en": "Presence: comfort / eco"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Dwie jawne gałęzie Home Assistant: stan home włącza komfort, a not_home ustawia preset away. Ustaw właściwy entity_id osoby lub czujnika obecności.",
|
||||
"en": "Two explicit Home Assistant branches: home enables comfort while not_home selects the away preset. Set the correct person or presence entity_id."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000048",
|
||||
"kind": "ha_state",
|
||||
"x": 45,
|
||||
"y": 75,
|
||||
"config": {
|
||||
"entity_id": "person.someone",
|
||||
"operator": "eq",
|
||||
"value": "home"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000049",
|
||||
"kind": "ha_state",
|
||||
"x": 45,
|
||||
"y": 245,
|
||||
"config": {
|
||||
"entity_id": "person.someone",
|
||||
"operator": "eq",
|
||||
"value": "not_home"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000050",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 360,
|
||||
"y": 65,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "comfort",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 90
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000051",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 360,
|
||||
"y": 245,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "away",
|
||||
"setpoint": 18,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 180
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000052",
|
||||
"from": "node-00000000-0000-4000-8000-000000000048",
|
||||
"to": "node-00000000-0000-4000-8000-000000000050"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000053",
|
||||
"from": "node-00000000-0000-4000-8000-000000000049",
|
||||
"to": "node-00000000-0000-4000-8000-000000000051"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
{
|
||||
"id": "sensor_availability_guard",
|
||||
"category": "reliability",
|
||||
"name": {
|
||||
"pl": "Chłodzenie z kontrolą sensora",
|
||||
"en": "Cooling with sensor validation"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Najpierw sprawdza dostępność sensora HA, potem temperaturę i tryb domu; dopiero wtedy uruchamia chłodzenie.",
|
||||
"en": "Checks HA sensor availability first, then temperature and house mode before starting cooling."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000166",
|
||||
"kind": "ha_available",
|
||||
"x": 35,
|
||||
"y": 55,
|
||||
"config": {
|
||||
"entity_id": "sensor.room_temperature"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000167",
|
||||
"kind": "ha_numeric",
|
||||
"x": 35,
|
||||
"y": 175,
|
||||
"config": {
|
||||
"entity_id": "sensor.room_temperature",
|
||||
"operator": "gt",
|
||||
"value": 26
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000168",
|
||||
"kind": "house_mode",
|
||||
"x": 35,
|
||||
"y": 295,
|
||||
"config": {
|
||||
"operator": "eq",
|
||||
"value": "cool"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000169",
|
||||
"kind": "logic_and",
|
||||
"x": 310,
|
||||
"y": 175,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000170",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 570,
|
||||
"y": 175,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "comfort",
|
||||
"setpoint": 21,
|
||||
"mode": "cool",
|
||||
"cooldown_seconds": 120
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000171",
|
||||
"from": "node-00000000-0000-4000-8000-000000000166",
|
||||
"to": "node-00000000-0000-4000-8000-000000000169"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000172",
|
||||
"from": "node-00000000-0000-4000-8000-000000000167",
|
||||
"to": "node-00000000-0000-4000-8000-000000000169"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000173",
|
||||
"from": "node-00000000-0000-4000-8000-000000000168",
|
||||
"to": "node-00000000-0000-4000-8000-000000000169"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000174",
|
||||
"from": "node-00000000-0000-4000-8000-000000000169",
|
||||
"to": "node-00000000-0000-4000-8000-000000000170"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,86 @@
|
||||
{
|
||||
"id": "sleep_temperature_guard",
|
||||
"category": "night",
|
||||
"name": {
|
||||
"pl": "Nocne chłodzenie tylko gdy trzeba",
|
||||
"en": "Night cooling only when needed"
|
||||
},
|
||||
"description": {
|
||||
"pl": "W trybie nocnym chłodzi tylko wtedy, gdy temperatura pokoju przekracza próg i dom jest w trybie cool.",
|
||||
"en": "In night mode, cools only when room temperature is above the threshold and the house is in cooling mode."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000139",
|
||||
"kind": "night_mode",
|
||||
"x": 35,
|
||||
"y": 55,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000140",
|
||||
"kind": "zone_temperature",
|
||||
"x": 35,
|
||||
"y": 175,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"operator": "gt",
|
||||
"value": 23.5
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000141",
|
||||
"kind": "house_mode",
|
||||
"x": 35,
|
||||
"y": 295,
|
||||
"config": {
|
||||
"operator": "eq",
|
||||
"value": "cool"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000142",
|
||||
"kind": "logic_and",
|
||||
"x": 310,
|
||||
"y": 175,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000143",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 570,
|
||||
"y": 175,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "sleep",
|
||||
"setpoint": 20,
|
||||
"mode": "cool",
|
||||
"cooldown_seconds": 180
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000144",
|
||||
"from": "node-00000000-0000-4000-8000-000000000139",
|
||||
"to": "node-00000000-0000-4000-8000-000000000142"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000145",
|
||||
"from": "node-00000000-0000-4000-8000-000000000140",
|
||||
"to": "node-00000000-0000-4000-8000-000000000142"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000146",
|
||||
"from": "node-00000000-0000-4000-8000-000000000141",
|
||||
"to": "node-00000000-0000-4000-8000-000000000142"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000147",
|
||||
"from": "node-00000000-0000-4000-8000-000000000142",
|
||||
"to": "node-00000000-0000-4000-8000-000000000143"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,116 @@
|
||||
{
|
||||
"id": "smart_demand",
|
||||
"category": "comfort",
|
||||
"name": {
|
||||
"pl": "Inteligentne zapotrzebowanie",
|
||||
"en": "Smart demand"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Złożona logika czasu, trybu domu i alternatywy temperatury zewnętrznej lub pokojowej.",
|
||||
"en": "Complex time, house-mode and outdoor-or-room temperature logic."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000015",
|
||||
"kind": "time_range",
|
||||
"x": 30,
|
||||
"y": 40,
|
||||
"config": {
|
||||
"start": "05:30",
|
||||
"end": "23:00"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000016",
|
||||
"kind": "outdoor_temperature",
|
||||
"x": 30,
|
||||
"y": 160,
|
||||
"config": {
|
||||
"operator": "lt",
|
||||
"value": 10
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000017",
|
||||
"kind": "zone_temperature",
|
||||
"x": 30,
|
||||
"y": 280,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"operator": "lt",
|
||||
"value": 20
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000018",
|
||||
"kind": "logic_or",
|
||||
"x": 280,
|
||||
"y": 220,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000019",
|
||||
"kind": "house_mode",
|
||||
"x": 280,
|
||||
"y": 70,
|
||||
"config": {
|
||||
"operator": "neq",
|
||||
"value": "off"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000020",
|
||||
"kind": "logic_and",
|
||||
"x": 510,
|
||||
"y": 155,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000021",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 760,
|
||||
"y": 155,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "comfort",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 90
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000022",
|
||||
"from": "node-00000000-0000-4000-8000-000000000016",
|
||||
"to": "node-00000000-0000-4000-8000-000000000018"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000023",
|
||||
"from": "node-00000000-0000-4000-8000-000000000017",
|
||||
"to": "node-00000000-0000-4000-8000-000000000018"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000024",
|
||||
"from": "node-00000000-0000-4000-8000-000000000015",
|
||||
"to": "node-00000000-0000-4000-8000-000000000020"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000025",
|
||||
"from": "node-00000000-0000-4000-8000-000000000019",
|
||||
"to": "node-00000000-0000-4000-8000-000000000020"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000026",
|
||||
"from": "node-00000000-0000-4000-8000-000000000018",
|
||||
"to": "node-00000000-0000-4000-8000-000000000020"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000027",
|
||||
"from": "node-00000000-0000-4000-8000-000000000020",
|
||||
"to": "node-00000000-0000-4000-8000-000000000021"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,92 @@
|
||||
{
|
||||
"id": "thermostat_enabled_guard",
|
||||
"category": "reliability",
|
||||
"name": {
|
||||
"pl": "Steruj tylko aktywnym termostatem",
|
||||
"en": "Control only an active thermostat"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Wymaga włączonej strefy, aktywnego zapotrzebowania i niezerowego trybu domu przed akcją.",
|
||||
"en": "Requires an enabled zone, active demand and a non-off house mode before the action executes."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000182",
|
||||
"kind": "zone_state",
|
||||
"x": 35,
|
||||
"y": 55,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"field": "enabled",
|
||||
"operator": "eq",
|
||||
"value": "true"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000183",
|
||||
"kind": "zone_state",
|
||||
"x": 35,
|
||||
"y": 175,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"field": "demand",
|
||||
"operator": "eq",
|
||||
"value": "true"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000184",
|
||||
"kind": "house_mode",
|
||||
"x": 35,
|
||||
"y": 295,
|
||||
"config": {
|
||||
"operator": "neq",
|
||||
"value": "off"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000185",
|
||||
"kind": "logic_and",
|
||||
"x": 310,
|
||||
"y": 175,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000186",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 570,
|
||||
"y": 175,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "auto",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 120
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000187",
|
||||
"from": "node-00000000-0000-4000-8000-000000000182",
|
||||
"to": "node-00000000-0000-4000-8000-000000000185"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000188",
|
||||
"from": "node-00000000-0000-4000-8000-000000000183",
|
||||
"to": "node-00000000-0000-4000-8000-000000000185"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000189",
|
||||
"from": "node-00000000-0000-4000-8000-000000000184",
|
||||
"to": "node-00000000-0000-4000-8000-000000000185"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000190",
|
||||
"from": "node-00000000-0000-4000-8000-000000000185",
|
||||
"to": "node-00000000-0000-4000-8000-000000000186"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
{
|
||||
"id": "unoccupied_shutdown",
|
||||
"category": "energy",
|
||||
"name": {
|
||||
"pl": "Wyłącz podczas nieobecności",
|
||||
"en": "Shut down while away"
|
||||
},
|
||||
"description": {
|
||||
"pl": "W godzinach dziennych wyłącza grupę lub strefę, gdy wskazana osoba jest poza domem.",
|
||||
"en": "During daytime hours, turns off a group or zone when the selected person is away."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000077",
|
||||
"kind": "ha_state",
|
||||
"x": 35,
|
||||
"y": 70,
|
||||
"config": {
|
||||
"entity_id": "person.someone",
|
||||
"operator": "eq",
|
||||
"value": "not_home"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000078",
|
||||
"kind": "time_range",
|
||||
"x": 35,
|
||||
"y": 190,
|
||||
"config": {
|
||||
"start": "09:00",
|
||||
"end": "16:00"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000079",
|
||||
"kind": "logic_and",
|
||||
"x": 310,
|
||||
"y": 130,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000080",
|
||||
"kind": "group_action",
|
||||
"x": 565,
|
||||
"y": 130,
|
||||
"config": {
|
||||
"group_id": "$group1",
|
||||
"power": false,
|
||||
"mode": "",
|
||||
"preset": "",
|
||||
"setpoint": 21,
|
||||
"cooldown_seconds": 300
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000081",
|
||||
"from": "node-00000000-0000-4000-8000-000000000077",
|
||||
"to": "node-00000000-0000-4000-8000-000000000079"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000082",
|
||||
"from": "node-00000000-0000-4000-8000-000000000078",
|
||||
"to": "node-00000000-0000-4000-8000-000000000079"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000083",
|
||||
"from": "node-00000000-0000-4000-8000-000000000079",
|
||||
"to": "node-00000000-0000-4000-8000-000000000080"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
{
|
||||
"id": "weather_comfort",
|
||||
"category": "comfort",
|
||||
"name": {
|
||||
"pl": "Komfort zależny od pogody",
|
||||
"en": "Weather-aware comfort"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Łączy dzień, godzinę i temperaturę zewnętrzną przez AND przed sterowaniem termostatem.",
|
||||
"en": "Combines weekday, time and outdoor temperature with AND before thermostat control."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000006",
|
||||
"kind": "weekday",
|
||||
"x": 35,
|
||||
"y": 40,
|
||||
"config": {
|
||||
"days": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000007",
|
||||
"kind": "time_range",
|
||||
"x": 35,
|
||||
"y": 155,
|
||||
"config": {
|
||||
"start": "06:00",
|
||||
"end": "22:30"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000008",
|
||||
"kind": "outdoor_temperature",
|
||||
"x": 35,
|
||||
"y": 270,
|
||||
"config": {
|
||||
"operator": "lt",
|
||||
"value": 12
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000009",
|
||||
"kind": "logic_and",
|
||||
"x": 300,
|
||||
"y": 155,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000010",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 555,
|
||||
"y": 155,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "comfort",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 90
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000011",
|
||||
"from": "node-00000000-0000-4000-8000-000000000006",
|
||||
"to": "node-00000000-0000-4000-8000-000000000009"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000012",
|
||||
"from": "node-00000000-0000-4000-8000-000000000007",
|
||||
"to": "node-00000000-0000-4000-8000-000000000009"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000013",
|
||||
"from": "node-00000000-0000-4000-8000-000000000008",
|
||||
"to": "node-00000000-0000-4000-8000-000000000009"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000014",
|
||||
"from": "node-00000000-0000-4000-8000-000000000009",
|
||||
"to": "node-00000000-0000-4000-8000-000000000010"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,90 @@
|
||||
{
|
||||
"id": "weekend_comfort",
|
||||
"category": "comfort",
|
||||
"name": {
|
||||
"pl": "Weekendowy komfort",
|
||||
"en": "Weekend comfort"
|
||||
},
|
||||
"description": {
|
||||
"pl": "W sobotę i niedzielę utrzymuje komfort w ciągu dnia, jeśli tryb domu nie jest wyłączony.",
|
||||
"en": "Keeps daytime comfort on Saturday and Sunday while the house climate mode is not off."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000039",
|
||||
"kind": "weekday",
|
||||
"x": 40,
|
||||
"y": 90,
|
||||
"config": {
|
||||
"days": [
|
||||
6,
|
||||
7
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000040",
|
||||
"kind": "time_range",
|
||||
"x": 250,
|
||||
"y": 90,
|
||||
"config": {
|
||||
"start": "08:00",
|
||||
"end": "23:00"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000041",
|
||||
"kind": "house_mode",
|
||||
"x": 40,
|
||||
"y": 220,
|
||||
"config": {
|
||||
"operator": "neq",
|
||||
"value": "off"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000042",
|
||||
"kind": "logic_and",
|
||||
"x": 465,
|
||||
"y": 145,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000043",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 710,
|
||||
"y": 145,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "comfort",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 90
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000044",
|
||||
"from": "node-00000000-0000-4000-8000-000000000039",
|
||||
"to": "node-00000000-0000-4000-8000-000000000042"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000045",
|
||||
"from": "node-00000000-0000-4000-8000-000000000040",
|
||||
"to": "node-00000000-0000-4000-8000-000000000042"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000046",
|
||||
"from": "node-00000000-0000-4000-8000-000000000041",
|
||||
"to": "node-00000000-0000-4000-8000-000000000042"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000047",
|
||||
"from": "node-00000000-0000-4000-8000-000000000042",
|
||||
"to": "node-00000000-0000-4000-8000-000000000043"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
{
|
||||
"id": "window_available_guard",
|
||||
"category": "safety",
|
||||
"name": {
|
||||
"pl": "Okno: dostępność + otwarcie",
|
||||
"en": "Window availability + open state"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Wyłącza HVAC dopiero gdy czujnik okna jest dostępny i zgłasza otwarcie — bez fałszywej reakcji na unavailable.",
|
||||
"en": "Turns HVAC off only when the window sensor is available and reports open, avoiding false reactions to unavailable."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000118",
|
||||
"kind": "ha_available",
|
||||
"x": 35,
|
||||
"y": 80,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.window"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000119",
|
||||
"kind": "ha_state",
|
||||
"x": 35,
|
||||
"y": 210,
|
||||
"config": {
|
||||
"entity_id": "binary_sensor.window",
|
||||
"operator": "eq",
|
||||
"value": "on"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000120",
|
||||
"kind": "logic_and",
|
||||
"x": 310,
|
||||
"y": 145,
|
||||
"config": {}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000121",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 565,
|
||||
"y": 145,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "auto",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 60,
|
||||
"power": false
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000122",
|
||||
"from": "node-00000000-0000-4000-8000-000000000118",
|
||||
"to": "node-00000000-0000-4000-8000-000000000120"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000123",
|
||||
"from": "node-00000000-0000-4000-8000-000000000119",
|
||||
"to": "node-00000000-0000-4000-8000-000000000120"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000124",
|
||||
"from": "node-00000000-0000-4000-8000-000000000120",
|
||||
"to": "node-00000000-0000-4000-8000-000000000121"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
{
|
||||
"id": "workday_comfort",
|
||||
"category": "comfort",
|
||||
"name": {
|
||||
"pl": "Komfort w dni robocze",
|
||||
"en": "Workday comfort"
|
||||
},
|
||||
"description": {
|
||||
"pl": "Pon.–pt. rano uruchamia preset komfortu w wybranej strefie.",
|
||||
"en": "Weekday morning comfort preset for the selected thermostat zone."
|
||||
},
|
||||
"flow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000001",
|
||||
"kind": "weekday",
|
||||
"x": 40,
|
||||
"y": 70,
|
||||
"config": {
|
||||
"days": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000002",
|
||||
"kind": "time_range",
|
||||
"x": 250,
|
||||
"y": 70,
|
||||
"config": {
|
||||
"start": "06:00",
|
||||
"end": "08:30"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "node-00000000-0000-4000-8000-000000000003",
|
||||
"kind": "zone_thermostat",
|
||||
"x": 500,
|
||||
"y": 70,
|
||||
"config": {
|
||||
"zone_id": "$zone1",
|
||||
"preset": "comfort",
|
||||
"setpoint": 21,
|
||||
"mode": "auto",
|
||||
"cooldown_seconds": 90
|
||||
}
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000004",
|
||||
"from": "node-00000000-0000-4000-8000-000000000001",
|
||||
"to": "node-00000000-0000-4000-8000-000000000002"
|
||||
},
|
||||
{
|
||||
"id": "edge-00000000-0000-4000-8000-000000000005",
|
||||
"from": "node-00000000-0000-4000-8000-000000000002",
|
||||
"to": "node-00000000-0000-4000-8000-000000000003"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user