├── README.md ├── magazine ├── c-t 1-19- P. 182 - Homekit │ ├── switch-example.json │ └── tasmota-sensor-example.json ├── c-t 16-19- P. 132 - Badluefter │ └── timerexample.json ├── c-t 3-19- P. 92 - Thermostats │ ├── simple-window-turnoff.json │ └── twowindows+door.json ├── c-t 4-19- P. 162 - Bluetooth PE │ └── bluetooth example └── c-t 5-19- P. 134 - Fritzbox │ ├── call-alarm.json │ ├── fritz-plug-temp-power.json │ ├── fritz-plug.json │ ├── guest-wifi-password.json │ ├── guest-wifi.json │ └── presence-detection.json └── unrelated └── bathroom-fan └── bathroom-fan.json /README.md: -------------------------------------------------------------------------------- 1 | # c't Magazin: Node-Red-Beispiele 2 | Dieses Repository enthält eine Vielzahl von Beispielen für [Node-Red](https://nodered.org/). Diese sind entweder zu spezifischen [c't-Artikeln](https://www.ct.de) zugehörig oder davon unabhängige Beispiele. Bei letzteren stellen wir nicht sicher, dass sie immer einwandfrei funktionieren. 3 | 4 | Die Beispiele zu den Heftartikeln finden Sie im Ordner magazine. 5 | 6 | # c't Magazine: Node-Red examples 7 | 8 | This repository contains a variety of examples for [Node-Red](https://nodered.org/). They are either related to our articles in [c't Magazine](https://www.ct.de) or non-related ideas we chose to publish. Though there is no guarantee that the latter will work properly. 9 | 10 | Please find the article related examples in the magazine folder. 11 | -------------------------------------------------------------------------------- /magazine/c-t 1-19- P. 182 - Homekit/switch-example.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "id": "932c6d7f.b25a18", 4 | "type": "homekit-service", 5 | "z": "d2325a72.99c0f8", 6 | "bridge": "ac659f61.870828", 7 | "name": "Basic1", 8 | "serviceName": "BridgeConfiguration", 9 | "manufacturer": "Default Manufacturer", 10 | "model": "Default Model", 11 | "serialNo": "Default Serial Number", 12 | "characteristicProperties": "{}", 13 | "x": 590, 14 | "y": 200, 15 | "wires": [ 16 | [ 17 | "2094ae86.0f7892" 18 | ] 19 | ] 20 | }, 21 | { 22 | "id": "823f599f.2b388", 23 | "type": "change", 24 | "z": "d2325a72.99c0f8", 25 | "name": "StB: Move & Convert", 26 | "rules": [ 27 | { 28 | "t": "move", 29 | "p": "payload", 30 | "pt": "msg", 31 | "to": "payload.On", 32 | "tot": "msg" 33 | }, 34 | { 35 | "t": "change", 36 | "p": "payload.On", 37 | "pt": "msg", 38 | "from": "0", 39 | "fromt": "str", 40 | "to": "false", 41 | "tot": "bool" 42 | }, 43 | { 44 | "t": "change", 45 | "p": "payload.On", 46 | "pt": "msg", 47 | "from": "1", 48 | "fromt": "str", 49 | "to": "true", 50 | "tot": "bool" 51 | } 52 | ], 53 | "action": "", 54 | "property": "", 55 | "from": "", 56 | "to": "", 57 | "reg": false, 58 | "x": 620, 59 | "y": 140, 60 | "wires": [ 61 | [ 62 | "932c6d7f.b25a18" 63 | ] 64 | ] 65 | }, 66 | { 67 | "id": "2094ae86.0f7892", 68 | "type": "change", 69 | "z": "d2325a72.99c0f8", 70 | "name": "BtS: Move & Convert", 71 | "rules": [ 72 | { 73 | "t": "move", 74 | "p": "payload.On", 75 | "pt": "msg", 76 | "to": "payload", 77 | "tot": "msg" 78 | }, 79 | { 80 | "t": "change", 81 | "p": "payload", 82 | "pt": "msg", 83 | "from": "false", 84 | "fromt": "bool", 85 | "to": "0", 86 | "tot": "str" 87 | }, 88 | { 89 | "t": "change", 90 | "p": "payload", 91 | "pt": "msg", 92 | "from": "true", 93 | "fromt": "bool", 94 | "to": "1", 95 | "tot": "str" 96 | } 97 | ], 98 | "action": "", 99 | "property": "", 100 | "from": "", 101 | "to": "", 102 | "reg": false, 103 | "x": 620, 104 | "y": 260, 105 | "wires": [ 106 | [ 107 | "bb885cab.6da23" 108 | ] 109 | ] 110 | }, 111 | { 112 | "id": "bb885cab.6da23", 113 | "type": "mqtt out", 114 | "z": "d2325a72.99c0f8", 115 | "name": "", 116 | "topic": "smarthome/steckdose1/relay/0/set", 117 | "qos": "1", 118 | "retain": "false", 119 | "broker": "51045b15.3bebc4", 120 | "x": 630, 121 | "y": 320, 122 | "wires": [] 123 | }, 124 | { 125 | "id": "6b79d2dd.16325c", 126 | "type": "mqtt in", 127 | "z": "d2325a72.99c0f8", 128 | "name": "", 129 | "topic": "smarthome/steckdose1/relay/0", 130 | "qos": "2", 131 | "broker": "51045b15.3bebc4", 132 | "x": 600, 133 | "y": 80, 134 | "wires": [ 135 | [ 136 | "823f599f.2b388" 137 | ] 138 | ] 139 | }, 140 | { 141 | "id": "ac659f61.870828", 142 | "type": "homekit-bridge", 143 | "z": "", 144 | "bridgeName": "Raspi1", 145 | "pinCode": "111-11-111", 146 | "port": "", 147 | "manufacturer": "Default Manufacturer", 148 | "model": "Default Model", 149 | "serialNo": "Default Serial Number" 150 | }, 151 | { 152 | "id": "51045b15.3bebc4", 153 | "type": "mqtt-broker", 154 | "z": "", 155 | "name": "MQTT", 156 | "broker": "127.0.0.1", 157 | "port": "1883", 158 | "clientid": "", 159 | "usetls": false, 160 | "compatmode": true, 161 | "keepalive": "60", 162 | "cleansession": true, 163 | "birthTopic": "", 164 | "birthQos": "0", 165 | "birthPayload": "", 166 | "closeTopic": "", 167 | "closeQos": "0", 168 | "closePayload": "", 169 | "willTopic": "", 170 | "willQos": "0", 171 | "willPayload": "" 172 | } 173 | ] 174 | -------------------------------------------------------------------------------- /magazine/c-t 1-19- P. 182 - Homekit/tasmota-sensor-example.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "id": "4526300f.7216f", 4 | "type": "inject", 5 | "z": "d2325a72.99c0f8", 6 | "name": "Demo-JSON", 7 | "topic": "", 8 | "payload": "{\"Time\":\"2018-11-17T16:11:12\",\"DHT22\":{\"Temperature\":22.9,\"Humidity\":54.1}}", 9 | "payloadType": "json", 10 | "repeat": "", 11 | "crontab": "", 12 | "once": false, 13 | "onceDelay": 0.1, 14 | "x": 310, 15 | "y": 200, 16 | "wires": [ 17 | [ 18 | "77dfef84.98139" 19 | ] 20 | ] 21 | }, 22 | { 23 | "id": "d4a1b360.4ab3a8", 24 | "type": "homekit-service", 25 | "z": "d2325a72.99c0f8", 26 | "bridge": "ac659f61.870828", 27 | "name": "Temp1", 28 | "serviceName": "TemperatureSensor", 29 | "manufacturer": "Default Manufacturer", 30 | "model": "Default Model", 31 | "serialNo": "Default Serial Number", 32 | "characteristicProperties": "{}", 33 | "x": 910, 34 | "y": 180, 35 | "wires": [ 36 | [] 37 | ] 38 | }, 39 | { 40 | "id": "9e92b9d6.3d3a28", 41 | "type": "homekit-service", 42 | "z": "d2325a72.99c0f8", 43 | "bridge": "ac659f61.870828", 44 | "name": "Humid1", 45 | "serviceName": "HumiditySensor", 46 | "manufacturer": "Default Manufacturer", 47 | "model": "Default Model", 48 | "serialNo": "Default Serial Number", 49 | "characteristicProperties": "{}", 50 | "x": 920, 51 | "y": 240, 52 | "wires": [ 53 | [] 54 | ] 55 | }, 56 | { 57 | "id": "5d6df351.c822a4", 58 | "type": "change", 59 | "z": "d2325a72.99c0f8", 60 | "name": "Temperature", 61 | "rules": [ 62 | { 63 | "t": "move", 64 | "p": "payload.DHT22.Temperature", 65 | "pt": "msg", 66 | "to": "payload.CurrentTemperature", 67 | "tot": "msg" 68 | }, 69 | { 70 | "t": "delete", 71 | "p": "payload.DHT22", 72 | "pt": "msg" 73 | }, 74 | { 75 | "t": "delete", 76 | "p": "payload.Time", 77 | "pt": "msg" 78 | } 79 | ], 80 | "action": "", 81 | "property": "", 82 | "from": "", 83 | "to": "", 84 | "reg": false, 85 | "x": 770, 86 | "y": 180, 87 | "wires": [ 88 | [ 89 | "d4a1b360.4ab3a8" 90 | ] 91 | ] 92 | }, 93 | { 94 | "id": "280566e4.493602", 95 | "type": "change", 96 | "z": "d2325a72.99c0f8", 97 | "name": "Humidity", 98 | "rules": [ 99 | { 100 | "t": "move", 101 | "p": "payload.DHT22.Humidity", 102 | "pt": "msg", 103 | "to": "payload.CurrentRelativeHumidity", 104 | "tot": "msg" 105 | }, 106 | { 107 | "t": "delete", 108 | "p": "payload.DHT22", 109 | "pt": "msg" 110 | }, 111 | { 112 | "t": "delete", 113 | "p": "payload.Time", 114 | "pt": "msg" 115 | } 116 | ], 117 | "action": "", 118 | "property": "", 119 | "from": "", 120 | "to": "", 121 | "reg": false, 122 | "x": 760, 123 | "y": 240, 124 | "wires": [ 125 | [ 126 | "9e92b9d6.3d3a28" 127 | ] 128 | ] 129 | }, 130 | { 131 | "id": "77dfef84.98139", 132 | "type": "json", 133 | "z": "d2325a72.99c0f8", 134 | "name": "", 135 | "property": "payload", 136 | "action": "obj", 137 | "pretty": false, 138 | "x": 570, 139 | "y": 200, 140 | "wires": [ 141 | [ 142 | "5d6df351.c822a4", 143 | "280566e4.493602" 144 | ] 145 | ] 146 | }, 147 | { 148 | "id": "30db8696.327c82", 149 | "type": "mqtt in", 150 | "z": "d2325a72.99c0f8", 151 | "name": "", 152 | "topic": "smarthome/steckdose1/SENSOR", 153 | "qos": "2", 154 | "broker": "51045b15.3bebc4", 155 | "x": 340, 156 | "y": 160, 157 | "wires": [ 158 | [ 159 | "77dfef84.98139" 160 | ] 161 | ] 162 | }, 163 | { 164 | "id": "ac659f61.870828", 165 | "type": "homekit-bridge", 166 | "z": "", 167 | "bridgeName": "Raspi1", 168 | "pinCode": "111-11-111", 169 | "port": "", 170 | "manufacturer": "Default Manufacturer", 171 | "model": "Default Model", 172 | "serialNo": "Default Serial Number" 173 | }, 174 | { 175 | "id": "51045b15.3bebc4", 176 | "type": "mqtt-broker", 177 | "z": "", 178 | "name": "MQTT", 179 | "broker": "127.0.0.1", 180 | "port": "1883", 181 | "clientid": "", 182 | "usetls": false, 183 | "compatmode": true, 184 | "keepalive": "60", 185 | "cleansession": true, 186 | "birthTopic": "", 187 | "birthQos": "0", 188 | "birthPayload": "", 189 | "closeTopic": "", 190 | "closeQos": "0", 191 | "closePayload": "", 192 | "willTopic": "", 193 | "willQos": "0", 194 | "willPayload": "" 195 | } 196 | ] 197 | -------------------------------------------------------------------------------- /magazine/c-t 16-19- P. 132 - Badluefter/timerexample.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "id": "3f00cf61.b46088", 4 | "type": "switch", 5 | "z": "5e3bac55.5a4f5c", 6 | "name": "", 7 | "property": "payload", 8 | "propertyType": "msg", 9 | "rules": [ 10 | { 11 | "t": "eq", 12 | "v": "1", 13 | "vt": "str" 14 | }, 15 | { 16 | "t": "eq", 17 | "v": "0", 18 | "vt": "str" 19 | } 20 | ], 21 | "checkall": "true", 22 | "repair": false, 23 | "outputs": 2, 24 | "x": 570, 25 | "y": 320, 26 | "wires": [ 27 | [ 28 | "4f65f90b.d45e2", 29 | "78249c09.9ee5b4" 30 | ], 31 | [ 32 | "3cf7e391.6f2bc4" 33 | ] 34 | ] 35 | }, 36 | { 37 | "id": "3cf7e391.6f2bc4", 38 | "type": "change", 39 | "z": "5e3bac55.5a4f5c", 40 | "name": "PLD to STOP", 41 | "rules": [ 42 | { 43 | "t": "set", 44 | "p": "payload", 45 | "pt": "msg", 46 | "to": "STOP", 47 | "tot": "str" 48 | } 49 | ], 50 | "action": "", 51 | "property": "", 52 | "from": "", 53 | "to": "", 54 | "reg": false, 55 | "x": 579.5757904052734, 56 | "y": 367.3939542770386, 57 | "wires": [ 58 | [ 59 | "4f65f90b.d45e2", 60 | "78249c09.9ee5b4" 61 | ] 62 | ] 63 | }, 64 | { 65 | "id": "4f65f90b.d45e2", 66 | "type": "stoptimer", 67 | "z": "5e3bac55.5a4f5c", 68 | "duration": "5", 69 | "units": "Minute", 70 | "payloadtype": "num", 71 | "payloadval": "0", 72 | "name": "", 73 | "x": 817.4141883850098, 74 | "y": 316.78787326812744, 75 | "wires": [ 76 | [ 77 | "4a8c1a8c.83cfbc", 78 | "4a8c1a8c.83cfbc", 79 | "4a8c1a8c.83cfbc", 80 | "4a8c1a8c.83cfbc", 81 | "4a8c1a8c.83cfbc", 82 | "4a8c1a8c.83cfbc", 83 | "4a8c1a8c.83cfbc", 84 | "4a8c1a8c.83cfbc", 85 | "76db291e.1e22b" 86 | ], 87 | [] 88 | ] 89 | }, 90 | { 91 | "id": "4a8c1a8c.83cfbc", 92 | "type": "stoptimer", 93 | "z": "5e3bac55.5a4f5c", 94 | "duration": "15", 95 | "units": "Minute", 96 | "payloadtype": "num", 97 | "payloadval": "0", 98 | "name": "", 99 | "x": 1084.404010772705, 100 | "y": 271.3636169433594, 101 | "wires": [ 102 | [], 103 | [ 104 | "76db291e.1e22b" 105 | ] 106 | ] 107 | }, 108 | { 109 | "id": "78249c09.9ee5b4", 110 | "type": "stoptimer", 111 | "z": "5e3bac55.5a4f5c", 112 | "duration": "14", 113 | "units": "Minute", 114 | "payloadtype": "str", 115 | "payloadval": "STOP", 116 | "name": "", 117 | "x": 833.555591583252, 118 | "y": 383.3838357925415, 119 | "wires": [ 120 | [ 121 | "eba5d8dc.c82ef", 122 | "eba5d8dc.c82ef", 123 | "eba5d8dc.c82ef", 124 | "eba5d8dc.c82ef", 125 | "eba5d8dc.c82ef", 126 | "eba5d8dc.c82ef", 127 | "eba5d8dc.c82ef", 128 | "eba5d8dc.c82ef" 129 | ], 130 | [ 131 | "4a8c1a8c.83cfbc", 132 | "4a8c1a8c.83cfbc", 133 | "4a8c1a8c.83cfbc", 134 | "4a8c1a8c.83cfbc", 135 | "4a8c1a8c.83cfbc", 136 | "4a8c1a8c.83cfbc", 137 | "4a8c1a8c.83cfbc", 138 | "4a8c1a8c.83cfbc" 139 | ] 140 | ] 141 | }, 142 | { 143 | "id": "eba5d8dc.c82ef", 144 | "type": "stoptimer", 145 | "z": "5e3bac55.5a4f5c", 146 | "duration": "31", 147 | "units": "Minute", 148 | "payloadtype": "num", 149 | "payloadval": "0", 150 | "name": "", 151 | "x": 1087.0101280212402, 152 | "y": 346.565655708313, 153 | "wires": [ 154 | [], 155 | [ 156 | "76db291e.1e22b" 157 | ] 158 | ] 159 | }, 160 | { 161 | "id": "76db291e.1e22b", 162 | "type": "mqtt out", 163 | "z": "5e3bac55.5a4f5c", 164 | "name": "", 165 | "topic": "", 166 | "qos": "", 167 | "retain": "", 168 | "x": 1430, 169 | "y": 320, 170 | "wires": [] 171 | }, 172 | { 173 | "id": "f9299e85.1a383", 174 | "type": "mqtt in", 175 | "z": "5e3bac55.5a4f5c", 176 | "name": "", 177 | "topic": "", 178 | "qos": "2", 179 | "x": 270, 180 | "y": 320, 181 | "wires": [ 182 | [ 183 | "dcce8b2f.663b5" 184 | ] 185 | ] 186 | }, 187 | { 188 | "id": "dcce8b2f.663b5", 189 | "type": "rbe", 190 | "z": "5e3bac55.5a4f5c", 191 | "name": "", 192 | "func": "rbe", 193 | "gap": "", 194 | "start": "", 195 | "inout": "out", 196 | "property": "payload", 197 | "x": 410, 198 | "y": 320, 199 | "wires": [ 200 | [ 201 | "3f00cf61.b46088" 202 | ] 203 | ] 204 | } 205 | ] 206 | -------------------------------------------------------------------------------- /magazine/c-t 3-19- P. 92 - Thermostats/simple-window-turnoff.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "id": "fb4cf608.efd23", 4 | "type": "mqtt in", 5 | "z": "d2325a72.99c0f8", 6 | "name": "", 7 | "topic": "zigbee2mqtt/Schlafzimmerfenster", 8 | "qos": "2", 9 | "broker": "25f7d1f2.c3f19e", 10 | "x": 190, 11 | "y": 3460, 12 | "wires": [ 13 | [ 14 | "85558f1f.aff9e8" 15 | ] 16 | ] 17 | }, 18 | { 19 | "id": "85558f1f.aff9e8", 20 | "type": "json", 21 | "z": "d2325a72.99c0f8", 22 | "name": "", 23 | "property": "payload", 24 | "action": "", 25 | "pretty": false, 26 | "x": 470, 27 | "y": 3460, 28 | "wires": [ 29 | [ 30 | "4b0b6fed.d835a" 31 | ] 32 | ] 33 | }, 34 | { 35 | "id": "4b0b6fed.d835a", 36 | "type": "rbe", 37 | "z": "d2325a72.99c0f8", 38 | "name": "", 39 | "func": "rbei", 40 | "gap": "", 41 | "start": "", 42 | "inout": "out", 43 | "property": "payload.contact", 44 | "x": 610, 45 | "y": 3460, 46 | "wires": [ 47 | [ 48 | "3413cb92.a9ea2c" 49 | ] 50 | ] 51 | }, 52 | { 53 | "id": "3413cb92.a9ea2c", 54 | "type": "switch", 55 | "z": "d2325a72.99c0f8", 56 | "name": "Auf/Zu", 57 | "property": "payload.contact", 58 | "propertyType": "msg", 59 | "rules": [ 60 | { 61 | "t": "false" 62 | }, 63 | { 64 | "t": "true" 65 | } 66 | ], 67 | "checkall": "true", 68 | "repair": false, 69 | "outputs": 2, 70 | "x": 750, 71 | "y": 3460, 72 | "wires": [ 73 | [ 74 | "24b3e737.273838" 75 | ], 76 | [ 77 | "d358c214.cd3768" 78 | ] 79 | ] 80 | }, 81 | { 82 | "id": "24b3e737.273838", 83 | "type": "tado", 84 | "z": "d2325a72.99c0f8", 85 | "configName": "95bd1898.a6afe8", 86 | "apiCall": "setZoneOverlay", 87 | "homeId": "12345", 88 | "deviceId": "", 89 | "zoneId": "2", 90 | "power": "off", 91 | "temperature": "18", 92 | "terminationType": "manual", 93 | "terminationTimeout": 900, 94 | "name": "SZ: Heizung aus", 95 | "x": 920, 96 | "y": 3420, 97 | "wires": [ 98 | [] 99 | ] 100 | }, 101 | { 102 | "id": "d358c214.cd3768", 103 | "type": "tado", 104 | "z": "d2325a72.99c0f8", 105 | "configName": "95bd1898.a6afe8", 106 | "apiCall": "clearZoneOverlay", 107 | "homeId": "12345", 108 | "deviceId": "", 109 | "zoneId": "2", 110 | "power": "on", 111 | "temperature": "18", 112 | "terminationType": "timer", 113 | "terminationTimeout": "1", 114 | "name": "SZ: Heizung auto", 115 | "x": 930, 116 | "y": 3500, 117 | "wires": [ 118 | [] 119 | ] 120 | } 121 | ] 122 | -------------------------------------------------------------------------------- /magazine/c-t 3-19- P. 92 - Thermostats/twowindows+door.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "id": "1be258aa.6bbf87", 4 | "type": "switch", 5 | "z": "9be9d048.ca89d", 6 | "name": "Auf/Zu", 7 | "property": "payload.contact", 8 | "propertyType": "msg", 9 | "rules": [ 10 | { 11 | "t": "false" 12 | }, 13 | { 14 | "t": "true" 15 | } 16 | ], 17 | "checkall": "true", 18 | "repair": false, 19 | "outputs": 2, 20 | "x": 730, 21 | "y": 320, 22 | "wires": [ 23 | [ 24 | "cc1fc862.9570f8" 25 | ], 26 | [ 27 | "af89e323.53b1e" 28 | ] 29 | ] 30 | }, 31 | { 32 | "id": "cc1fc862.9570f8", 33 | "type": "tado", 34 | "z": "9be9d048.ca89d", 35 | "configName": "95bd1898.a6afe8", 36 | "apiCall": "setZoneOverlay", 37 | "homeId": "12345", 38 | "deviceId": "", 39 | "zoneId": "2", 40 | "power": "off", 41 | "temperature": "18", 42 | "terminationType": "manual", 43 | "terminationTimeout": 900, 44 | "name": "SZ: Heizung aus", 45 | "x": 1280, 46 | "y": 240, 47 | "wires": [ 48 | [] 49 | ] 50 | }, 51 | { 52 | "id": "9095188d.380bb8", 53 | "type": "tado", 54 | "z": "9be9d048.ca89d", 55 | "configName": "95bd1898.a6afe8", 56 | "apiCall": "clearZoneOverlay", 57 | "homeId": "12345", 58 | "deviceId": "", 59 | "zoneId": "2", 60 | "power": "on", 61 | "temperature": "18", 62 | "terminationType": "timer", 63 | "terminationTimeout": "1", 64 | "name": "SZ: Heizung auto", 65 | "x": 1290, 66 | "y": 300, 67 | "wires": [ 68 | [] 69 | ] 70 | }, 71 | { 72 | "id": "6ab2a66d.05ff18", 73 | "type": "rbe", 74 | "z": "9be9d048.ca89d", 75 | "name": "", 76 | "func": "rbei", 77 | "gap": "", 78 | "start": "", 79 | "inout": "out", 80 | "property": "payload.contact", 81 | "x": 590, 82 | "y": 320, 83 | "wires": [ 84 | [ 85 | "1be258aa.6bbf87" 86 | ] 87 | ] 88 | }, 89 | { 90 | "id": "9aec49e.55e73b8", 91 | "type": "mqtt in", 92 | "z": "9be9d048.ca89d", 93 | "name": "", 94 | "topic": "zigbee2mqtt/Schlafzimmerfenster", 95 | "qos": "2", 96 | "broker": "25f7d1f2.c3f19e", 97 | "x": 230, 98 | "y": 320, 99 | "wires": [ 100 | [ 101 | "3fd4abfe.5e8db4" 102 | ] 103 | ] 104 | }, 105 | { 106 | "id": "3fd4abfe.5e8db4", 107 | "type": "json", 108 | "z": "9be9d048.ca89d", 109 | "name": "", 110 | "property": "payload", 111 | "action": "", 112 | "pretty": false, 113 | "x": 450, 114 | "y": 320, 115 | "wires": [ 116 | [ 117 | "6ab2a66d.05ff18", 118 | "2308e0d1.20513" 119 | ] 120 | ] 121 | }, 122 | { 123 | "id": "2308e0d1.20513", 124 | "type": "change", 125 | "z": "9be9d048.ca89d", 126 | "name": "SZ-Fenster", 127 | "rules": [ 128 | { 129 | "t": "set", 130 | "p": "szfensterg", 131 | "pt": "global", 132 | "to": "payload.contact", 133 | "tot": "msg" 134 | } 135 | ], 136 | "action": "", 137 | "property": "", 138 | "from": "", 139 | "to": "", 140 | "reg": false, 141 | "x": 610, 142 | "y": 240, 143 | "wires": [ 144 | [] 145 | ] 146 | }, 147 | { 148 | "id": "99f6431f.f7ca3", 149 | "type": "mqtt in", 150 | "z": "9be9d048.ca89d", 151 | "name": "", 152 | "topic": "zigbee2mqtt/Terassentür", 153 | "qos": "2", 154 | "broker": "25f7d1f2.c3f19e", 155 | "x": 210, 156 | "y": 600, 157 | "wires": [ 158 | [ 159 | "3075f023.d6d1d" 160 | ] 161 | ] 162 | }, 163 | { 164 | "id": "3075f023.d6d1d", 165 | "type": "json", 166 | "z": "9be9d048.ca89d", 167 | "name": "", 168 | "property": "payload", 169 | "action": "", 170 | "pretty": false, 171 | "x": 450, 172 | "y": 600, 173 | "wires": [ 174 | [ 175 | "5d46b678.573bc8", 176 | "9c4edd8f.dc174" 177 | ] 178 | ] 179 | }, 180 | { 181 | "id": "5d46b678.573bc8", 182 | "type": "change", 183 | "z": "9be9d048.ca89d", 184 | "name": "Terassentür", 185 | "rules": [ 186 | { 187 | "t": "set", 188 | "p": "trtürg", 189 | "pt": "global", 190 | "to": "payload.contact", 191 | "tot": "msg" 192 | } 193 | ], 194 | "action": "", 195 | "property": "", 196 | "from": "", 197 | "to": "", 198 | "reg": false, 199 | "x": 590, 200 | "y": 660, 201 | "wires": [ 202 | [] 203 | ] 204 | }, 205 | { 206 | "id": "9c4edd8f.dc174", 207 | "type": "rbe", 208 | "z": "9be9d048.ca89d", 209 | "name": "", 210 | "func": "rbei", 211 | "gap": "", 212 | "start": "", 213 | "inout": "out", 214 | "property": "payload.contact", 215 | "x": 590, 216 | "y": 600, 217 | "wires": [ 218 | [ 219 | "9f1a15ae.dbfe38" 220 | ] 221 | ] 222 | }, 223 | { 224 | "id": "af89e323.53b1e", 225 | "type": "switch", 226 | "z": "9be9d048.ca89d", 227 | "name": "Terassentür zu?", 228 | "property": "trtür", 229 | "propertyType": "global", 230 | "rules": [ 231 | { 232 | "t": "true" 233 | }, 234 | { 235 | "t": "false" 236 | } 237 | ], 238 | "checkall": "true", 239 | "repair": false, 240 | "outputs": 2, 241 | "x": 860, 242 | "y": 400, 243 | "wires": [ 244 | [ 245 | "9095188d.380bb8" 246 | ], 247 | [ 248 | "54ea0e1e.3ec7e" 249 | ] 250 | ] 251 | }, 252 | { 253 | "id": "54ea0e1e.3ec7e", 254 | "type": "switch", 255 | "z": "9be9d048.ca89d", 256 | "name": "SZ: Tür zu?", 257 | "property": "sztür", 258 | "propertyType": "global", 259 | "rules": [ 260 | { 261 | "t": "true" 262 | } 263 | ], 264 | "checkall": "true", 265 | "repair": false, 266 | "outputs": 1, 267 | "x": 1050, 268 | "y": 420, 269 | "wires": [ 270 | [ 271 | "9095188d.380bb8" 272 | ] 273 | ] 274 | }, 275 | { 276 | "id": "69217451.4ecd6c", 277 | "type": "mqtt in", 278 | "z": "9be9d048.ca89d", 279 | "name": "", 280 | "topic": "zigbee2mqtt/zimmertuer", 281 | "qos": "2", 282 | "broker": "25f7d1f2.c3f19e", 283 | "x": 220, 284 | "y": 460, 285 | "wires": [ 286 | [ 287 | "1ca4b6f5.8f0589" 288 | ] 289 | ] 290 | }, 291 | { 292 | "id": "1ca4b6f5.8f0589", 293 | "type": "json", 294 | "z": "9be9d048.ca89d", 295 | "name": "", 296 | "property": "payload", 297 | "action": "", 298 | "pretty": false, 299 | "x": 430, 300 | "y": 460, 301 | "wires": [ 302 | [ 303 | "adc5ea15.b110a8" 304 | ] 305 | ] 306 | }, 307 | { 308 | "id": "adc5ea15.b110a8", 309 | "type": "change", 310 | "z": "9be9d048.ca89d", 311 | "name": "SZ: Tür", 312 | "rules": [ 313 | { 314 | "t": "set", 315 | "p": "sztür", 316 | "pt": "global", 317 | "to": "payload.contact", 318 | "tot": "msg" 319 | } 320 | ], 321 | "action": "", 322 | "property": "", 323 | "from": "", 324 | "to": "", 325 | "reg": false, 326 | "x": 580, 327 | "y": 460, 328 | "wires": [ 329 | [] 330 | ] 331 | }, 332 | { 333 | "id": "9f1a15ae.dbfe38", 334 | "type": "switch", 335 | "z": "9be9d048.ca89d", 336 | "name": "Auf/Zu", 337 | "property": "payload.contact", 338 | "propertyType": "msg", 339 | "rules": [ 340 | { 341 | "t": "false" 342 | }, 343 | { 344 | "t": "true" 345 | } 346 | ], 347 | "checkall": "true", 348 | "repair": false, 349 | "outputs": 2, 350 | "x": 730, 351 | "y": 600, 352 | "wires": [ 353 | [ 354 | "9d0ea04f.cd6a9", 355 | "7e90e281.bdeedc" 356 | ], 357 | [ 358 | "5b19122d.97639c" 359 | ] 360 | ] 361 | }, 362 | { 363 | "id": "9d0ea04f.cd6a9", 364 | "type": "tado", 365 | "z": "9be9d048.ca89d", 366 | "configName": "95bd1898.a6afe8", 367 | "apiCall": "setZoneOverlay", 368 | "homeId": "12345", 369 | "deviceId": "", 370 | "zoneId": "1", 371 | "power": "off", 372 | "temperature": "18", 373 | "terminationType": "manual", 374 | "terminationTimeout": 900, 375 | "name": "Stube: Heizung aus", 376 | "x": 1310, 377 | "y": 580, 378 | "wires": [ 379 | [] 380 | ] 381 | }, 382 | { 383 | "id": "62bd7f5a.bc779", 384 | "type": "tado", 385 | "z": "9be9d048.ca89d", 386 | "configName": "95bd1898.a6afe8", 387 | "apiCall": "clearZoneOverlay", 388 | "homeId": "12345", 389 | "deviceId": "", 390 | "zoneId": "1", 391 | "power": "on", 392 | "temperature": "18", 393 | "terminationType": "timer", 394 | "terminationTimeout": "1", 395 | "name": "Stube: Heizung auto", 396 | "x": 1320, 397 | "y": 640, 398 | "wires": [ 399 | [] 400 | ] 401 | }, 402 | { 403 | "id": "5b19122d.97639c", 404 | "type": "switch", 405 | "z": "9be9d048.ca89d", 406 | "name": "SZ: Fenster zu?", 407 | "property": "szfensterg", 408 | "propertyType": "global", 409 | "rules": [ 410 | { 411 | "t": "true" 412 | }, 413 | { 414 | "t": "false" 415 | } 416 | ], 417 | "checkall": "true", 418 | "repair": false, 419 | "outputs": 2, 420 | "x": 880, 421 | "y": 640, 422 | "wires": [ 423 | [ 424 | "62bd7f5a.bc779" 425 | ], 426 | [ 427 | "a19b24fb.fad118" 428 | ] 429 | ] 430 | }, 431 | { 432 | "id": "a19b24fb.fad118", 433 | "type": "switch", 434 | "z": "9be9d048.ca89d", 435 | "name": "SZ: Tür zu?", 436 | "property": "sztür", 437 | "propertyType": "global", 438 | "rules": [ 439 | { 440 | "t": "true" 441 | } 442 | ], 443 | "checkall": "true", 444 | "repair": false, 445 | "outputs": 1, 446 | "x": 1090, 447 | "y": 720, 448 | "wires": [ 449 | [ 450 | "62bd7f5a.bc779" 451 | ] 452 | ] 453 | }, 454 | { 455 | "id": "7e90e281.bdeedc", 456 | "type": "switch", 457 | "z": "9be9d048.ca89d", 458 | "name": "SZ: Tür zu?", 459 | "property": "sztür", 460 | "propertyType": "global", 461 | "rules": [ 462 | { 463 | "t": "false" 464 | } 465 | ], 466 | "checkall": "true", 467 | "repair": false, 468 | "outputs": 1, 469 | "x": 890, 470 | "y": 500, 471 | "wires": [ 472 | [ 473 | "cc1fc862.9570f8" 474 | ] 475 | ] 476 | } 477 | ] 478 | -------------------------------------------------------------------------------- /magazine/c-t 4-19- P. 162 - Bluetooth PE/bluetooth example: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "id": "e3d17c9b.8c9a1", 4 | "type": "stoptimer", 5 | "z": "5d02649b.fb444c", 6 | "duration": "20", 7 | "units": "Minute", 8 | "payloadtype": "str", 9 | "payloadval": "outofrange", 10 | "name": "", 11 | "x": 540, 12 | "y": 340, 13 | "wires": [ 14 | [], 15 | [ 16 | "e956691b.e03bf8" 17 | ] 18 | ] 19 | }, 20 | { 21 | "id": "e956691b.e03bf8", 22 | "type": "change", 23 | "z": "5d02649b.fb444c", 24 | "name": "Andi weg", 25 | "rules": [ 26 | { 27 | "t": "set", 28 | "p": "andigone", 29 | "pt": "global", 30 | "to": "true", 31 | "tot": "bool" 32 | } 33 | ], 34 | "action": "", 35 | "property": "", 36 | "from": "", 37 | "to": "", 38 | "reg": false, 39 | "x": 540, 40 | "y": 400, 41 | "wires": [ 42 | [] 43 | ] 44 | }, 45 | { 46 | "id": "6e032082.da999", 47 | "type": "change", 48 | "z": "5d02649b.fb444c", 49 | "name": "Andi da", 50 | "rules": [ 51 | { 52 | "t": "set", 53 | "p": "andigone", 54 | "pt": "global", 55 | "to": "false", 56 | "tot": "bool" 57 | } 58 | ], 59 | "action": "", 60 | "property": "", 61 | "from": "", 62 | "to": "", 63 | "reg": false, 64 | "x": 900, 65 | "y": 140, 66 | "wires": [ 67 | [] 68 | ] 69 | }, 70 | { 71 | "id": "5c77875e.155398", 72 | "type": "delay", 73 | "z": "5d02649b.fb444c", 74 | "name": "15 Sekunden verzögern", 75 | "pauseType": "delay", 76 | "timeout": "5", 77 | "timeoutUnits": "seconds", 78 | "rate": "1", 79 | "nbRateUnits": "1", 80 | "rateUnits": "second", 81 | "randomFirst": "1", 82 | "randomLast": "5", 83 | "randomUnits": "seconds", 84 | "drop": false, 85 | "x": 710, 86 | "y": 140, 87 | "wires": [ 88 | [ 89 | "6e032082.da999" 90 | ] 91 | ] 92 | }, 93 | { 94 | "id": "8baf20a9.46355", 95 | "type": "change", 96 | "z": "5d02649b.fb444c", 97 | "name": "Lampe an", 98 | "rules": [ 99 | { 100 | "t": "set", 101 | "p": "payload", 102 | "pt": "msg", 103 | "to": "on", 104 | "tot": "str" 105 | } 106 | ], 107 | "action": "", 108 | "property": "", 109 | "from": "", 110 | "to": "", 111 | "reg": false, 112 | "x": 570, 113 | "y": 200, 114 | "wires": [ 115 | [ 116 | "22564a0.73b52b6", 117 | "5c77875e.155398" 118 | ] 119 | ] 120 | }, 121 | { 122 | "id": "22564a0.73b52b6", 123 | "type": "switch", 124 | "z": "5d02649b.fb444c", 125 | "name": "Andi weg gewesen?", 126 | "property": "andigone", 127 | "propertyType": "global", 128 | "rules": [ 129 | { 130 | "t": "true" 131 | } 132 | ], 133 | "checkall": "true", 134 | "repair": false, 135 | "outputs": 1, 136 | "x": 600, 137 | "y": 260, 138 | "wires": [ 139 | [ 140 | "1f6843f1.0e3d4c", 141 | "a0406f0c.95881" 142 | ] 143 | ] 144 | }, 145 | { 146 | "id": "2d309c97.388414", 147 | "type": "stoptimer", 148 | "z": "5d02649b.fb444c", 149 | "duration": "15", 150 | "units": "Minute", 151 | "payloadtype": "num", 152 | "payloadval": "0", 153 | "name": "", 154 | "x": 900, 155 | "y": 260, 156 | "wires": [ 157 | [ 158 | "a0406f0c.95881" 159 | ], 160 | [] 161 | ] 162 | }, 163 | { 164 | "id": "1f6843f1.0e3d4c", 165 | "type": "change", 166 | "z": "5d02649b.fb444c", 167 | "name": "Lampe aus", 168 | "rules": [ 169 | { 170 | "t": "set", 171 | "p": "payload", 172 | "pt": "msg", 173 | "to": "off", 174 | "tot": "str" 175 | } 176 | ], 177 | "action": "", 178 | "property": "", 179 | "from": "", 180 | "to": "", 181 | "reg": false, 182 | "x": 790, 183 | "y": 200, 184 | "wires": [ 185 | [ 186 | "2d309c97.388414" 187 | ] 188 | ] 189 | }, 190 | { 191 | "id": "88c5cf19.a95", 192 | "type": "scan ble", 193 | "z": "5d02649b.fb444c", 194 | "uuids": "", 195 | "duplicates": true, 196 | "name": "", 197 | "x": 170, 198 | "y": 200, 199 | "wires": [ 200 | [ 201 | "e53760f2.e5f97", 202 | "a26189cc.525328" 203 | ] 204 | ] 205 | }, 206 | { 207 | "id": "e53760f2.e5f97", 208 | "type": "switch", 209 | "z": "5d02649b.fb444c", 210 | "name": "Mac", 211 | "property": "payload.peripheralUuid", 212 | "propertyType": "msg", 213 | "rules": [ 214 | { 215 | "t": "eq", 216 | "v": "1234567", 217 | "vt": "str" 218 | } 219 | ], 220 | "checkall": "true", 221 | "repair": false, 222 | "outputs": 1, 223 | "x": 370, 224 | "y": 200, 225 | "wires": [ 226 | [ 227 | "e3d17c9b.8c9a1", 228 | "8baf20a9.46355" 229 | ] 230 | ] 231 | }, 232 | { 233 | "id": "a26189cc.525328", 234 | "type": "switch", 235 | "z": "5d02649b.fb444c", 236 | "name": "UUID", 237 | "property": "advertisement.serviceUuids[0]", 238 | "propertyType": "msg", 239 | "rules": [ 240 | { 241 | "t": "cont", 242 | "v": "12345678", 243 | "vt": "str" 244 | } 245 | ], 246 | "checkall": "true", 247 | "repair": false, 248 | "outputs": 1, 249 | "x": 370, 250 | "y": 240, 251 | "wires": [ 252 | [ 253 | "8baf20a9.46355", 254 | "e3d17c9b.8c9a1" 255 | ] 256 | ] 257 | } 258 | ] 259 | -------------------------------------------------------------------------------- /magazine/c-t 5-19- P. 134 - Fritzbox/call-alarm.json: -------------------------------------------------------------------------------- 1 | [{"id":"62aff020.e27138","type":"fritzbox-callmonitor","z":"f55dfee0.3d52a","device":"f80c9836.abbe08","name":"","topic":"","x":180,"y":360,"wires":[["a9b07c0e.ec3ab8"]]},{"id":"d3341672.f6b388","type":"mqtt out","z":"f55dfee0.3d52a","name":"","topic":"zigbee2mqtt/Lampe/set","qos":"","retain":"","broker":"c0bb0e5d.94f8d","x":1110,"y":360,"wires":[]},{"id":"761fbcbf.27986c","type":"switch","z":"f55dfee0.3d52a","name":"Richtige Nummer?","property":"payload.callee","propertyType":"msg","rules":[{"t":"eq","v":"123456","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":650,"y":360,"wires":[["bc905b72.5361a"]]},{"id":"bc905b72.5361a","type":"change","z":"f55dfee0.3d52a","name":"Hue Blinken lassen","rules":[{"t":"set","p":"payload","pt":"msg","to":"{\"alert\": \"lselect\"}","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":870,"y":360,"wires":[["d3341672.f6b388"]]},{"id":"851cb102.69333","type":"comment","z":"f55dfee0.3d52a","name":"Optischer Anruf-Hinweis","info":"","x":190,"y":320,"wires":[]},{"id":"a9b07c0e.ec3ab8","type":"switch","z":"f55dfee0.3d52a","name":"Eingehender Anruf?","property":"payload.type","propertyType":"msg","rules":[{"t":"eq","v":"INBOUND","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":420,"y":360,"wires":[["761fbcbf.27986c"]]},{"id":"f80c9836.abbe08","type":"fritzbox-config","z":"","name":"Fritzbox","host":"fritz.box","port":"49443","ssl":true},{"id":"c0bb0e5d.94f8d","type":"mqtt-broker","z":"","name":"MQTT","broker":"mother","port":"1883","clientid":"nodered","usetls":false,"compatmode":false,"keepalive":"60","cleansession":true,"birthTopic":"domoticz/bridge/state","birthQos":"0","birthPayload":"online","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""}] 2 | -------------------------------------------------------------------------------- /magazine/c-t 5-19- P. 134 - Fritzbox/fritz-plug-temp-power.json: -------------------------------------------------------------------------------- 1 | [{"id":"5fb32371.4cf27c","type":"inject","z":"f55dfee0.3d52a","name":"","topic":"","payload":"{\"NewAIN\":\"1234 1234\"}","payloadType":"json","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":170,"y":720,"wires":[["996e6147.75396"]]},{"id":"996e6147.75396","type":"fritzbox-in","z":"f55dfee0.3d52a","device":"f80c9836.abbe08","name":"","service":"urn:dslforum-org:service:X_AVM-DE_Homeauto:1","action":"GetSpecificDeviceInfos","arguments":"{\"NewAIN\":\"value\"}","x":360,"y":720,"wires":[["1dece51.7093c9b"]]},{"id":"f14f4561.b2c3d","type":"ui_text","z":"f55dfee0.3d52a","group":"df96cda8.b3afb8","order":10,"width":0,"height":0,"name":"","label":"text","format":"{{msg.payload}}","layout":"row-spread","x":690,"y":720,"wires":[]},{"id":"1dece51.7093c9b","type":"template","z":"f55dfee0.3d52a","name":"","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"Power usage: {{payload.NewMultimeterPower}}\nTemperature: {{payload.NewTemperatureCelsius}}","output":"str","x":520,"y":720,"wires":[["f14f4561.b2c3d"]]},{"id":"f80c9836.abbe08","type":"fritzbox-config","z":"","name":"Fritzbox","host":"fritz.box","port":"49443","ssl":true},{"id":"df96cda8.b3afb8","type":"ui_group","z":"","name":"Schlafzimmer","tab":"b1e9e8c2.7f392","order":1,"disp":true,"width":"6","collapse":false},{"id":"b1e9e8c2.7f392","type":"ui_tab","z":"","name":"Dashboard","icon":"settings_power","order":1}] 2 | -------------------------------------------------------------------------------- /magazine/c-t 5-19- P. 134 - Fritzbox/fritz-plug.json: -------------------------------------------------------------------------------- 1 | [{"id":"8a3973c7.a83b58","type":"ui_switch","z":"f55dfee0.3d52a","name":"Fritz-Schalter","label":"Fritz-Schalter","tooltip":"","group":"df96cda8.b3afb8","order":10,"width":0,"height":0,"passthru":true,"decouple":"false","topic":"","style":"","onvalue":"{\"NewAIN\":\"1234\",\"NewSwitchState\":\"ON\"}","onvalueType":"json","onicon":"","oncolor":"","offvalue":"{\"NewAIN\":\"1234\",\"NewSwitchState\":\"OFF\"}","offvalueType":"str","officon":"","offcolor":"","x":160,"y":480,"wires":[["f5b1e6cd.496e4"]]},{"id":"f5b1e6cd.496e4","type":"fritzbox-in","z":"f55dfee0.3d52a","device":"f80c9836.abbe08","name":"Schalter setzen","service":"urn:dslforum-org:service:X_AVM-DE_Homeauto:1","action":"SetSwitch","arguments":"{\"NewAIN\":\"value\",\"NewSwitchState\":\"value\"}","x":380,"y":480,"wires":[[]]},{"id":"6526ed0.536c194","type":"comment","z":"f55dfee0.3d52a","name":"Fritz-Smartplug schalten","info":"","x":190,"y":440,"wires":[]},{"id":"df96cda8.b3afb8","type":"ui_group","z":"","name":"Schlafzimmer","tab":"b1e9e8c2.7f392","order":1,"disp":true,"width":"6","collapse":false},{"id":"f80c9836.abbe08","type":"fritzbox-config","z":"","name":"Fritzbox","host":"fritz.box","port":"49443","ssl":true},{"id":"b1e9e8c2.7f392","type":"ui_tab","z":"","name":"Dashboard","icon":"settings_power","order":1}] 2 | -------------------------------------------------------------------------------- /magazine/c-t 5-19- P. 134 - Fritzbox/guest-wifi-password.json: -------------------------------------------------------------------------------- 1 | [{"id":"aa37b56e.3c3e88","type":"fritzbox-in","z":"f55dfee0.3d52a","device":"f80c9836.abbe08","name":"Gäste-WLAN Passwort setzen","service":"urn:dslforum-org:service:WLANConfiguration:3","action":"SetSecurityKeys","arguments":"{\"NewWEPKey0\":\"value\",\"NewWEPKey1\":\"value\",\"NewWEPKey2\":\"value\",\"NewWEPKey3\":\"value\",\"NewPreSharedKey\":\"value\",\"NewKeyPassphrase\":\"value\"}","x":770,"y":380,"wires":[[]]},{"id":"6bd30a33.617b9c","type":"comment","z":"f55dfee0.3d52a","name":"Gäste-WLAN-Passwort","info":"","x":160,"y":340,"wires":[]},{"id":"eef3f16b.bda26","type":"ui_button","z":"f55dfee0.3d52a","name":"Neues Gäste-WLAN-Passwort","group":"3d638c26.a26804","order":10,"width":0,"height":0,"passthru":false,"label":"Neues Gäste-WLAN-Passwort","tooltip":"","color":"","bgcolor":"","icon":"","payload":"","payloadType":"str","topic":"","x":190,"y":380,"wires":[["69fa7884.18cc48"]]},{"id":"69fa7884.18cc48","type":"function","z":"f55dfee0.3d52a","name":"Zufälliges Passwort","func":"function gen_pw() {\n var text = \"\";\n var possible = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\";\n\n for (var i = 0; i < 15; i++)\n text += possible.charAt(Math.floor(Math.random() * possible.length));\n\n return text;\n}\n\nvar new_pw = gen_pw()\n\nmsg.pw = new_pw\nmsg.payload = {\n \"NewWEPKey0\":\"\",\n \"NewWEPKey1\":\"\",\n \"NewWEPKey2\":\"\",\n \"NewWEPKey3\":\"\",\n \"NewPreSharedKey\":\"\",\n \"NewKeyPassphrase\": new_pw\n }\n\nreturn msg;","outputs":1,"noerr":0,"x":480,"y":380,"wires":[["aa37b56e.3c3e88","ecc8edf9.27039"]]},{"id":"ecc8edf9.27039","type":"ui_text","z":"f55dfee0.3d52a","group":"3d638c26.a26804","order":1,"width":0,"height":0,"name":"Passwort-Anzeige","label":"Gäste-WLAN-Passwort","format":"{{msg.pw}}","layout":"col-center","x":730,"y":420,"wires":[]},{"id":"f80c9836.abbe08","type":"fritzbox-config","z":"","name":"Fritzbox","host":"fritz.box","port":"49443","ssl":true},{"id":"3d638c26.a26804","type":"ui_group","z":"","name":"Rest","tab":"9100aee7.f3e15","order":3,"disp":true,"width":"6","collapse":false},{"id":"9100aee7.f3e15","type":"ui_tab","z":"","name":"Dashboard","icon":"settings_power","order":1}] 2 | -------------------------------------------------------------------------------- /magazine/c-t 5-19- P. 134 - Fritzbox/guest-wifi.json: -------------------------------------------------------------------------------- 1 | [{"id":"31b07781.2a6778","type":"fritzbox-in","z":"3876b190.308b1e","device":"8865754b.3590b8","name":"Gäste-WLAN-Konfiguration","service":"urn:dslforum-org:service:WLANConfiguration:3","action":"SetEnable","arguments":"{\"NewEnable\":\"value\"}","x":1740,"y":440,"wires":[["4a171c43.c73604"]]},{"id":"4a171c43.c73604","type":"fritzbox-in","z":"3876b190.308b1e","device":"8865754b.3590b8","name":"Gäste-WLAN Status","service":"urn:dslforum-org:service:WLANConfiguration:1","action":"GetInfo","arguments":"{}","x":960,"y":440,"wires":[["1f8b95b3.06cefa"]]},{"id":"444f1880.8c4dd8","type":"inject","z":"3876b190.308b1e","name":"Trigger","topic":"","payload":"","payloadType":"date","repeat":"300","crontab":"","once":true,"onceDelay":"10","x":760,"y":440,"wires":[["4a171c43.c73604"]]},{"id":"45820898.6e9518","type":"ui_switch","z":"3876b190.308b1e","name":"","label":"Gäste-WLAN Schalter","tooltip":"","group":"ce10d1d9.e47f","order":0,"width":0,"height":0,"passthru":false,"decouple":"true","topic":"","style":"","onvalue":"{\"NewEnable\":\"1\"}","onvalueType":"str","onicon":"","oncolor":"","offvalue":"{\"NewEnable\":\"0\"}","offvalueType":"str","officon":"","offcolor":"","x":1320,"y":440,"wires":[["831ad306.2c6b6"]]},{"id":"831ad306.2c6b6","type":"json","z":"3876b190.308b1e","name":"Konvertierung","property":"payload","action":"","pretty":true,"x":1520,"y":440,"wires":[["31b07781.2a6778"]]},{"id":"1f8b95b3.06cefa","type":"template","z":"3876b190.308b1e","name":"Format","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"{\"NewEnable\":\"{{payload.NewEnable}}\"}","output":"str","x":1140,"y":440,"wires":[["45820898.6e9518"]]},{"id":"35d2a05a.08c34","type":"comment","z":"3876b190.308b1e","name":"Gäste-WLAN","info":"","x":750,"y":400,"wires":[]},{"id":"8865754b.3590b8","type":"fritzbox-config","z":"","name":"Fritzbox","host":"fritz.box","port":"49443","ssl":true},{"id":"ce10d1d9.e47f","type":"ui_group","z":"","name":"Rest","tab":"825c2da.2b80ed","order":3,"disp":true,"width":"6","collapse":false},{"id":"825c2da.2b80ed","type":"ui_tab","z":"","name":"Dashboard","icon":"settings_power","order":1}] 2 | -------------------------------------------------------------------------------- /magazine/c-t 5-19- P. 134 - Fritzbox/presence-detection.json: -------------------------------------------------------------------------------- 1 | [{"id":"b9859aff.a85028","type":"fritzbox-in","z":"3876b190.308b1e","device":"8865754b.3590b8","name":"","service":"urn:dslforum-org:service:Hosts:1","action":"GetSpecificHostEntry","arguments":"{\"NewMACAddress\":\"value\"}","x":950,"y":320,"wires":[["8d6e2a24.70d788"]]},{"id":"abb1fc34.7847d","type":"inject","z":"3876b190.308b1e","name":"Ein Handy","topic":"","payload":"{\"NewMACAddress\":\"00:80:41:ae:fd:7e\"}","payloadType":"json","repeat":"180","crontab":"","once":true,"onceDelay":"10","x":780,"y":320,"wires":[["b9859aff.a85028"]]},{"id":"5a2ff890.dcfed8","type":"mqtt out","z":"3876b190.308b1e","name":"Jemand zu Hause?","topic":"user/Anyone/present","qos":"0","retain":"true","broker":"aaacf235.d430c","x":1290,"y":320,"wires":[]},{"id":"8d6e2a24.70d788","type":"change","z":"3876b190.308b1e","name":"Move","rules":[{"t":"move","p":"payload.NewActive","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":1110,"y":320,"wires":[["5a2ff890.dcfed8"]]},{"id":"9423cc0d.f851c","type":"comment","z":"3876b190.308b1e","name":"Präsenzerkennung","info":"","x":770,"y":280,"wires":[]},{"id":"8865754b.3590b8","type":"fritzbox-config","z":"","name":"Fritzbox","host":"fritz.box","port":"49443","ssl":true},{"id":"aaacf235.d430c","type":"mqtt-broker","z":"","name":"MQTT","broker":"mother","port":"1883","clientid":"nodered","usetls":false,"compatmode":false,"keepalive":"60","cleansession":true,"birthTopic":"domoticz/bridge/state","birthQos":"0","birthPayload":"online","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""}] 2 | -------------------------------------------------------------------------------- /unrelated/bathroom-fan/bathroom-fan.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "id": "6a38226c.0ca55c", 4 | "type": "mqtt out", 5 | "z": "b7c42280.2fd76", 6 | "name": "Badlüfter", 7 | "topic": "smarthome/bad/relay/0/set", 8 | "qos": "", 9 | "retain": "", 10 | "broker": "25f7d1f2.c3f19e", 11 | "x": 1140, 12 | "y": 1040, 13 | "wires": [] 14 | }, 15 | { 16 | "id": "644d1e71.495d", 17 | "type": "switch", 18 | "z": "b7c42280.2fd76", 19 | "name": "", 20 | "property": "payload.humidity", 21 | "propertyType": "msg", 22 | "rules": [ 23 | { 24 | "t": "gte", 25 | "v": "65", 26 | "vt": "str" 27 | } 28 | ], 29 | "checkall": "true", 30 | "repair": false, 31 | "outputs": 1, 32 | "x": 370, 33 | "y": 1220, 34 | "wires": [ 35 | [ 36 | "e113c3b4.81731", 37 | "a0c038db.59ac18" 38 | ] 39 | ] 40 | }, 41 | { 42 | "id": "e113c3b4.81731", 43 | "type": "change", 44 | "z": "b7c42280.2fd76", 45 | "name": "Badlüfter an", 46 | "rules": [ 47 | { 48 | "t": "set", 49 | "p": "payload", 50 | "pt": "msg", 51 | "to": "1", 52 | "tot": "str" 53 | } 54 | ], 55 | "action": "", 56 | "property": "", 57 | "from": "", 58 | "to": "", 59 | "reg": false, 60 | "x": 590, 61 | "y": 1220, 62 | "wires": [ 63 | [ 64 | "6a38226c.0ca55c" 65 | ] 66 | ] 67 | }, 68 | { 69 | "id": "3412bc95.4d2a04", 70 | "type": "mqtt out", 71 | "z": "b7c42280.2fd76", 72 | "name": "Badtemperatur", 73 | "topic": "smarthome/badsteckdose/temperature", 74 | "qos": "0", 75 | "retain": "true", 76 | "broker": "25f7d1f2.c3f19e", 77 | "x": 640, 78 | "y": 1080, 79 | "wires": [] 80 | }, 81 | { 82 | "id": "fae805d3.775f68", 83 | "type": "change", 84 | "z": "b7c42280.2fd76", 85 | "name": "Badtemperatur", 86 | "rules": [ 87 | { 88 | "t": "move", 89 | "p": "payload.temperature", 90 | "pt": "msg", 91 | "to": "payload", 92 | "tot": "msg" 93 | } 94 | ], 95 | "action": "", 96 | "property": "", 97 | "from": "", 98 | "to": "", 99 | "reg": false, 100 | "x": 413.01441955566406, 101 | "y": 1078.8694591522217, 102 | "wires": [ 103 | [ 104 | "3412bc95.4d2a04" 105 | ] 106 | ] 107 | }, 108 | { 109 | "id": "6dab3aad.7ba054", 110 | "type": "change", 111 | "z": "b7c42280.2fd76", 112 | "name": "Badluftfeuchtigkeit", 113 | "rules": [ 114 | { 115 | "t": "move", 116 | "p": "payload.humidity", 117 | "pt": "msg", 118 | "to": "payload", 119 | "tot": "msg" 120 | } 121 | ], 122 | "action": "", 123 | "property": "", 124 | "from": "", 125 | "to": "", 126 | "reg": false, 127 | "x": 419.23900413513184, 128 | "y": 1140.5342049598694, 129 | "wires": [ 130 | [ 131 | "9365cd6c.b8a06" 132 | ] 133 | ] 134 | }, 135 | { 136 | "id": "9365cd6c.b8a06", 137 | "type": "mqtt out", 138 | "z": "b7c42280.2fd76", 139 | "name": "Badluftfeuchtigkeit", 140 | "topic": "smarthome/badsteckdose/humidity", 141 | "qos": "0", 142 | "retain": "true", 143 | "broker": "25f7d1f2.c3f19e", 144 | "x": 650, 145 | "y": 1140, 146 | "wires": [] 147 | }, 148 | { 149 | "id": "6eeaa4e4.9b4b0c", 150 | "type": "change", 151 | "z": "b7c42280.2fd76", 152 | "name": "Fanmanual:1", 153 | "rules": [ 154 | { 155 | "t": "set", 156 | "p": "fanmanual", 157 | "pt": "global", 158 | "to": "1", 159 | "tot": "str" 160 | } 161 | ], 162 | "action": "", 163 | "property": "", 164 | "from": "", 165 | "to": "", 166 | "reg": false, 167 | "x": 730, 168 | "y": 760, 169 | "wires": [ 170 | [] 171 | ] 172 | }, 173 | { 174 | "id": "50390ccb.50b0c4", 175 | "type": "change", 176 | "z": "b7c42280.2fd76", 177 | "name": "Fanmanual:0", 178 | "rules": [ 179 | { 180 | "t": "set", 181 | "p": "fanmanual", 182 | "pt": "global", 183 | "to": "0", 184 | "tot": "str" 185 | } 186 | ], 187 | "action": "", 188 | "property": "", 189 | "from": "", 190 | "to": "", 191 | "reg": false, 192 | "x": 830, 193 | "y": 1000, 194 | "wires": [ 195 | [] 196 | ] 197 | }, 198 | { 199 | "id": "5b922d0e.15ec94", 200 | "type": "change", 201 | "z": "b7c42280.2fd76", 202 | "name": "Badlüfter aus", 203 | "rules": [ 204 | { 205 | "t": "set", 206 | "p": "payload", 207 | "pt": "msg", 208 | "to": "0", 209 | "tot": "str" 210 | } 211 | ], 212 | "action": "", 213 | "property": "", 214 | "from": "", 215 | "to": "", 216 | "reg": false, 217 | "x": 650, 218 | "y": 1280, 219 | "wires": [ 220 | [ 221 | "4bc55932.21d258" 222 | ] 223 | ] 224 | }, 225 | { 226 | "id": "362f404a.a2e42", 227 | "type": "link in", 228 | "z": "b7c42280.2fd76", 229 | "name": "", 230 | "links": [ 231 | "22f9ff3c.50b7a" 232 | ], 233 | "x": 235, 234 | "y": 1120, 235 | "wires": [ 236 | [ 237 | "644d1e71.495d", 238 | "6dab3aad.7ba054", 239 | "fae805d3.775f68" 240 | ] 241 | ] 242 | }, 243 | { 244 | "id": "bbfe2a34.97acd8", 245 | "type": "mqtt in", 246 | "z": "b7c42280.2fd76", 247 | "name": "", 248 | "topic": "zigbee2mqtt/knopf", 249 | "qos": "2", 250 | "broker": "25f7d1f2.c3f19e", 251 | "x": 230, 252 | "y": 820, 253 | "wires": [ 254 | [ 255 | "dc60c719.c18d58" 256 | ] 257 | ] 258 | }, 259 | { 260 | "id": "dc60c719.c18d58", 261 | "type": "json", 262 | "z": "b7c42280.2fd76", 263 | "name": "", 264 | "property": "payload", 265 | "action": "", 266 | "pretty": false, 267 | "x": 430, 268 | "y": 820, 269 | "wires": [ 270 | [ 271 | "cfa74663.011078", 272 | "fd5595fa.282a88" 273 | ] 274 | ] 275 | }, 276 | { 277 | "id": "cfa74663.011078", 278 | "type": "switch", 279 | "z": "b7c42280.2fd76", 280 | "name": "Click", 281 | "property": "payload.click", 282 | "propertyType": "msg", 283 | "rules": [ 284 | { 285 | "t": "eq", 286 | "v": "single", 287 | "vt": "str" 288 | }, 289 | { 290 | "t": "eq", 291 | "v": "double", 292 | "vt": "str" 293 | } 294 | ], 295 | "checkall": "true", 296 | "repair": false, 297 | "outputs": 2, 298 | "x": 570, 299 | "y": 820, 300 | "wires": [ 301 | [ 302 | "6eeaa4e4.9b4b0c", 303 | "80fff36c.ad761", 304 | "138b98e5.0b3347" 305 | ], 306 | [ 307 | "6eeaa4e4.9b4b0c", 308 | "80fff36c.ad761", 309 | "138b98e5.0b3347" 310 | ] 311 | ] 312 | }, 313 | { 314 | "id": "fd5595fa.282a88", 315 | "type": "switch", 316 | "z": "b7c42280.2fd76", 317 | "name": "Action", 318 | "property": "payload.action", 319 | "propertyType": "msg", 320 | "rules": [ 321 | { 322 | "t": "eq", 323 | "v": "hold", 324 | "vt": "str" 325 | }, 326 | { 327 | "t": "eq", 328 | "v": "release", 329 | "vt": "str" 330 | } 331 | ], 332 | "checkall": "true", 333 | "repair": false, 334 | "outputs": 2, 335 | "x": 430, 336 | "y": 920, 337 | "wires": [ 338 | [ 339 | "269ee51f.94b78a", 340 | "50390ccb.50b0c4", 341 | "ed20b28b.b7934" 342 | ], 343 | [] 344 | ] 345 | }, 346 | { 347 | "id": "80fff36c.ad761", 348 | "type": "stoptimer", 349 | "z": "b7c42280.2fd76", 350 | "duration": "15", 351 | "units": "Minute", 352 | "payloadtype": "num", 353 | "payloadval": "0", 354 | "name": "", 355 | "x": 860, 356 | "y": 800, 357 | "wires": [ 358 | [ 359 | "269ee51f.94b78a", 360 | "50390ccb.50b0c4" 361 | ], 362 | [] 363 | ] 364 | }, 365 | { 366 | "id": "138b98e5.0b3347", 367 | "type": "change", 368 | "z": "b7c42280.2fd76", 369 | "name": "Badlüfter an", 370 | "rules": [ 371 | { 372 | "t": "set", 373 | "p": "payload", 374 | "pt": "msg", 375 | "to": "1", 376 | "tot": "str" 377 | } 378 | ], 379 | "action": "", 380 | "property": "", 381 | "from": "", 382 | "to": "", 383 | "reg": false, 384 | "x": 990, 385 | "y": 860, 386 | "wires": [ 387 | [ 388 | "6a38226c.0ca55c" 389 | ] 390 | ] 391 | }, 392 | { 393 | "id": "269ee51f.94b78a", 394 | "type": "change", 395 | "z": "b7c42280.2fd76", 396 | "name": "Badlüfter aus", 397 | "rules": [ 398 | { 399 | "t": "set", 400 | "p": "payload", 401 | "pt": "msg", 402 | "to": "0", 403 | "tot": "str" 404 | } 405 | ], 406 | "action": "", 407 | "property": "", 408 | "from": "", 409 | "to": "", 410 | "reg": false, 411 | "x": 990, 412 | "y": 940, 413 | "wires": [ 414 | [ 415 | "6a38226c.0ca55c" 416 | ] 417 | ] 418 | }, 419 | { 420 | "id": "a0c038db.59ac18", 421 | "type": "stoptimer", 422 | "z": "b7c42280.2fd76", 423 | "duration": "15", 424 | "units": "Minute", 425 | "payloadtype": "num", 426 | "payloadval": "0", 427 | "name": "", 428 | "x": 460, 429 | "y": 1280, 430 | "wires": [ 431 | [ 432 | "5b922d0e.15ec94" 433 | ], 434 | [] 435 | ] 436 | }, 437 | { 438 | "id": "ed20b28b.b7934", 439 | "type": "change", 440 | "z": "b7c42280.2fd76", 441 | "name": "Stop timer", 442 | "rules": [ 443 | { 444 | "t": "set", 445 | "p": "payload", 446 | "pt": "msg", 447 | "to": "stop", 448 | "tot": "str" 449 | } 450 | ], 451 | "action": "", 452 | "property": "", 453 | "from": "", 454 | "to": "", 455 | "reg": false, 456 | "x": 670, 457 | "y": 880, 458 | "wires": [ 459 | [ 460 | "80fff36c.ad761" 461 | ] 462 | ] 463 | }, 464 | { 465 | "id": "4bc55932.21d258", 466 | "type": "switch", 467 | "z": "b7c42280.2fd76", 468 | "name": "Fanmanual?", 469 | "property": "fanmanual", 470 | "propertyType": "global", 471 | "rules": [ 472 | { 473 | "t": "eq", 474 | "v": "0", 475 | "vt": "str" 476 | } 477 | ], 478 | "checkall": "true", 479 | "repair": false, 480 | "outputs": 1, 481 | "x": 810, 482 | "y": 1280, 483 | "wires": [ 484 | [ 485 | "6a38226c.0ca55c" 486 | ] 487 | ] 488 | }, 489 | { 490 | "id": "25f7d1f2.c3f19e", 491 | "type": "mqtt-broker", 492 | "z": "", 493 | "name": "IOT-Pi", 494 | "broker": "127.0.0.1", 495 | "port": "1883", 496 | "clientid": "", 497 | "usetls": false, 498 | "compatmode": true, 499 | "keepalive": "60", 500 | "cleansession": true, 501 | "birthTopic": "", 502 | "birthQos": "0", 503 | "birthPayload": "", 504 | "closeTopic": "", 505 | "closePayload": "", 506 | "willTopic": "", 507 | "willQos": "0", 508 | "willPayload": "" 509 | } 510 | ] 511 | --------------------------------------------------------------------------------