Compare commits
14 Commits
node_red_d
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c19759abbd | ||
|
|
d3f1da8d14 | ||
|
|
46f34e18c1 | ||
|
|
de06842daf | ||
|
|
4666a62741 | ||
|
|
68d6fc4cbf | ||
|
|
4f4a70a861 | ||
|
|
ab6877352c | ||
|
|
319f50db76 | ||
|
|
2e4aa55cf3 | ||
|
|
6685394869 | ||
|
|
73c92fbb34 | ||
|
|
bf5fe154ef | ||
|
|
d428b3d4aa |
37
.gitignore
vendored
Normal file
37
.gitignore
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
# Compiled source #
|
||||
###################
|
||||
*.com
|
||||
*.class
|
||||
*.dll
|
||||
*.exe
|
||||
*.o
|
||||
*.so
|
||||
|
||||
# Packages #
|
||||
############
|
||||
# it's better to unpack these files and commit the raw source
|
||||
# git has its own built in compression methods
|
||||
*.7z
|
||||
*.dmg
|
||||
*.gz
|
||||
*.iso
|
||||
*.jar
|
||||
*.rar
|
||||
*.tar
|
||||
*.zip
|
||||
|
||||
# Logs and databases #
|
||||
######################
|
||||
*.log
|
||||
*.sql
|
||||
*.sqlite
|
||||
|
||||
# OS generated files #
|
||||
######################
|
||||
.DS_Store
|
||||
.DS_Store?
|
||||
._*
|
||||
.Spotlight-V100
|
||||
.Trashes
|
||||
ehthumbs.db
|
||||
Thumbs.db
|
||||
@ -15,12 +15,20 @@
|
||||
"5b5ec57984037a5c",
|
||||
"f0c5e4339b494c3a",
|
||||
"43d024d394d94663",
|
||||
"00b3ef7322366374"
|
||||
"00b3ef7322366374",
|
||||
"87806c641c86c3d9",
|
||||
"14c3a212afc4cd78",
|
||||
"7e7074a18d177e16",
|
||||
"38767c1f739f3c8d",
|
||||
"4f22d1a57648e607",
|
||||
"2b525828bc96835e",
|
||||
"c730df6b04bdaf41",
|
||||
"fa8d1668235782d3"
|
||||
],
|
||||
"x": 14,
|
||||
"y": 419,
|
||||
"w": 1152,
|
||||
"h": 142
|
||||
"y": 399,
|
||||
"w": 1412,
|
||||
"h": 282
|
||||
},
|
||||
{
|
||||
"id": "ec44baea08cc2923",
|
||||
@ -74,11 +82,12 @@
|
||||
}
|
||||
],
|
||||
"x": 150,
|
||||
"y": 500,
|
||||
"y": 520,
|
||||
"wires": [
|
||||
[
|
||||
"c51f9311d8d05015",
|
||||
"00b3ef7322366374"
|
||||
"00b3ef7322366374",
|
||||
"38767c1f739f3c8d"
|
||||
],
|
||||
[]
|
||||
]
|
||||
@ -124,7 +133,8 @@
|
||||
"y": 460,
|
||||
"wires": [
|
||||
[
|
||||
"c8a63c6fa6d37a51"
|
||||
"c8a63c6fa6d37a51",
|
||||
"7e7074a18d177e16"
|
||||
],
|
||||
[]
|
||||
]
|
||||
@ -133,6 +143,7 @@
|
||||
"id": "c8a63c6fa6d37a51",
|
||||
"type": "time-range-switch",
|
||||
"z": "a1055886e0cbd337",
|
||||
"d": true,
|
||||
"g": "23b8f90b282ac8a2",
|
||||
"name": "Nur Nachts 20-8",
|
||||
"lat": "51.2115333",
|
||||
@ -141,8 +152,8 @@
|
||||
"endTime": "08:00",
|
||||
"startOffset": 0,
|
||||
"endOffset": 0,
|
||||
"x": 720,
|
||||
"y": 460,
|
||||
"x": 800,
|
||||
"y": 480,
|
||||
"wires": [
|
||||
[
|
||||
"5b5ec57984037a5c"
|
||||
@ -177,8 +188,8 @@
|
||||
"blockInputOverrides": false,
|
||||
"domain": "light",
|
||||
"service": "turn_on",
|
||||
"x": 1010,
|
||||
"y": 460,
|
||||
"x": 1270,
|
||||
"y": 440,
|
||||
"wires": [
|
||||
[]
|
||||
]
|
||||
@ -210,8 +221,8 @@
|
||||
"blockInputOverrides": false,
|
||||
"domain": "light",
|
||||
"service": "turn_off",
|
||||
"x": 1010,
|
||||
"y": 520,
|
||||
"x": 1270,
|
||||
"y": 580,
|
||||
"wires": [
|
||||
[]
|
||||
]
|
||||
@ -222,7 +233,7 @@
|
||||
"z": "a1055886e0cbd337",
|
||||
"g": "23b8f90b282ac8a2",
|
||||
"name": "",
|
||||
"pauseType": "delay",
|
||||
"pauseType": "delayv",
|
||||
"timeout": "3",
|
||||
"timeoutUnits": "minutes",
|
||||
"rate": "1",
|
||||
@ -234,11 +245,11 @@
|
||||
"drop": false,
|
||||
"allowrate": false,
|
||||
"outputs": 1,
|
||||
"x": 720,
|
||||
"y": 520,
|
||||
"x": 1020,
|
||||
"y": 580,
|
||||
"wires": [
|
||||
[
|
||||
"f0c5e4339b494c3a"
|
||||
"fa8d1668235782d3"
|
||||
]
|
||||
]
|
||||
},
|
||||
@ -246,6 +257,7 @@
|
||||
"id": "00b3ef7322366374",
|
||||
"type": "time-range-switch",
|
||||
"z": "a1055886e0cbd337",
|
||||
"d": true,
|
||||
"g": "23b8f90b282ac8a2",
|
||||
"name": "Nur Nachts 20-8",
|
||||
"lat": "51.2115333",
|
||||
@ -254,15 +266,266 @@
|
||||
"endTime": "08:00",
|
||||
"startOffset": 0,
|
||||
"endOffset": 0,
|
||||
"x": 440,
|
||||
"y": 520,
|
||||
"x": 380,
|
||||
"y": 540,
|
||||
"wires": [
|
||||
[
|
||||
"87806c641c86c3d9"
|
||||
],
|
||||
[]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "87806c641c86c3d9",
|
||||
"type": "api-current-state",
|
||||
"z": "a1055886e0cbd337",
|
||||
"g": "23b8f90b282ac8a2",
|
||||
"name": "Get Timer Value",
|
||||
"server": "387b3091.65c5",
|
||||
"version": 3,
|
||||
"outputs": 2,
|
||||
"halt_if": "0",
|
||||
"halt_if_type": "num",
|
||||
"halt_if_compare": "gt",
|
||||
"entity_id": "input_number.diele_nachtlicht_timer",
|
||||
"state_type": "num",
|
||||
"blockInputOverrides": true,
|
||||
"outputProperties": [
|
||||
{
|
||||
"property": "payload",
|
||||
"propertyType": "msg",
|
||||
"value": "",
|
||||
"valueType": "entityState"
|
||||
},
|
||||
{
|
||||
"property": "data",
|
||||
"propertyType": "msg",
|
||||
"value": "",
|
||||
"valueType": "entity"
|
||||
}
|
||||
],
|
||||
"for": "0",
|
||||
"forType": "num",
|
||||
"forUnits": "minutes",
|
||||
"override_topic": false,
|
||||
"state_location": "payload",
|
||||
"override_payload": "msg",
|
||||
"entity_location": "data",
|
||||
"override_data": "msg",
|
||||
"x": 600,
|
||||
"y": 580,
|
||||
"wires": [
|
||||
[
|
||||
"14c3a212afc4cd78"
|
||||
],
|
||||
[]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "14c3a212afc4cd78",
|
||||
"type": "function",
|
||||
"z": "a1055886e0cbd337",
|
||||
"g": "23b8f90b282ac8a2",
|
||||
"name": "Min2Millisekunden",
|
||||
"func": "// Annahme: msg.payload enthält den Wert in Minuten\nlet minuten = msg.payload;\nmsg.delay = minuten * 60 * 1000; // Minuten → Millisekunden\nreturn msg;",
|
||||
"outputs": 1,
|
||||
"timeout": 0,
|
||||
"noerr": 0,
|
||||
"initialize": "",
|
||||
"finalize": "",
|
||||
"libs": [],
|
||||
"x": 810,
|
||||
"y": 580,
|
||||
"wires": [
|
||||
[
|
||||
"43d024d394d94663"
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "7e7074a18d177e16",
|
||||
"type": "api-current-state",
|
||||
"z": "a1055886e0cbd337",
|
||||
"g": "23b8f90b282ac8a2",
|
||||
"name": "Nachtlich Zeitplan",
|
||||
"server": "387b3091.65c5",
|
||||
"version": 3,
|
||||
"outputs": 2,
|
||||
"halt_if": "on",
|
||||
"halt_if_type": "str",
|
||||
"halt_if_compare": "is",
|
||||
"entity_id": "schedule.diele_nachtlicht_zeitplan",
|
||||
"state_type": "str",
|
||||
"blockInputOverrides": true,
|
||||
"outputProperties": [
|
||||
{
|
||||
"property": "payload",
|
||||
"propertyType": "msg",
|
||||
"value": "",
|
||||
"valueType": "entityState"
|
||||
},
|
||||
{
|
||||
"property": "data",
|
||||
"propertyType": "msg",
|
||||
"value": "",
|
||||
"valueType": "entity"
|
||||
}
|
||||
],
|
||||
"for": "0",
|
||||
"forType": "num",
|
||||
"forUnits": "minutes",
|
||||
"override_topic": false,
|
||||
"state_location": "payload",
|
||||
"override_payload": "msg",
|
||||
"entity_location": "data",
|
||||
"override_data": "msg",
|
||||
"x": 790,
|
||||
"y": 440,
|
||||
"wires": [
|
||||
[
|
||||
"2b525828bc96835e"
|
||||
],
|
||||
[]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "38767c1f739f3c8d",
|
||||
"type": "api-current-state",
|
||||
"z": "a1055886e0cbd337",
|
||||
"g": "23b8f90b282ac8a2",
|
||||
"name": "Nachtlich Zeitplan",
|
||||
"server": "387b3091.65c5",
|
||||
"version": 3,
|
||||
"outputs": 2,
|
||||
"halt_if": "on",
|
||||
"halt_if_type": "str",
|
||||
"halt_if_compare": "is",
|
||||
"entity_id": "schedule.diele_nachtlicht_zeitplan",
|
||||
"state_type": "str",
|
||||
"blockInputOverrides": true,
|
||||
"outputProperties": [
|
||||
{
|
||||
"property": "payload",
|
||||
"propertyType": "msg",
|
||||
"value": "",
|
||||
"valueType": "entityState"
|
||||
},
|
||||
{
|
||||
"property": "data",
|
||||
"propertyType": "msg",
|
||||
"value": "",
|
||||
"valueType": "entity"
|
||||
}
|
||||
],
|
||||
"for": "0",
|
||||
"forType": "num",
|
||||
"forUnits": "minutes",
|
||||
"override_topic": false,
|
||||
"state_location": "payload",
|
||||
"override_payload": "msg",
|
||||
"entity_location": "data",
|
||||
"override_data": "msg",
|
||||
"x": 390,
|
||||
"y": 580,
|
||||
"wires": [
|
||||
[
|
||||
"87806c641c86c3d9"
|
||||
],
|
||||
[]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "4f22d1a57648e607",
|
||||
"type": "api-call-service",
|
||||
"z": "a1055886e0cbd337",
|
||||
"g": "23b8f90b282ac8a2",
|
||||
"name": "Küche LED Streifen AN",
|
||||
"server": "387b3091.65c5",
|
||||
"version": 7,
|
||||
"debugenabled": false,
|
||||
"action": "light.turn_on",
|
||||
"floorId": [],
|
||||
"areaId": [],
|
||||
"deviceId": [],
|
||||
"entityId": [
|
||||
"light.arbeitsplatte"
|
||||
],
|
||||
"labelId": [],
|
||||
"data": "{\"brightness\":\"40\"\t,\"profile\":\"relax\"}",
|
||||
"dataType": "jsonata",
|
||||
"mergeContext": "",
|
||||
"mustacheAltTags": false,
|
||||
"outputProperties": [],
|
||||
"queue": "none",
|
||||
"blockInputOverrides": false,
|
||||
"domain": "light",
|
||||
"service": "turn_on",
|
||||
"x": 1250,
|
||||
"y": 500,
|
||||
"wires": [
|
||||
[]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "2b525828bc96835e",
|
||||
"type": "junction",
|
||||
"z": "a1055886e0cbd337",
|
||||
"g": "23b8f90b282ac8a2",
|
||||
"x": 1080,
|
||||
"y": 440,
|
||||
"wires": [
|
||||
[
|
||||
"5b5ec57984037a5c",
|
||||
"4f22d1a57648e607"
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "c730df6b04bdaf41",
|
||||
"type": "api-call-service",
|
||||
"z": "a1055886e0cbd337",
|
||||
"g": "23b8f90b282ac8a2",
|
||||
"name": "Küche LED Streifen AUS",
|
||||
"server": "387b3091.65c5",
|
||||
"version": 7,
|
||||
"debugenabled": false,
|
||||
"action": "light.turn_off",
|
||||
"floorId": [],
|
||||
"areaId": [],
|
||||
"deviceId": [],
|
||||
"entityId": [
|
||||
"light.arbeitsplatte"
|
||||
],
|
||||
"labelId": [],
|
||||
"data": "",
|
||||
"dataType": "jsonata",
|
||||
"mergeContext": "",
|
||||
"mustacheAltTags": false,
|
||||
"outputProperties": [],
|
||||
"queue": "none",
|
||||
"blockInputOverrides": false,
|
||||
"domain": "light",
|
||||
"service": "turn_off",
|
||||
"x": 1250,
|
||||
"y": 640,
|
||||
"wires": [
|
||||
[]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "fa8d1668235782d3",
|
||||
"type": "junction",
|
||||
"z": "a1055886e0cbd337",
|
||||
"g": "23b8f90b282ac8a2",
|
||||
"x": 1100,
|
||||
"y": 580,
|
||||
"wires": [
|
||||
[
|
||||
"f0c5e4339b494c3a",
|
||||
"c730df6b04bdaf41"
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "387b3091.65c5",
|
||||
"type": "server",
|
||||
|
||||
1293
node_red_diele_statusanzeige.json
Normal file
1293
node_red_diele_statusanzeige.json
Normal file
File diff suppressed because it is too large
Load Diff
182
node_red_heimkino_pause_bei_klingel.json
Normal file
182
node_red_heimkino_pause_bei_klingel.json
Normal file
@ -0,0 +1,182 @@
|
||||
[
|
||||
{
|
||||
"id": "ec8c530269d9809c",
|
||||
"type": "group",
|
||||
"z": "74eab2802feb3cf4",
|
||||
"name": "Heimkino Pause bei Klingel",
|
||||
"style": {
|
||||
"fill": "#dbcbe7",
|
||||
"label": true
|
||||
},
|
||||
"nodes": [
|
||||
"bbe2bd314f9ccfdd",
|
||||
"a53fb4f4f48cc404",
|
||||
"3bdb09facf75d941"
|
||||
],
|
||||
"x": 14,
|
||||
"y": 319,
|
||||
"w": 1172,
|
||||
"h": 82
|
||||
},
|
||||
{
|
||||
"id": "bbe2bd314f9ccfdd",
|
||||
"type": "server-state-changed",
|
||||
"z": "74eab2802feb3cf4",
|
||||
"g": "ec8c530269d9809c",
|
||||
"name": "Klingel",
|
||||
"server": "162e4f7136cd343a",
|
||||
"version": 6,
|
||||
"outputs": 2,
|
||||
"exposeAsEntityConfig": "",
|
||||
"entities": {
|
||||
"entity": [
|
||||
"binary_sensor.diele_klingelsensor"
|
||||
],
|
||||
"substring": [],
|
||||
"regex": []
|
||||
},
|
||||
"outputInitially": false,
|
||||
"stateType": "str",
|
||||
"ifState": "on",
|
||||
"ifStateType": "str",
|
||||
"ifStateOperator": "is",
|
||||
"outputOnlyOnStateChange": true,
|
||||
"for": "0",
|
||||
"forType": "num",
|
||||
"forUnits": "minutes",
|
||||
"ignorePrevStateNull": false,
|
||||
"ignorePrevStateUnknown": false,
|
||||
"ignorePrevStateUnavailable": false,
|
||||
"ignoreCurrentStateUnknown": false,
|
||||
"ignoreCurrentStateUnavailable": false,
|
||||
"outputProperties": [
|
||||
{
|
||||
"property": "payload",
|
||||
"propertyType": "msg",
|
||||
"value": "Jemand hat an der Haustüre geschellt",
|
||||
"valueType": "str"
|
||||
},
|
||||
{
|
||||
"property": "topic",
|
||||
"propertyType": "msg",
|
||||
"value": "Klingel",
|
||||
"valueType": "str"
|
||||
},
|
||||
{
|
||||
"property": "sound",
|
||||
"propertyType": "msg",
|
||||
"value": "bike",
|
||||
"valueType": "str"
|
||||
}
|
||||
],
|
||||
"x": 90,
|
||||
"y": 360,
|
||||
"wires": [
|
||||
[
|
||||
"a53fb4f4f48cc404"
|
||||
],
|
||||
[]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "a53fb4f4f48cc404",
|
||||
"type": "api-current-state",
|
||||
"z": "74eab2802feb3cf4",
|
||||
"g": "ec8c530269d9809c",
|
||||
"name": "State Apple TV",
|
||||
"server": "162e4f7136cd343a",
|
||||
"version": 3,
|
||||
"outputs": 2,
|
||||
"halt_if": "playing",
|
||||
"halt_if_type": "str",
|
||||
"halt_if_compare": "is",
|
||||
"entity_id": "media_player.multimedia",
|
||||
"state_type": "str",
|
||||
"blockInputOverrides": true,
|
||||
"outputProperties": [
|
||||
{
|
||||
"property": "payload",
|
||||
"propertyType": "msg",
|
||||
"value": "",
|
||||
"valueType": "entityState"
|
||||
},
|
||||
{
|
||||
"property": "data",
|
||||
"propertyType": "msg",
|
||||
"value": "",
|
||||
"valueType": "entity"
|
||||
}
|
||||
],
|
||||
"for": "0",
|
||||
"forType": "num",
|
||||
"forUnits": "minutes",
|
||||
"override_topic": false,
|
||||
"state_location": "payload",
|
||||
"override_payload": "msg",
|
||||
"entity_location": "data",
|
||||
"override_data": "msg",
|
||||
"x": 420,
|
||||
"y": 360,
|
||||
"wires": [
|
||||
[
|
||||
"3bdb09facf75d941"
|
||||
],
|
||||
[]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "3bdb09facf75d941",
|
||||
"type": "api-call-service",
|
||||
"z": "74eab2802feb3cf4",
|
||||
"g": "ec8c530269d9809c",
|
||||
"name": "Apple TV Pause",
|
||||
"server": "162e4f7136cd343a",
|
||||
"version": 7,
|
||||
"debugenabled": false,
|
||||
"action": "media_player.media_pause",
|
||||
"floorId": [],
|
||||
"areaId": [],
|
||||
"deviceId": [],
|
||||
"entityId": [
|
||||
"media_player.multimedia"
|
||||
],
|
||||
"labelId": [],
|
||||
"data": "",
|
||||
"dataType": "jsonata",
|
||||
"mergeContext": "",
|
||||
"mustacheAltTags": false,
|
||||
"outputProperties": [],
|
||||
"queue": "none",
|
||||
"blockInputOverrides": true,
|
||||
"domain": "media_player",
|
||||
"service": "media_pause",
|
||||
"x": 1080,
|
||||
"y": 360,
|
||||
"wires": [
|
||||
[]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "162e4f7136cd343a",
|
||||
"type": "server",
|
||||
"name": "Home Assistant",
|
||||
"version": 5,
|
||||
"addon": false,
|
||||
"rejectUnauthorizedCerts": true,
|
||||
"ha_boolean": "y|yes|true|on|home|open",
|
||||
"connectionDelay": true,
|
||||
"cacheJson": true,
|
||||
"heartbeat": true,
|
||||
"heartbeatInterval": "10",
|
||||
"areaSelector": "friendlyName",
|
||||
"deviceSelector": "friendlyName",
|
||||
"entitySelector": "friendlyName",
|
||||
"statusSeparator": ": ",
|
||||
"statusYear": "hidden",
|
||||
"statusMonth": "short",
|
||||
"statusDay": "numeric",
|
||||
"statusHourCycle": "default",
|
||||
"statusTimeFormat": "h:m",
|
||||
"enableGlobalContextStore": false
|
||||
}
|
||||
]
|
||||
162
node_red_kueche_baby_breezer_auto_aus.json
Normal file
162
node_red_kueche_baby_breezer_auto_aus.json
Normal file
@ -0,0 +1,162 @@
|
||||
[
|
||||
{
|
||||
"id": "a0b2588596805a6b",
|
||||
"type": "group",
|
||||
"z": "97ac338125ef7574",
|
||||
"name": "Küche Milch Auto Aus",
|
||||
"style": {
|
||||
"fill": "#e3f3d3",
|
||||
"label": true
|
||||
},
|
||||
"nodes": [
|
||||
"9098a3b94fafb8d1",
|
||||
"b1fad812fd4fcba0",
|
||||
"581fb8dd7042b734"
|
||||
],
|
||||
"x": 34,
|
||||
"y": 359,
|
||||
"w": 1132,
|
||||
"h": 82
|
||||
},
|
||||
{
|
||||
"id": "9098a3b94fafb8d1",
|
||||
"type": "server-state-changed",
|
||||
"z": "97ac338125ef7574",
|
||||
"g": "a0b2588596805a6b",
|
||||
"name": "Küche Milch",
|
||||
"server": "162e4f7136cd343a",
|
||||
"version": 6,
|
||||
"outputs": 2,
|
||||
"exposeAsEntityConfig": "",
|
||||
"entities": {
|
||||
"entity": [
|
||||
"switch.kuche_baby_breezer"
|
||||
],
|
||||
"substring": [],
|
||||
"regex": []
|
||||
},
|
||||
"outputInitially": false,
|
||||
"stateType": "str",
|
||||
"ifState": "on",
|
||||
"ifStateType": "str",
|
||||
"ifStateOperator": "is",
|
||||
"outputOnlyOnStateChange": true,
|
||||
"for": "",
|
||||
"forType": "num",
|
||||
"forUnits": "minutes",
|
||||
"ignorePrevStateNull": false,
|
||||
"ignorePrevStateUnknown": false,
|
||||
"ignorePrevStateUnavailable": false,
|
||||
"ignoreCurrentStateUnknown": false,
|
||||
"ignoreCurrentStateUnavailable": false,
|
||||
"outputProperties": [
|
||||
{
|
||||
"property": "payload",
|
||||
"propertyType": "msg",
|
||||
"value": "",
|
||||
"valueType": "entityState"
|
||||
},
|
||||
{
|
||||
"property": "data",
|
||||
"propertyType": "msg",
|
||||
"value": "",
|
||||
"valueType": "eventData"
|
||||
},
|
||||
{
|
||||
"property": "topic",
|
||||
"propertyType": "msg",
|
||||
"value": "",
|
||||
"valueType": "triggerId"
|
||||
}
|
||||
],
|
||||
"x": 130,
|
||||
"y": 400,
|
||||
"wires": [
|
||||
[
|
||||
"581fb8dd7042b734"
|
||||
],
|
||||
[]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "b1fad812fd4fcba0",
|
||||
"type": "api-call-service",
|
||||
"z": "97ac338125ef7574",
|
||||
"g": "a0b2588596805a6b",
|
||||
"name": "Küche Milch Aus",
|
||||
"server": "162e4f7136cd343a",
|
||||
"version": 7,
|
||||
"debugenabled": false,
|
||||
"action": "switch.turn_off",
|
||||
"floorId": [],
|
||||
"areaId": [],
|
||||
"deviceId": [],
|
||||
"entityId": [
|
||||
"switch.kuche_baby_breezer"
|
||||
],
|
||||
"labelId": [],
|
||||
"data": "",
|
||||
"dataType": "jsonata",
|
||||
"mergeContext": "",
|
||||
"mustacheAltTags": false,
|
||||
"outputProperties": [],
|
||||
"queue": "none",
|
||||
"blockInputOverrides": true,
|
||||
"domain": "switch",
|
||||
"service": "turn_off",
|
||||
"x": 1050,
|
||||
"y": 400,
|
||||
"wires": [
|
||||
[]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "581fb8dd7042b734",
|
||||
"type": "delay",
|
||||
"z": "97ac338125ef7574",
|
||||
"g": "a0b2588596805a6b",
|
||||
"name": "",
|
||||
"pauseType": "delay",
|
||||
"timeout": "5",
|
||||
"timeoutUnits": "minutes",
|
||||
"rate": "1",
|
||||
"nbRateUnits": "1",
|
||||
"rateUnits": "second",
|
||||
"randomFirst": "1",
|
||||
"randomLast": "5",
|
||||
"randomUnits": "seconds",
|
||||
"drop": false,
|
||||
"allowrate": false,
|
||||
"outputs": 1,
|
||||
"x": 480,
|
||||
"y": 400,
|
||||
"wires": [
|
||||
[
|
||||
"b1fad812fd4fcba0"
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "162e4f7136cd343a",
|
||||
"type": "server",
|
||||
"name": "Home Assistant",
|
||||
"version": 5,
|
||||
"addon": false,
|
||||
"rejectUnauthorizedCerts": true,
|
||||
"ha_boolean": "y|yes|true|on|home|open",
|
||||
"connectionDelay": true,
|
||||
"cacheJson": true,
|
||||
"heartbeat": true,
|
||||
"heartbeatInterval": "10",
|
||||
"areaSelector": "friendlyName",
|
||||
"deviceSelector": "friendlyName",
|
||||
"entitySelector": "friendlyName",
|
||||
"statusSeparator": ": ",
|
||||
"statusYear": "hidden",
|
||||
"statusMonth": "short",
|
||||
"statusDay": "numeric",
|
||||
"statusHourCycle": "default",
|
||||
"statusTimeFormat": "h:m",
|
||||
"enableGlobalContextStore": false
|
||||
}
|
||||
]
|
||||
162
node_red_kueche_wasserkocher_auto_aus.json
Normal file
162
node_red_kueche_wasserkocher_auto_aus.json
Normal file
@ -0,0 +1,162 @@
|
||||
[
|
||||
{
|
||||
"id": "70de134cfdc04e0d",
|
||||
"type": "group",
|
||||
"z": "97ac338125ef7574",
|
||||
"name": "Küche Wasserkocher Auto Aus",
|
||||
"style": {
|
||||
"fill": "#e3f3d3",
|
||||
"label": true
|
||||
},
|
||||
"nodes": [
|
||||
"83515f35bc98956a",
|
||||
"0c50f796b7692d83",
|
||||
"6b1696f0efaa58a4"
|
||||
],
|
||||
"x": 34,
|
||||
"y": 459,
|
||||
"w": 1132,
|
||||
"h": 82
|
||||
},
|
||||
{
|
||||
"id": "83515f35bc98956a",
|
||||
"type": "server-state-changed",
|
||||
"z": "97ac338125ef7574",
|
||||
"g": "70de134cfdc04e0d",
|
||||
"name": "Küche Wasserkocher",
|
||||
"server": "162e4f7136cd343a",
|
||||
"version": 6,
|
||||
"outputs": 2,
|
||||
"exposeAsEntityConfig": "",
|
||||
"entities": {
|
||||
"entity": [
|
||||
"switch.kuche_wasserkocher"
|
||||
],
|
||||
"substring": [],
|
||||
"regex": []
|
||||
},
|
||||
"outputInitially": false,
|
||||
"stateType": "str",
|
||||
"ifState": "on",
|
||||
"ifStateType": "str",
|
||||
"ifStateOperator": "is",
|
||||
"outputOnlyOnStateChange": true,
|
||||
"for": "",
|
||||
"forType": "num",
|
||||
"forUnits": "minutes",
|
||||
"ignorePrevStateNull": false,
|
||||
"ignorePrevStateUnknown": false,
|
||||
"ignorePrevStateUnavailable": false,
|
||||
"ignoreCurrentStateUnknown": false,
|
||||
"ignoreCurrentStateUnavailable": false,
|
||||
"outputProperties": [
|
||||
{
|
||||
"property": "payload",
|
||||
"propertyType": "msg",
|
||||
"value": "",
|
||||
"valueType": "entityState"
|
||||
},
|
||||
{
|
||||
"property": "data",
|
||||
"propertyType": "msg",
|
||||
"value": "",
|
||||
"valueType": "eventData"
|
||||
},
|
||||
{
|
||||
"property": "topic",
|
||||
"propertyType": "msg",
|
||||
"value": "",
|
||||
"valueType": "triggerId"
|
||||
}
|
||||
],
|
||||
"x": 160,
|
||||
"y": 500,
|
||||
"wires": [
|
||||
[
|
||||
"6b1696f0efaa58a4"
|
||||
],
|
||||
[]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "0c50f796b7692d83",
|
||||
"type": "api-call-service",
|
||||
"z": "97ac338125ef7574",
|
||||
"g": "70de134cfdc04e0d",
|
||||
"name": "Küche Wasserkocher Aus",
|
||||
"server": "162e4f7136cd343a",
|
||||
"version": 7,
|
||||
"debugenabled": false,
|
||||
"action": "switch.turn_off",
|
||||
"floorId": [],
|
||||
"areaId": [],
|
||||
"deviceId": [],
|
||||
"entityId": [
|
||||
"switch.kuche_wasserkocher"
|
||||
],
|
||||
"labelId": [],
|
||||
"data": "",
|
||||
"dataType": "jsonata",
|
||||
"mergeContext": "",
|
||||
"mustacheAltTags": false,
|
||||
"outputProperties": [],
|
||||
"queue": "none",
|
||||
"blockInputOverrides": true,
|
||||
"domain": "switch",
|
||||
"service": "turn_off",
|
||||
"x": 1030,
|
||||
"y": 500,
|
||||
"wires": [
|
||||
[]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "6b1696f0efaa58a4",
|
||||
"type": "delay",
|
||||
"z": "97ac338125ef7574",
|
||||
"g": "70de134cfdc04e0d",
|
||||
"name": "",
|
||||
"pauseType": "delay",
|
||||
"timeout": "7",
|
||||
"timeoutUnits": "minutes",
|
||||
"rate": "1",
|
||||
"nbRateUnits": "1",
|
||||
"rateUnits": "second",
|
||||
"randomFirst": "1",
|
||||
"randomLast": "5",
|
||||
"randomUnits": "seconds",
|
||||
"drop": false,
|
||||
"allowrate": false,
|
||||
"outputs": 1,
|
||||
"x": 480,
|
||||
"y": 500,
|
||||
"wires": [
|
||||
[
|
||||
"0c50f796b7692d83"
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "162e4f7136cd343a",
|
||||
"type": "server",
|
||||
"name": "Home Assistant",
|
||||
"version": 5,
|
||||
"addon": false,
|
||||
"rejectUnauthorizedCerts": true,
|
||||
"ha_boolean": "y|yes|true|on|home|open",
|
||||
"connectionDelay": true,
|
||||
"cacheJson": true,
|
||||
"heartbeat": true,
|
||||
"heartbeatInterval": "10",
|
||||
"areaSelector": "friendlyName",
|
||||
"deviceSelector": "friendlyName",
|
||||
"entitySelector": "friendlyName",
|
||||
"statusSeparator": ": ",
|
||||
"statusYear": "hidden",
|
||||
"statusMonth": "short",
|
||||
"statusDay": "numeric",
|
||||
"statusHourCycle": "default",
|
||||
"statusTimeFormat": "h:m",
|
||||
"enableGlobalContextStore": false
|
||||
}
|
||||
]
|
||||
1088
node_red_wohnzimmer_chantal_esstisch.json
Normal file
1088
node_red_wohnzimmer_chantal_esstisch.json
Normal file
File diff suppressed because it is too large
Load Diff
223
notification_board.yaml
Normal file
223
notification_board.yaml
Normal file
@ -0,0 +1,223 @@
|
||||
alias: Notification Board
|
||||
mode: queued
|
||||
max: 10
|
||||
description: ""
|
||||
fields:
|
||||
message:
|
||||
name: Message
|
||||
description: Nachricht
|
||||
selector:
|
||||
text:
|
||||
multiline: true
|
||||
title:
|
||||
name: Title
|
||||
description: Titel
|
||||
selector:
|
||||
text: null
|
||||
critical:
|
||||
name: Critical
|
||||
description: iPhone Kritische Hinweise
|
||||
selector:
|
||||
boolean: {}
|
||||
required: true
|
||||
notify_alexa_durchsagen:
|
||||
name: Notify Alexa (Durchsagen)
|
||||
description: Sprachausgabe über Amazon-Geräte mit "_durchsagen"
|
||||
selector:
|
||||
boolean: {}
|
||||
required: true
|
||||
notify_alexa_sprechen:
|
||||
name: Notify Alexa (Sprechen)
|
||||
description: Sprachausgabe über Amazon-Geräte mit "_sprechen"
|
||||
selector:
|
||||
boolean: {}
|
||||
required: true
|
||||
notify_tv:
|
||||
name: Notify TV
|
||||
description: Benachrichtigung auf TV Geräten
|
||||
selector:
|
||||
boolean: {}
|
||||
required: true
|
||||
pushover_oliver:
|
||||
name: Pushover Oliver
|
||||
description: Benachrichtigung über Pushover (Oliver)
|
||||
selector:
|
||||
boolean: {}
|
||||
required: true
|
||||
pushover_lisa:
|
||||
name: Pushover Lisa
|
||||
description: Benachrichtigung über Pushover (Lisa)
|
||||
selector:
|
||||
boolean: {}
|
||||
required: true
|
||||
notify_persistent:
|
||||
name: Notify Persistent (Nur App)
|
||||
description: Dauerhafte Benachrichtigung in Home Assistant
|
||||
selector:
|
||||
boolean: {}
|
||||
required: true
|
||||
notify_oliver:
|
||||
name: Notify Oliver
|
||||
description: Benachrichtigung über Mobile App (Oliver)
|
||||
selector:
|
||||
boolean: {}
|
||||
required: true
|
||||
notify_lisa:
|
||||
name: Notify Lisa
|
||||
description: Benachrichtigung über Mobile App (Lisa)
|
||||
selector:
|
||||
boolean: {}
|
||||
required: true
|
||||
notify_familie:
|
||||
name: Notify Familie
|
||||
description: Benachrichtigung über beide Mobile Apps
|
||||
selector:
|
||||
boolean: {}
|
||||
required: true
|
||||
|
||||
sequence:
|
||||
- variables:
|
||||
persistent_data: >-
|
||||
{% if notify_persistent %}
|
||||
{"notification_id": "{{ title | default("benachrichtigung") | lower | replace(" ", "_") }}"}
|
||||
{% else %} {} {% endif %}
|
||||
- variables:
|
||||
tv_on: "{{ is_state('media_player.lg_webos_tv_nano769qa', 'on') }}"
|
||||
- variables:
|
||||
notify_targets: >-
|
||||
{% set t = [] %}
|
||||
{% if notify_persistent %}
|
||||
{% set t = t + ['notify.persistent_notification'] %}
|
||||
{% endif %}
|
||||
{% if notify_alexa_durchsagen %}
|
||||
{% set alexas_durchsagen = states.notify
|
||||
| selectattr('entity_id', 'match', 'notify\\..*_durchsagen')
|
||||
| rejectattr('entity_id', 'search', 'multiroom_durchsagen')
|
||||
| rejectattr('entity_id', 'search', 'uberall_durchsagen')
|
||||
| map(attribute='entity_id')
|
||||
| list %}
|
||||
{% set t = t + alexas_durchsagen %}
|
||||
{% endif %}
|
||||
{% if notify_alexa_sprechen %}
|
||||
{% set alexas_sprechen = states.notify
|
||||
| selectattr('entity_id', 'match', 'notify\\..*_sprechen')
|
||||
| map(attribute='entity_id')
|
||||
| list %}
|
||||
{% set t = t + alexas_sprechen %}
|
||||
{% endif %}
|
||||
{% if notify_tv and tv_on %}
|
||||
{% set t = t + ['notify.lg_webos_tv_nano769qa'] %}
|
||||
{% endif %}
|
||||
{% if pushover_oliver %}
|
||||
{% set t = t + ['notify.pushover_oliver'] %}
|
||||
{% endif %}
|
||||
{% if pushover_lisa %}
|
||||
{% set t = t + ['notify.pushover_lisa'] %}
|
||||
{% endif %}
|
||||
{% if notify_oliver %}
|
||||
{% set t = t + ['notify.mobile_app_finger_weg_du_spasst'] %}
|
||||
{% endif %}
|
||||
{% if notify_lisa %}
|
||||
{% set t = t + ['notify.mobile_app_meins'] %}
|
||||
{% endif %}
|
||||
{% if notify_familie %}
|
||||
{% set t = t + ['notify.mobile_app_finger_weg_du_spasst', 'notify.mobile_app_meins'] %}
|
||||
{% endif %}
|
||||
{{ t | map('lower') | map('trim') | unique | list }}
|
||||
|
||||
- repeat:
|
||||
for_each: "{{ notify_targets }}"
|
||||
sequence:
|
||||
- choose:
|
||||
|
||||
# PERSISTENT NOTIFICATION
|
||||
- conditions:
|
||||
- condition: template
|
||||
value_template: "{{ repeat.item == 'notify.persistent_notification' }}"
|
||||
sequence:
|
||||
- data:
|
||||
message: "{{ message }}"
|
||||
title: "{{ title | default('Benachrichtigung') }}"
|
||||
data: "{{ persistent_data | from_json(default={}) }}"
|
||||
action: notify.persistent_notification
|
||||
|
||||
# PUSHOVER
|
||||
- conditions:
|
||||
- condition: template
|
||||
value_template: "{{ repeat.item.startswith('notify.pushover') }}"
|
||||
sequence:
|
||||
- choose:
|
||||
- conditions:
|
||||
- condition: template
|
||||
value_template: "{{ critical }}"
|
||||
sequence:
|
||||
- data:
|
||||
message: "{{ message }}"
|
||||
title: "{{ title | default('Benachrichtigung') }}"
|
||||
data:
|
||||
priority: 2
|
||||
sound: siren
|
||||
retry: 30
|
||||
expire: 300
|
||||
action: "{{ repeat.item }}"
|
||||
- conditions:
|
||||
- condition: template
|
||||
value_template: "{{ not critical }}"
|
||||
sequence:
|
||||
- data:
|
||||
message: "{{ message }}"
|
||||
title: "{{ title | default('Benachrichtigung') }}"
|
||||
action: "{{ repeat.item }}"
|
||||
|
||||
# ALEXA / SONOS (mit Verzögerung)
|
||||
- conditions:
|
||||
- condition: template
|
||||
value_template: >
|
||||
{{ repeat.item.endswith('_durchsagen') or repeat.item.endswith('_sprechen') }}
|
||||
sequence:
|
||||
- data:
|
||||
message: "{{ message }}"
|
||||
title: "{{ title | default('Benachrichtigung') }}"
|
||||
target:
|
||||
entity_id: "{{ repeat.item }}"
|
||||
action: notify.send_message
|
||||
- delay: "00:00:02"
|
||||
|
||||
# MOBILE APP (iOS/Android)
|
||||
- conditions:
|
||||
- condition: template
|
||||
value_template: "{{ repeat.item.startswith('notify.mobile_app') }}"
|
||||
sequence:
|
||||
- choose:
|
||||
- conditions:
|
||||
- condition: template
|
||||
value_template: "{{ critical }}"
|
||||
sequence:
|
||||
- data:
|
||||
message: "{{ message }}"
|
||||
title: "{{ title | default('Benachrichtigung') }}"
|
||||
data:
|
||||
push:
|
||||
sound:
|
||||
name: default
|
||||
critical: 1
|
||||
volume: 1.0
|
||||
action: "{{ repeat.item }}"
|
||||
- conditions:
|
||||
- condition: template
|
||||
value_template: "{{ not critical }}"
|
||||
sequence:
|
||||
- data:
|
||||
message: "{{ message }}"
|
||||
title: "{{ title | default('Benachrichtigung') }}"
|
||||
action: "{{ repeat.item }}"
|
||||
|
||||
# FALLBACK (TV, andere)
|
||||
- conditions:
|
||||
- condition: template
|
||||
value_template: "{{ True }}"
|
||||
sequence:
|
||||
- data:
|
||||
message: "{{ message }}"
|
||||
title: "{{ title | default('Benachrichtigung') }}"
|
||||
action: "{{ repeat.item }}"
|
||||
Loading…
x
Reference in New Issue
Block a user