- Home
- Deutsch
- Skripten / Logik
- Node-Red
- [Gelöst] Benötige Hilfe mit Node-Red in Verbindung mit homee
[Gelöst] Benötige Hilfe mit Node-Red in Verbindung mit homee
-
@oli Na wenn du den Flow importiert hast, dann siehst ja (zumindest für die Zukunft, dass ich für die Analyse nur die Daten in einer Inject NOde brauche). Aber auch von dem Gesamtflow:
Gut hier weiss ich nicht
da Du das ausgeixt hast - ob der Name URL Zeichen enthielt.
Aber beim Aussschließen von Geräten kann man sich doch komplett sparen. Ich habe zumindest in dem ganzen settings Objekt KEINE Eigenschaft "id" entdeckt - also ist diese Node sinnlos.
EDIT: Berichtigung - Du kannst doch Objekte direkt miteinander vergleichen. Sorry.
Also bei Dir alles OK.
- war mein Fehler. Geht sogar alle Hierarchien durch.
Also das funktioniert:
Nochmals sorry.
-
@mickym
ich bräuchte wieder mal deine UnterstützungWas habe ich vor?
- Auslesen der Logdatei
- Filtern nach "level", über einen Datenpunkt in ioBroker, Inhalt des Datenpunktes kann sein "any" für alle Logeinträge, "info", "error" und "warning"
- Nur eine gewisse Anzahl (max 30) an Einträgen nach dem Filtern anzeigen
- Diese Anzahl an Einträgen in einen Datenpunkt schreiben
- Flow ausführen, wenn sich der Filter-Datenpunkt ändert
Ich kann die Logdatei auslesen und in einen Tabelle schreiben, aber wie mache ich das mit dem Filtern und der Anzahl?
Hier mal der Flow:
[ { "id": "b86c034bc869f860", "type": "tab", "label": "Flow 1", "disabled": false, "info": "", "env": [] }, { "id": "bafe242abaf4e3e0", "type": "inject", "z": "b86c034bc869f860", "name": "", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "[{\"datetime\":\"2023-03-18 11:51:46\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:52:08\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:52:29\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:52:52\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:53:13\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:53:40\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:54:01\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:54:22\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:54:42\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:55:03\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:55:24\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:55:46\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:56:07\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:56:28\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:56:51\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:57:12\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:57:33\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:57:59\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:58:34\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <resolve geolocation> response: timing: 15.001 s error code: 8 error message: Connection timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 11:58:34\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 11:59:10\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <resolve geolocation> response: timing: 15.2472 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 11:59:10\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 11:59:31\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:00:08\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <resolve geolocation> response: timing: 15.0002 s error code: 8 error message: Operation timed out after 15000 milliseconds with 0 bytes received http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:00:08\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:00:18\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" ⚠️ <homee proxy> no connection\"},{\"datetime\":\"2023-03-18 12:00:30\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:00:53\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:01:13\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:01:18\",\"topic\":\"MAIN\",\"level\":\"info\",\"message\":\" 📡 <homee proxy> connection established 👌\"},{\"datetime\":\"2023-03-18 12:01:19\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" <system call> command: \\\"/etc/init.d/S49chrony restart\\\" exited with code: 1\"},{\"datetime\":\"2023-03-18 12:01:40\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:01:58\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" ⚠️ <homee proxy> no connection\"},{\"datetime\":\"2023-03-18 12:02:02\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:02:25\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:04:05\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:05:58\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:06:18\",\"topic\":\"MAIN\",\"level\":\"info\",\"message\":\" 📡 <homee proxy> connection established 👌\"},{\"datetime\":\"2023-03-18 12:06:19\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" <system call> command: \\\"/etc/init.d/S49chrony restart\\\" exited with code: 1\"},{\"datetime\":\"2023-03-18 12:06:19\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:06:38\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" ⚠️ <homee proxy> no connection\"},{\"datetime\":\"2023-03-18 12:06:51\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:08:07\",\"topic\":\"WEB\",\"level\":\"error\",\"message\":\" <resolve geolocation> response: timing: 50.0414 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:08:07\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:10:52\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <resolve geolocation> response: timing: 50.0297 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:10:52\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:11:13\",\"topic\":\"WEB\",\"level\":\"error\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:11:42\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:12:07\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <netatmo cpr get> response: timing: 15.0151 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:12:07\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <netatmo get weather station data> request timed out\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <netatmo cpr get> response: timing: 15.0122 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <netatmo get camera data> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <netatmo get camera data> request timed out\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 29 unavailable\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set unavailable> EG / Wohnzimmer / Netatmo (nodeID:29) | reason refreshAttributes\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 30 unavailable\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set unavailable> Netatmo Aussenraum (nodeID:30) | reason refreshAttributes\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 31 unavailable\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set unavailable> EG / Büro / Netatmo (nodeID:31) | reason refreshAttributes\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 32 unavailable\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set unavailable> DG / Schlafzimmer / Netatmo (nodeID:32) | reason refreshAttributes\"},{\"datetime\":\"2023-03-18 12:12:47\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <netatmo cpr get> response: timing: 15.0049 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:12:47\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <netatmo get weather station data> request timed out\"},{\"datetime\":\"2023-03-18 12:12:58\",\"topic\":\"MAIN\",\"level\":\"info\",\"message\":\" 📡 <homee proxy> connection established 👌\"},{\"datetime\":\"2023-03-18 12:12:59\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" <system call> command: \\\"/etc/init.d/S49chrony restart\\\" exited with code: 1\"},{\"datetime\":\"2023-03-18 12:13:02\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <netatmo cpr get> response: timing: 15.0113 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:13:02\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <netatmo get camera data> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:13:02\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <netatmo get camera data> request timed out\"},{\"datetime\":\"2023-03-18 12:13:02\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 29 unavailable\"},{\"datetime\":\"2023-03-18 12:13:02\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 30 unavailable\"},{\"datetime\":\"2023-03-18 12:13:02\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 31 unavailable\"},{\"datetime\":\"2023-03-18 12:13:02\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 32 unavailable\"},{\"datetime\":\"2023-03-18 12:13:23\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:13:36\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set available> EG / Wohnzimmer / Netatmo (nodeID: 29) | reason refresh ok\"},{\"datetime\":\"2023-03-18 12:13:36\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set available> Netatmo Aussenraum (nodeID: 30) | reason refresh ok\"},{\"datetime\":\"2023-03-18 12:13:36\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set available> EG / Büro / Netatmo (nodeID: 31) | reason refresh ok\"},{\"datetime\":\"2023-03-18 12:13:36\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set available> DG / Schlafzimmer / Netatmo (nodeID: 32) | reason refresh ok\"},{\"datetime\":\"2023-03-18 12:13:44\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:14:06\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:14:30\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:14:53\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:15:14\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:15:39\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:16:00\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:16:22\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:16:44\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:17:05\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:17:26\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:17:47\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:18:09\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:18:29\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:18:56\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:19:16\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:19:37\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:19:58\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:20:20\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:20:41\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:21:02\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:21:24\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:21:50\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:22:11\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:22:32\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:22:53\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:23:14\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:23:39\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:24:01\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:24:22\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:24:43\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:24:58\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" ⚠️ <homee proxy> no connection\"},{\"datetime\":\"2023-03-18 12:25:04\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:25:25\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:25:38\",\"topic\":\"MAIN\",\"level\":\"info\",\"message\":\" 📡 <homee proxy> connection established 👌\"},{\"datetime\":\"2023-03-18 12:25:39\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" <system call> command: \\\"/etc/init.d/S49chrony restart\\\" exited with code: 1\"},{\"datetime\":\"2023-03-18 12:25:45\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:26:09\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:26:41\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:27:15\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:27:40\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:28:07\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:28:29\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:28:50\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:29:12\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:29:34\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:29:55\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:30:21\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:30:42\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:31:04\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:31:27\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:32:18\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <resolve geolocation> response: timing: 30.2498 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:32:18\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:32:58\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <resolve geolocation> response: timing: 20.0186 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:32:58\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:33:23\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:33:40\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <netatmo get weather station data> request failed (HTTP status code: 403): {\\\"error\\\":{\\\"code\\\":3,\\\"message\\\":\\\"Access token expired\\\"}}\"},{\"datetime\":\"2023-03-18 12:33:40\",\"topic\":\"O_AUTH2_CLIENT\",\"level\":\"info\",\"message\":\" ✅ <refresh access> access successfully refreshed\"},{\"datetime\":\"2023-03-18 12:33:44\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:34:09\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:34:31\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:35:06\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <resolve geolocation> response: timing: 15.0022 s error code: 8 error message: Operation timed out after 15001 milliseconds with 0 bytes received http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:35:06\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:35:28\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:35:49\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:36:14\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:36:49\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:37:20\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:37:42\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:38:02\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:38:27\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:38:54\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:39:15\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:39:52\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:40:23\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:40:45\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:41:06\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:41:27\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:41:48\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:42:17\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"}]", "payloadType": "json", "x": 190, "y": 140, "wires": [ [ "688bcd4b82f6fade" ] ] }, { "id": "ef455138a0ee4d91", "type": "debug", "z": "b86c034bc869f860", "name": "Logfile Tabelle", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 640, "y": 80, "wires": [] }, { "id": "fccb4af5d833ca96", "type": "json", "z": "b86c034bc869f860", "name": "Tabelle JSON", "property": "payload", "action": "str", "pretty": false, "x": 640, "y": 140, "wires": [ [] ] }, { "id": "688bcd4b82f6fade", "type": "change", "z": "b86c034bc869f860", "name": "Logfile Tabelle", "rules": [ { "t": "set", "p": "protocols", "pt": "msg", "to": "[{\"id\":\"error\",\"color\":\"red\"},{\"id\":\"warning\",\"color\":\"yellow\"},{\"id\":\"info\",\"color\":\"#8f8f8f\"}]", "tot": "json" }, { "t": "set", "p": "payload", "pt": "msg", "to": "payload.{\t \"datetime\" : datetime,\t \"topic\" : topic,\t \"level\" : ' <font color=\\\"' & $single($$.protocols, function($v){$v.id = level}).color & '\\\"> ' & level, \t \"message\" : message \t}", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 420, "y": 140, "wires": [ [ "fccb4af5d833ca96", "ef455138a0ee4d91" ] ] }, { "id": "0b4c7d376b9e7a79", "type": "ioBroker in", "z": "b86c034bc869f860", "name": "Logfile Auswahl Filter", "topic": "0_userdata.0.System.homee.Logfile.AuswahlFilter", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "fireOnStart": "false", "outFormat": "MQTT", "x": 180, "y": 280, "wires": [ [] ] } ]
-
@oli Nun zum Einen musst Du mal aufhören die HTML Formatierungen da rein zu machen, wenn Du mit den Daten arbeiten willst. Das ist halt ein Manko dieses Tabellen Widgets - aber man muss ja nicht alle Spalten anzeigen. Man kann das zwar wieder mit $contains machen - aber ich rate Dir einfach wenn Du nach severity filtern willst, dass Du eine extra Spalte level machst und dann noch eine mit der Du dann mit Deiner Formatierung arbeitest. Also ich hab mal ein level ohne Formatierung angelegt - wie gesagt solange Du hier immer HTML Formatierungen mitschleppen musst, würde ich halt unterschiedliche Spalten machen:
Anzeigen kannst Du dann level_d anstatt level - aber mit level wird gefiltert.
Oder alternativ - Du machst halt die Formatierung immer zum Schluss. Habe ich mal als Deine präferierte Lösung angenommen.
Wichtig ist, dass wenn Du die Anzahl begrenzen willst, ja wohl die neuesten Logeinträge sehen willst, deshalb habe ich mal absteigend nach datetime sortiert.
Das Auslesen der Logdatei habe ich mal in die Eigenschaft msg.log gemacht, somit ist die payload der Filter bzw. das level
[ { "id": "ab66ad002a717f0c", "type": "change", "z": "b86c034bc869f860", "name": "Log-Datei auslesen", "rules": [ { "t": "set", "p": "log", "pt": "msg", "to": "[{\"datetime\":\"2023-03-18 11:51:46\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:52:08\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:52:29\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:52:52\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:53:13\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:53:40\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:54:01\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:54:22\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:54:42\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:55:03\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:55:24\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:55:46\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:56:07\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:56:28\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:56:51\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:57:12\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:57:33\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:57:59\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 11:58:34\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <resolve geolocation> response: timing: 15.001 s error code: 8 error message: Connection timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 11:58:34\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 11:59:10\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <resolve geolocation> response: timing: 15.2472 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 11:59:10\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 11:59:31\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:00:08\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <resolve geolocation> response: timing: 15.0002 s error code: 8 error message: Operation timed out after 15000 milliseconds with 0 bytes received http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:00:08\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:00:18\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" ⚠️ <homee proxy> no connection\"},{\"datetime\":\"2023-03-18 12:00:30\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:00:53\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:01:13\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:01:18\",\"topic\":\"MAIN\",\"level\":\"info\",\"message\":\" 📡 <homee proxy> connection established 👌\"},{\"datetime\":\"2023-03-18 12:01:19\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" <system call> command: \\\"/etc/init.d/S49chrony restart\\\" exited with code: 1\"},{\"datetime\":\"2023-03-18 12:01:40\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:01:58\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" ⚠️ <homee proxy> no connection\"},{\"datetime\":\"2023-03-18 12:02:02\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:02:25\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:04:05\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:05:58\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:06:18\",\"topic\":\"MAIN\",\"level\":\"info\",\"message\":\" 📡 <homee proxy> connection established 👌\"},{\"datetime\":\"2023-03-18 12:06:19\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" <system call> command: \\\"/etc/init.d/S49chrony restart\\\" exited with code: 1\"},{\"datetime\":\"2023-03-18 12:06:19\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:06:38\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" ⚠️ <homee proxy> no connection\"},{\"datetime\":\"2023-03-18 12:06:51\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:08:07\",\"topic\":\"WEB\",\"level\":\"error\",\"message\":\" <resolve geolocation> response: timing: 50.0414 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:08:07\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:10:52\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <resolve geolocation> response: timing: 50.0297 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:10:52\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:11:13\",\"topic\":\"WEB\",\"level\":\"error\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:11:42\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:12:07\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <netatmo cpr get> response: timing: 15.0151 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:12:07\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <netatmo get weather station data> request timed out\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <netatmo cpr get> response: timing: 15.0122 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <netatmo get camera data> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <netatmo get camera data> request timed out\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 29 unavailable\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set unavailable> EG / Wohnzimmer / Netatmo (nodeID:29) | reason refreshAttributes\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 30 unavailable\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set unavailable> Netatmo Aussenraum (nodeID:30) | reason refreshAttributes\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 31 unavailable\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set unavailable> EG / Büro / Netatmo (nodeID:31) | reason refreshAttributes\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 32 unavailable\"},{\"datetime\":\"2023-03-18 12:12:22\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set unavailable> DG / Schlafzimmer / Netatmo (nodeID:32) | reason refreshAttributes\"},{\"datetime\":\"2023-03-18 12:12:47\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <netatmo cpr get> response: timing: 15.0049 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:12:47\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <netatmo get weather station data> request timed out\"},{\"datetime\":\"2023-03-18 12:12:58\",\"topic\":\"MAIN\",\"level\":\"info\",\"message\":\" 📡 <homee proxy> connection established 👌\"},{\"datetime\":\"2023-03-18 12:12:59\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" <system call> command: \\\"/etc/init.d/S49chrony restart\\\" exited with code: 1\"},{\"datetime\":\"2023-03-18 12:13:02\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <netatmo cpr get> response: timing: 15.0113 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:13:02\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <netatmo get camera data> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:13:02\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <netatmo get camera data> request timed out\"},{\"datetime\":\"2023-03-18 12:13:02\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 29 unavailable\"},{\"datetime\":\"2023-03-18 12:13:02\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 30 unavailable\"},{\"datetime\":\"2023-03-18 12:13:02\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 31 unavailable\"},{\"datetime\":\"2023-03-18 12:13:02\",\"topic\":\"NETATMO\",\"level\":\"info\",\"message\":\" <refresh attributes> device not in map - set nodeID: 32 unavailable\"},{\"datetime\":\"2023-03-18 12:13:23\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:13:36\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set available> EG / Wohnzimmer / Netatmo (nodeID: 29) | reason refresh ok\"},{\"datetime\":\"2023-03-18 12:13:36\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set available> Netatmo Aussenraum (nodeID: 30) | reason refresh ok\"},{\"datetime\":\"2023-03-18 12:13:36\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set available> EG / Büro / Netatmo (nodeID: 31) | reason refresh ok\"},{\"datetime\":\"2023-03-18 12:13:36\",\"topic\":\"HAL\",\"level\":\"info\",\"message\":\" <set available> DG / Schlafzimmer / Netatmo (nodeID: 32) | reason refresh ok\"},{\"datetime\":\"2023-03-18 12:13:44\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:14:06\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:14:30\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:14:53\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:15:14\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:15:39\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:16:00\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:16:22\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:16:44\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:17:05\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:17:26\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:17:47\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:18:09\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:18:29\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:18:56\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:19:16\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:19:37\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:19:58\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:20:20\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:20:41\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:21:02\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:21:24\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:21:50\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:22:11\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:22:32\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:22:53\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:23:14\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:23:39\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:24:01\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:24:22\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:24:43\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:24:58\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" ⚠️ <homee proxy> no connection\"},{\"datetime\":\"2023-03-18 12:25:04\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:25:25\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:25:38\",\"topic\":\"MAIN\",\"level\":\"info\",\"message\":\" 📡 <homee proxy> connection established 👌\"},{\"datetime\":\"2023-03-18 12:25:39\",\"topic\":\"MAIN\",\"level\":\"warning\",\"message\":\" <system call> command: \\\"/etc/init.d/S49chrony restart\\\" exited with code: 1\"},{\"datetime\":\"2023-03-18 12:25:45\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:26:09\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:26:41\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:27:15\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:27:40\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:28:07\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:28:29\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:28:50\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:29:12\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:29:34\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:29:55\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:30:21\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:30:42\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:31:04\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:31:27\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:32:18\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <resolve geolocation> response: timing: 30.2498 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:32:18\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:32:58\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <resolve geolocation> response: timing: 20.0186 s error code: 8 error message: Resolving timed out after 15000 milliseconds http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:32:58\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:33:23\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:33:40\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <netatmo get weather station data> request failed (HTTP status code: 403): {\\\"error\\\":{\\\"code\\\":3,\\\"message\\\":\\\"Access token expired\\\"}}\"},{\"datetime\":\"2023-03-18 12:33:40\",\"topic\":\"O_AUTH2_CLIENT\",\"level\":\"info\",\"message\":\" ✅ <refresh access> access successfully refreshed\"},{\"datetime\":\"2023-03-18 12:33:44\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:34:09\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:34:31\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:35:06\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" <resolve geolocation> response: timing: 15.0022 s error code: 8 error message: Operation timed out after 15001 milliseconds with 0 bytes received http status code: 0 body: \"},{\"datetime\":\"2023-03-18 12:35:06\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 0): \"},{\"datetime\":\"2023-03-18 12:35:28\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:35:49\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:36:14\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:36:49\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:37:20\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:37:42\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:38:02\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:38:27\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:38:54\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:39:15\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:39:52\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:40:23\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:40:45\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:41:06\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:41:27\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:41:48\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"},{\"datetime\":\"2023-03-18 12:42:17\",\"topic\":\"WEB\",\"level\":\"warning\",\"message\":\" ⚠️ <resolve geolocation> request failed (HTTP status code: 429): \"}]", "tot": "json" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 410, "y": 280, "wires": [ [ "a0d3511f1e97b4cb" ] ] }, { "id": "1d94278206c3c1dc", "type": "change", "z": "b86c034bc869f860", "name": "Formatiere Tabelle", "rules": [ { "t": "set", "p": "protocols", "pt": "msg", "to": "[{\"id\":\"error\",\"color\":\"red\"},{\"id\":\"warning\",\"color\":\"yellow\"},{\"id\":\"info\",\"color\":\"#8f8f8f\"}]", "tot": "json" }, { "t": "set", "p": "payload", "pt": "msg", "to": "payload.{\t \"datetime\" : datetime,\t \"topic\" : topic,\t \"level\" : ' <font color=\\\"' & $single($$.protocols, function($v){$v.id = level}).color & '\\\"> ' & level, \t \"message\" : message \t}", "tot": "jsonata" }, { "t": "delete", "p": "log", "pt": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1210, "y": 280, "wires": [ [ "893c55a574142a24", "8693a1915866b8d6" ] ] }, { "id": "893c55a574142a24", "type": "debug", "z": "b86c034bc869f860", "name": "Logfile Tabelle", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "true", "targetType": "full", "statusVal": "", "statusType": "auto", "x": 1420, "y": 240, "wires": [] }, { "id": "2468b33cf89e3660", "type": "switch", "z": "b86c034bc869f860", "name": "Filtern?", "property": "payload", "propertyType": "msg", "rules": [ { "t": "regex", "v": "error|warning|info", "vt": "str", "case": false }, { "t": "else" } ], "checkall": "true", "repair": false, "outputs": 2, "x": 820, "y": 280, "wires": [ [ "768f74e270b64a67" ], [ "92546bb5880315fa" ] ] }, { "id": "a0d3511f1e97b4cb", "type": "change", "z": "b86c034bc869f860", "name": "Max = Anzahl - 1", "rules": [ { "t": "set", "p": "max", "pt": "msg", "to": "4", "tot": "num" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 630, "y": 280, "wires": [ [ "2468b33cf89e3660" ] ] }, { "id": "768f74e270b64a67", "type": "change", "z": "b86c034bc869f860", "name": "mit Filter", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "log[level=$$.payload]^(> datetime )[[0..$$.max]]", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 980, "y": 240, "wires": [ [ "1d94278206c3c1dc" ] ] }, { "id": "92546bb5880315fa", "type": "change", "z": "b86c034bc869f860", "name": "ohne Filter", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "log^(> datetime )[[0..$$.max]]", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 990, "y": 320, "wires": [ [ "1d94278206c3c1dc" ] ] }, { "id": "8693a1915866b8d6", "type": "json", "z": "b86c034bc869f860", "name": "Tabelle JSON", "property": "payload", "action": "str", "pretty": false, "x": 1420, "y": 280, "wires": [ [] ] } ]
Du kannst in die Switch Node - die prüft ob gefiltert werden soll oder nicht für den 2. Ausgang auch "any" reinschreiben. Ich hab halt einfach gemacht, dass wenn es nicht error, warning oder info ist, dann wird nicht gefiltert.
EDIT: Flow nochmal zum Import editiert (12:06)
-
vielen Dank für deine Hilfe, dein Flow funktioniert super und das Problem sitzt wieder mal hier vor der Tastatur.
Ich habe meinen Flow jetzt so verkabelt, ich hoffe das passt erstmal so?
Mir ist aufgefallen, dass es 2 - 3 Sekunden dauern kann, bis die aktuelle Log Datei abgerufen ist und deshalb bleibt wahrscheinlich auch meine Tabelle leer, kann man das irgendwie synchronisieren?
Wie kann ich dem Flow beibringen, dass egal wodurch er gestartet wird, er sich immer den Filter aus dem Datenpunkt holt?
-
Solches Kreuz- und Querchaos macht man nicht. Hier kommen Nachrichten teilweise 3 fache an. Nutze den Flowkontext. Ich helfe Dir - nur muss ich wissen, ob die hommeLog Node eigenständig triggert oder nur über den Filterdatenpunkt angetriggert wird. Das ist Chaos! Im Prinzip sollte der Filterdatenpunkt NICHT den homeeLog triggern. Dies ganzen Verbindungen müssen weg.
Wie gesagt ich habe keine Ahnung ob Deine Homee Log Node alleine triggert. Dann speicherst Du das einfach im Kontext und holst den Filer ab.
Die ChangeNode Log-Datei auslesen holt das Log aus dem KOntext egal ob es kürzlich aktualisiert wurde oder der Filter geändert wurde:[ { "id": "0b4c7d376b9e7a79", "type": "ioBroker in", "z": "b86c034bc869f860", "name": "Logfile Auswahl Filter", "topic": "0_userdata.0.System.homee.Logfile.AuswahlFilter", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "fireOnStart": "false", "outFormat": "MQTT", "x": 660, "y": 280, "wires": [ [ "ab66ad002a717f0c" ] ] }, { "id": "ab66ad002a717f0c", "type": "change", "z": "b86c034bc869f860", "name": "Log-Datei auslesen", "rules": [ { "t": "set", "p": "log", "pt": "msg", "to": "homee.log", "tot": "flow" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 950, "y": 280, "wires": [ [ "a0d3511f1e97b4cb" ] ] }, { "id": "afac67dae8f9fe02", "type": "change", "z": "b86c034bc869f860", "name": "", "rules": [ { "t": "set", "p": "homee.log", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 520, "y": 200, "wires": [ [ "cd4b9c8eb839628f" ] ] }, { "id": "cd4b9c8eb839628f", "type": "ioBroker get", "z": "b86c034bc869f860", "name": "Get Filter", "topic": "0_userdata.0.System.homee.Logfile.AuswahlFilter", "attrname": "payload", "payloadType": "value", "errOnInvalidState": "nothing", "x": 720, "y": 200, "wires": [ [ "ab66ad002a717f0c" ] ] }, { "id": "14fd6706a4f3b023", "type": "inject", "z": "b86c034bc869f860", "name": "test", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "info", "payloadType": "str", "x": 750, "y": 340, "wires": [ [ "ab66ad002a717f0c" ] ] } ]
aber so sieht das sauber und mit einem definierten Nachrichtenflow aus.
-
die homeeLog Node triggert nicht eigenständig. Ich möchte sie auf 2 Wege triggern, 1. Zeitgesteuert (jede Stunde), 2. Wenn sich der Filterdatenpunkt ändert.
Beim Zeitgesteuerten triggern, soll aber trotzdem der gesetzte Filter im Datenpunkt berücksichtigt werden.Edit:
Super, jetzt funktioniert es, wie es soll, danke nochmal
-
@oli Sehr gut - nur in diesem Fall müsstest Du gar nicht mehr über den Flowkontext gehen und könntest die Ausgabe direkt tätigen. Aber das mit dem Triggern ist nun sauber gelöst.
-
@mickym
so, jetzt bin ich Dank deiner Unterstützung am letzten Punkt meiner Liste angelangt und was soll ich sagen, ich komme schon wieder mal nicht weiter.Was möchte ich diesmal machen?
-
Heizpläne auslesen und in eine Tabelle schreiben, dass klappt auch bis auf eine Sache
ich möchte mir zu jedem Heizplan aus dem dazu gehörenden "schedule" die Punkte "rrule" und "variable_id" auslesen. Den Text des "rrule" möchte ich bearbeiten
und den Wert der "variable_id" durch das passenden "value" aus dem Bereich "variables" ersetzen.
Das ganze sollte dann so ungefähr aussehen, für jeden Wochentag getrennt:
{ "name": "Heizplan / Arbeit / Wohnzimmer", "aktiv": " <font color=\"orange\"> deaktiviert", "type": "Heizplan", "schedule": 24, "devices": 4, "temperatur": "Komfort Plus: 24°C<br>Komfort: 21°C<br>Eco: 18°C<br>Nacht: 15°C<br>Abwesend: 18°C<br>Fenster Offen: 8°C<br>Urlaub: 15°C", "montag": "05:00 = 21°C<br> 23:20 = 18°C" }
- Möchte ich den Namen des Heizplanes und die einzelnen "rrule" zerlegen und daraus Datenpunkte zusammenstellen und die Werte in diese Datenpunkte schreiben
"name": "Heizplan / Arbeit / Wohnzimmer" "rrule": "FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1", "variable_id": 3 { "id": 3, "name": "Nacht", "value": 15, "type": 4 }, Datenpunkte: heatingcontrol.0.Profiles.1.Wohnzimmer.Sun.Periods.1.Temperature heatingcontrol.0.Profiles.1.Wohnzimmer.Sun.Periods.1.time 1 = Arbeit aus dem Namen vom Heizplan Wohnzimmer = Raum aus Namen vom Heizplan Sun = rrule: BYDAY 1 = Reihenfolge der Einträge im Adapter Temperature = value time = rrule: BYHOUR & BYMINUTE
Ist das überhaupt alles möglich?
Hier mal der Flow mit den Daten:
[ { "id": "b86c034bc869f860", "type": "tab", "label": "Test", "disabled": false, "info": "", "env": [] }, { "id": "6974f3ce73a121fe", "type": "change", "z": "b86c034bc869f860", "name": "decodeUrlComponents", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "payload ~> |$.plans|{\"name\":$decodeUrlComponent(name)},\"\"|", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 600, "y": 120, "wires": [ [ "bd5b22c032ec8dff" ] ] }, { "id": "bd5b22c032ec8dff", "type": "change", "z": "b86c034bc869f860", "name": "Alle Päne", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "payload.plans", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 800, "y": 120, "wires": [ [ "1a84de43e761214e" ] ] }, { "id": "710d7681444799fa", "type": "change", "z": "b86c034bc869f860", "name": "hole alle Pläne", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "{}", "tot": "json" }, { "t": "set", "p": "payload.plans", "pt": "msg", "to": "homee.plans", "tot": "global" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 280, "y": 120, "wires": [ [ "6974f3ce73a121fe" ] ] }, { "id": "b72d8bd885e46d3b", "type": "inject", "z": "b86c034bc869f860", "name": "trigger", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "[{\"id\":1,\"name\":\"Heizplan / Arbeit / Wohnzimmer\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571493363,\"note\":\"\",\"order\":1,\"active_schedule\":29,\"attribute_ids\":[44,72,183,410],\"node_ids\":[2,4,19,62],\"schedule\":[{\"id\":1,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":2,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":1},{\"id\":3,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":4,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":3},{\"id\":21,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":22,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":3},{\"id\":23,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":24,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":3},{\"id\":25,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":26,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":27,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":28,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":29,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":1},{\"id\":30,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":1},{\"id\":31,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":1},{\"id\":32,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":1},{\"id\":33,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":34,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":35,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":36,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=14;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":37,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":3},{\"id\":38,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":3},{\"id\":39,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":3},{\"id\":42,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":3}],\"variables\":[{\"id\":1,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":2,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":3,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":4,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":5,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":6,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":7,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":1,\"enabled\":true,\"attribute_ids\":[126,131],\"trigger_value\":0,\"operator\":5,\"variable_id\":5,\"delay\":300,\"priority\":0,\"type\":1},{\"id\":2,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":4,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":3,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":7,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":3,\"name\":\"Heizplan / Arbeit / Bad\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571494193,\"note\":\"\",\"order\":2,\"active_schedule\":97,\"attribute_ids\":[237],\"node_ids\":[26],\"schedule\":[{\"id\":67,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=4;BYMINUTE=30;INTERVAL=1\",\"variable_id\":20},{\"id\":68,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":17},{\"id\":69,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":70,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":17},{\"id\":91,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=4;BYMINUTE=30;INTERVAL=1\",\"variable_id\":20},{\"id\":92,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=4;BYMINUTE=30;INTERVAL=1\",\"variable_id\":20},{\"id\":93,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=4;BYMINUTE=30;INTERVAL=1\",\"variable_id\":20},{\"id\":94,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=4;BYMINUTE=30;INTERVAL=1\",\"variable_id\":20},{\"id\":95,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":96,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":17},{\"id\":97,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":17},{\"id\":98,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":17},{\"id\":99,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":17},{\"id\":100,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":17},{\"id\":102,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":103,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":104,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":105,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":106,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":107,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":15},{\"id\":108,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":15},{\"id\":109,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":17},{\"id\":110,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":17},{\"id\":111,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":17},{\"id\":114,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":17},{\"id\":115,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":17},{\"id\":116,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":117,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":472,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=15;BYMINUTE=30;INTERVAL=1\",\"variable_id\":15},{\"id\":473,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=15;BYMINUTE=30;INTERVAL=1\",\"variable_id\":15},{\"id\":474,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=15;BYMINUTE=30;INTERVAL=1\",\"variable_id\":15},{\"id\":475,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=15;BYMINUTE=30;INTERVAL=1\",\"variable_id\":15},{\"id\":476,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=14;BYMINUTE=0;INTERVAL=1\",\"variable_id\":15}],\"variables\":[{\"id\":15,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":16,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":17,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":18,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":19,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":20,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":21,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":7,\"enabled\":true,\"attribute_ids\":[136],\"trigger_value\":0,\"operator\":5,\"variable_id\":19,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":8,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":18,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":9,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":21,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":4,\"name\":\"Heizplan / Arbeit / WC\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571494812,\"note\":\"\",\"order\":3,\"active_schedule\":126,\"attribute_ids\":[86],\"node_ids\":[5],\"schedule\":[{\"id\":119,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":126,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":24},{\"id\":127,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":128,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":129,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":130,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=14;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":131,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":132,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":133,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":24},{\"id\":134,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":24},{\"id\":135,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":24},{\"id\":138,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":24},{\"id\":139,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":24},{\"id\":140,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":24}],\"variables\":[{\"id\":22,\"name\":\"Eco\",\"value\":19,\"type\":3},{\"id\":23,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":24,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":25,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":26,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":27,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":28,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":10,\"enabled\":true,\"attribute_ids\":[121],\"trigger_value\":0,\"operator\":5,\"variable_id\":26,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":11,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":25,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":12,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":28,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":5,\"name\":\"Heizplan / Arbeit / Büro\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571497652,\"note\":\"\",\"order\":4,\"active_schedule\":144,\"attribute_ids\":[30],\"node_ids\":[1],\"schedule\":[{\"id\":141,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":144,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":168,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=14;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":169,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":170,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":174,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":175,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":176,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":347,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":348,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":349,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":350,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":351,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":352,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31}],\"variables\":[{\"id\":29,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":30,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":31,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":32,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":33,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":34,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":35,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":13,\"enabled\":true,\"attribute_ids\":[111,116],\"trigger_value\":0,\"operator\":5,\"variable_id\":33,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":14,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":32,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":15,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":35,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":6,\"name\":\"Heizplan / Frei / Wohnzimmer\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571508227,\"note\":\"\",\"order\":5,\"active_schedule\":201,\"attribute_ids\":[44,72,183,410],\"node_ids\":[2,4,19,62],\"schedule\":[{\"id\":201,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":207,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":208,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":209,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":210,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":211,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":212,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":213,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":214,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":215,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":216,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":217,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":218,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":219,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38}],\"variables\":[{\"id\":36,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":37,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":38,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":39,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":40,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":41,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":42,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":16,\"enabled\":true,\"attribute_ids\":[126,131],\"trigger_value\":0,\"operator\":5,\"variable_id\":40,\"delay\":300,\"priority\":0,\"type\":1},{\"id\":17,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":39,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":18,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":42,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":7,\"name\":\"Heizplan / Frei / Bad\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571508465,\"note\":\"\",\"order\":6,\"active_schedule\":225,\"attribute_ids\":[237],\"node_ids\":[26],\"schedule\":[{\"id\":224,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":225,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":226,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":244,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":245,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":246,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":247,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":248,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":249,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":250,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":251,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":252,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":253,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":254,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":255,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":256,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":257,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":258,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":259,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":260,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":261,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":262,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":263,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":264,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":265,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":266,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":267,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":268,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45}],\"variables\":[{\"id\":43,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":44,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":45,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":46,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":47,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":48,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":49,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":19,\"enabled\":true,\"attribute_ids\":[136],\"trigger_value\":0,\"operator\":5,\"variable_id\":47,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":20,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":46,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":21,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":49,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":8,\"name\":\"Heizplan / Frei / Büro\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571508758,\"note\":\"\",\"order\":7,\"active_schedule\":293,\"attribute_ids\":[30],\"node_ids\":[1],\"schedule\":[{\"id\":269,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":293,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":294,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":295,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":296,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":297,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":298,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":459,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":460,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":461,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":462,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":463,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":464,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":465,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52}],\"variables\":[{\"id\":50,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":51,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":52,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":53,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":54,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":55,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":56,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":22,\"enabled\":true,\"attribute_ids\":[111,116],\"trigger_value\":0,\"operator\":5,\"variable_id\":54,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":23,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":53,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":24,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":56,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":9,\"name\":\"Heizplan / Frei / WC\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571508871,\"note\":\"\",\"order\":8,\"active_schedule\":329,\"attribute_ids\":[86],\"node_ids\":[5],\"schedule\":[{\"id\":305,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":329,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":330,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":331,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":332,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":333,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":334,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":337,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":340,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":443,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":444,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":466,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":467,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":468,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":469,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59}],\"variables\":[{\"id\":57,\"name\":\"Eco\",\"value\":19,\"type\":3},{\"id\":58,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":59,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":60,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":61,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":62,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":63,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":25,\"enabled\":true,\"attribute_ids\":[121],\"trigger_value\":0,\"operator\":5,\"variable_id\":61,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":26,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":60,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":27,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":63,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":11,\"name\":\"Heizplan / Homeoffice / Wohnzimmer\",\"image\":\"planicon_radiator\",\"enabled\":true,\"type\":1,\"owner\":1,\"added\":1572287598,\"note\":\"\",\"order\":9,\"active_schedule\":393,\"attribute_ids\":[44,72,183,410],\"node_ids\":[2,4,19,62],\"schedule\":[{\"id\":367,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":370,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":73},{\"id\":387,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":389,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":390,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":73},{\"id\":391,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":392,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":393,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":394,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":395,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":73},{\"id\":396,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":73},{\"id\":397,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":73},{\"id\":399,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":73},{\"id\":400,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":73}],\"variables\":[{\"id\":71,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":72,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":73,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":74,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":75,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":76,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":77,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":31,\"enabled\":true,\"attribute_ids\":[126,131],\"trigger_value\":0,\"operator\":5,\"variable_id\":75,\"delay\":300,\"priority\":0,\"type\":1},{\"id\":32,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":74,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":33,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":77,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":12,\"name\":\"Heizplan / Homeoffice / Büro\",\"image\":\"planicon_radiator\",\"enabled\":true,\"type\":1,\"owner\":1,\"added\":1572287884,\"note\":\"\",\"order\":10,\"active_schedule\":408,\"attribute_ids\":[30],\"node_ids\":[1],\"schedule\":[{\"id\":401,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":402,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":403,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":404,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":405,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":406,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":407,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":408,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":409,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":410,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":411,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":412,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":413,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":80},{\"id\":414,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":80},{\"id\":470,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":471,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80}],\"variables\":[{\"id\":78,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":79,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":80,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":81,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":82,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":83,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":84,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":34,\"enabled\":true,\"attribute_ids\":[111,116],\"trigger_value\":0,\"operator\":5,\"variable_id\":82,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":35,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":81,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":36,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":84,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":13,\"name\":\"Heizplan / Homeoffice / Bad\",\"image\":\"planicon_radiator\",\"enabled\":true,\"type\":1,\"owner\":1,\"added\":1572288062,\"note\":\"\",\"order\":11,\"active_schedule\":427,\"attribute_ids\":[237],\"node_ids\":[26],\"schedule\":[{\"id\":415,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":416,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=7;BYMINUTE=30;INTERVAL=1\",\"variable_id\":85},{\"id\":417,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":418,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":87},{\"id\":419,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":420,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":421,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":422,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":423,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":424,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=15;INTERVAL=1\",\"variable_id\":87},{\"id\":425,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=7;BYMINUTE=30;INTERVAL=1\",\"variable_id\":85},{\"id\":426,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=7;BYMINUTE=30;INTERVAL=1\",\"variable_id\":85},{\"id\":427,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=7;BYMINUTE=30;INTERVAL=1\",\"variable_id\":85},{\"id\":428,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=7;BYMINUTE=30;INTERVAL=1\",\"variable_id\":85},{\"id\":429,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":430,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":431,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":432,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":433,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":434,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":85},{\"id\":435,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":85},{\"id\":436,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=30;INTERVAL=1\",\"variable_id\":87},{\"id\":437,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":87},{\"id\":438,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":87},{\"id\":439,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":87},{\"id\":440,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":87},{\"id\":441,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":442,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90}],\"variables\":[{\"id\":85,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":86,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":87,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":88,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":89,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":90,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":91,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":37,\"enabled\":true,\"attribute_ids\":[136],\"trigger_value\":0,\"operator\":5,\"variable_id\":89,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":38,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":88,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":39,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":91,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":14,\"name\":\"Heizplan / Homeoffice / WC\",\"image\":\"planicon_radiator\",\"enabled\":true,\"type\":1,\"owner\":1,\"added\":1572288296,\"note\":\"\",\"order\":12,\"active_schedule\":449,\"attribute_ids\":[86],\"node_ids\":[5],\"schedule\":[{\"id\":445,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":446,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":94},{\"id\":447,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":448,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":449,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":450,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":451,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":452,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":453,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":94},{\"id\":454,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":94},{\"id\":455,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":94},{\"id\":456,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":94},{\"id\":457,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":94},{\"id\":458,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":94}],\"variables\":[{\"id\":92,\"name\":\"Eco\",\"value\":19,\"type\":3},{\"id\":93,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":94,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":95,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":96,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":97,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":98,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":40,\"enabled\":true,\"attribute_ids\":[121],\"trigger_value\":0,\"operator\":5,\"variable_id\":96,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":41,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":95,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":42,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":98,\"delay\":0,\"priority\":10,\"type\":3}]}]", "payloadType": "json", "x": 110, "y": 120, "wires": [ [ "710d7681444799fa" ] ] }, { "id": "e1d4373865c3cf15", "type": "debug", "z": "b86c034bc869f860", "name": "Pläne Tabelle", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 1280, "y": 60, "wires": [] }, { "id": "19699d2393cbc46d", "type": "json", "z": "b86c034bc869f860", "name": "Tabelle JSON", "property": "payload", "action": "str", "pretty": false, "x": 1280, "y": 120, "wires": [ [] ] }, { "id": "1a84de43e761214e", "type": "change", "z": "b86c034bc869f860", "name": "Pläne Tabelle", "rules": [ { "t": "set", "p": "active", "pt": "msg", "to": "[{\"id\":true,\"name\":\"aktivert\",\"color\":\"green\"},{\"id\":false,\"name\":\"deaktiviert\",\"color\":\"orange\"}]", "tot": "json" }, { "t": "set", "p": "types", "pt": "msg", "to": "[\t {\t \"id\": 0,\t \"name\": \"Keine Zuordnung\"\t },\t {\t \"id\": 1,\t \"name\": \"Heizplan\" \t },\t {\t \"id\": 2,\t \"name\": \"Energie\" \t },\t {\t \"id\": 3,\t \"name\": \"OnOff\" \t },\t {\t \"id\": 4,\t \"name\": \"Anwesenheitssimulation\" \t },\t {\t \"id\": 5,\t \"name\": \"ElektroHeizung\" \t },\t {\t \"id\": 50,\t \"name\": \"Windüberwachung\" \t },\t {\t \"id\": 51,\t \"name\": \"Sonnenautomatisierung\" \t },\t {\t \"id\": 52,\t \"name\": \"Dämmerungsautomatisierung\" \t }\t]", "tot": "jsonata" }, { "t": "set", "p": "payload", "pt": "msg", "to": "payload.{\"name\" :name, \t \"aktiv\" : ' <font color=\\\"' & $single($$.active, function($v){$v.id = enabled}).color & '\\\"> ' & $single($$.active, function($v){$v.id = enabled}).name,\t \"type\" : $single($$.types, function($v){$v.id = type}).name,\t \"schedule\" : $count(schedule),\t \"devices\" : $count(node_ids),\t \"temperatur\" : variables[type=1 ].name & \": \" & variables[type=1 ].value & \"°C<br>\" &\t variables[type=2 ].name & \": \" & variables[type=2 ].value & \"°C<br>\" & \t variables[type=3 ].name & \": \" & variables[type=3 ].value & \"°C<br>\" &\t variables[type=4 ].name & \": \" & variables[type=4 ].value & \"°C<br>\" & \t variables[type=5 ].name & \": \" & variables[type=5 ].value & \"°C<br>\" & \t variables[type=6 ].$decodeUrlComponent(name) & \": \" & variables[type=6 ].value & \"°C<br>\" &\t variables[type=7 ].name & \": \" & variables[type=7 ].value & \"°C\" \t}", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1020, "y": 120, "wires": [ [ "19699d2393cbc46d", "e1d4373865c3cf15" ] ] } ]
-
-
@oli So ich habe fertig.
Hat mich nun auch ein paar Stunden gekostet und Du wirst sehen - inzwischen dauert die Ausführung auch einige Sekunden.
Ich denke auch, dass wenn Du diesen JSONATA Code verstanden hast, dann brauchst Du mich nicht mehr. Wie gesagt ich muss da nun auch rumprobieren.
Deinen Flow - habe ich die unnötigen Nodes weggeschmissen, Du musst halt selbst schauen, dass der Dateninput stimmt. Ich habe jetzt das genommen, was in der Inject Node an Daten vorhanden war.Der ganze Flow schaut nun so aus:
- Aufgabe die Tabelle - ich habs versucht einigermassen so hinzubekommen. Wenn Du komplett eigene Tabellen für jeden Wochentag haben willst, dann musst die Tabelle halt selbst noch mal auseinanderreißen. Das sollte aber nun auch für Dich kein Problem sein.
Ansonsten dürfte jedes Objekt in der Tabelle Deinen Vorgaben eigentlich entsprechen:
{ "name": "Heizplan / Arbeit / Wohnzimmer", "aktiv": " <font color=\"orange\"> deaktiviert", "type": "Heizplan", "schedule": 24, "devices": 4, "temperatur": "Eco: 18°C<br> Komfort: 21°C<br> Nacht: 15°C<br> Abwesend: 18°C<br> Fenster Offen: 8°C<br> Komfort Plus: 24°C<br> Urlaub: 15°C", "montag": "05:00 = 21°C<br> 06:30 = 18°C<br> 15:00 = 21°C<br> 23:20 = 15°C", "dienstag": "05:00 = 21°C<br> 06:30 = 18°C<br> 15:00 = 21°C<br> 23:20 = 15°C", "mittwoch": "05:00 = 21°C<br> 06:30 = 18°C<br> 15:00 = 21°C<br> 23:20 = 15°C", "donnerstag": "05:00 = 21°C<br> 06:30 = 18°C<br> 15:00 = 21°C<br> 23:20 = 15°C", "freitag": "05:00 = 21°C<br> 06:30 = 18°C<br> 14:00 = 21°C", "samstag": "06:00 = 21°C<br> 01:00 = 15°C", "sonntag": "08:00 = 21°C<br> 23:20 = 15°C<br> 01:00 = 15°C" }
Der 2. Teil der Aufgabe bestand nun darin Datenpunkte zu schreiben. Nachdem ich ja keinen heating-control Adapter verwende, habe ich mich halt an das gehalten was Du geschrieben hast, wobei das mit den Profilen für mich nicht vollständig war. Ich habe jetzt einfach mal folgende Profile genommen:
"profiles" :{"Arbeit":"1","Frei":"2","Homeoffice":"3"}
Deine Datenpunkte (Pärchen) schauen nun so aus:
Ich hab sie mal als Command drin gelassen. Ich hab die beiden iobroker-Out Nodes mal deaktiviert - dann kannst bevor die Datenpunkte geschrieben werden noch mit weiteren Debug Nodes prüfen:
Hier der Code zum Import:
[ { "id": "29c703f08796e8f8", "type": "inject", "z": "9c280ddf049b2b4d", "name": "trigger", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "[{\"id\":1,\"name\":\"Heizplan / Arbeit / Wohnzimmer\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571493363,\"note\":\"\",\"order\":1,\"active_schedule\":29,\"attribute_ids\":[44,72,183,410],\"node_ids\":[2,4,19,62],\"schedule\":[{\"id\":1,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":2,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":1},{\"id\":3,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":4,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":3},{\"id\":21,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":22,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":3},{\"id\":23,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":24,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":3},{\"id\":25,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":26,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":27,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":28,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":29,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":1},{\"id\":30,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":1},{\"id\":31,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":1},{\"id\":32,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":1},{\"id\":33,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":34,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":35,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":36,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=14;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":37,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":3},{\"id\":38,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":3},{\"id\":39,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":3},{\"id\":42,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":3}],\"variables\":[{\"id\":1,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":2,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":3,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":4,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":5,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":6,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":7,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":1,\"enabled\":true,\"attribute_ids\":[126,131],\"trigger_value\":0,\"operator\":5,\"variable_id\":5,\"delay\":300,\"priority\":0,\"type\":1},{\"id\":2,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":4,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":3,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":7,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":3,\"name\":\"Heizplan / Arbeit / Bad\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571494193,\"note\":\"\",\"order\":2,\"active_schedule\":97,\"attribute_ids\":[237],\"node_ids\":[26],\"schedule\":[{\"id\":67,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=4;BYMINUTE=30;INTERVAL=1\",\"variable_id\":20},{\"id\":68,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":17},{\"id\":69,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":70,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":17},{\"id\":91,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=4;BYMINUTE=30;INTERVAL=1\",\"variable_id\":20},{\"id\":92,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=4;BYMINUTE=30;INTERVAL=1\",\"variable_id\":20},{\"id\":93,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=4;BYMINUTE=30;INTERVAL=1\",\"variable_id\":20},{\"id\":94,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=4;BYMINUTE=30;INTERVAL=1\",\"variable_id\":20},{\"id\":95,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":96,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":17},{\"id\":97,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":17},{\"id\":98,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":17},{\"id\":99,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":17},{\"id\":100,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":17},{\"id\":102,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":103,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":104,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":105,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":106,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":107,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":15},{\"id\":108,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":15},{\"id\":109,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":17},{\"id\":110,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":17},{\"id\":111,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":17},{\"id\":114,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":17},{\"id\":115,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":17},{\"id\":116,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":117,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":472,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=15;BYMINUTE=30;INTERVAL=1\",\"variable_id\":15},{\"id\":473,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=15;BYMINUTE=30;INTERVAL=1\",\"variable_id\":15},{\"id\":474,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=15;BYMINUTE=30;INTERVAL=1\",\"variable_id\":15},{\"id\":475,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=15;BYMINUTE=30;INTERVAL=1\",\"variable_id\":15},{\"id\":476,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=14;BYMINUTE=0;INTERVAL=1\",\"variable_id\":15}],\"variables\":[{\"id\":15,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":16,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":17,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":18,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":19,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":20,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":21,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":7,\"enabled\":true,\"attribute_ids\":[136],\"trigger_value\":0,\"operator\":5,\"variable_id\":19,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":8,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":18,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":9,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":21,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":4,\"name\":\"Heizplan / Arbeit / WC\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571494812,\"note\":\"\",\"order\":3,\"active_schedule\":126,\"attribute_ids\":[86],\"node_ids\":[5],\"schedule\":[{\"id\":119,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":126,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":24},{\"id\":127,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":128,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":129,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":130,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=14;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":131,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":132,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":133,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":24},{\"id\":134,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":24},{\"id\":135,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":24},{\"id\":138,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":24},{\"id\":139,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":24},{\"id\":140,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":24}],\"variables\":[{\"id\":22,\"name\":\"Eco\",\"value\":19,\"type\":3},{\"id\":23,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":24,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":25,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":26,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":27,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":28,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":10,\"enabled\":true,\"attribute_ids\":[121],\"trigger_value\":0,\"operator\":5,\"variable_id\":26,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":11,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":25,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":12,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":28,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":5,\"name\":\"Heizplan / Arbeit / Büro\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571497652,\"note\":\"\",\"order\":4,\"active_schedule\":144,\"attribute_ids\":[30],\"node_ids\":[1],\"schedule\":[{\"id\":141,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":144,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":168,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=14;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":169,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":170,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":174,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":175,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":176,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":347,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":348,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":349,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":350,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":351,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":352,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31}],\"variables\":[{\"id\":29,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":30,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":31,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":32,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":33,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":34,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":35,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":13,\"enabled\":true,\"attribute_ids\":[111,116],\"trigger_value\":0,\"operator\":5,\"variable_id\":33,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":14,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":32,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":15,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":35,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":6,\"name\":\"Heizplan / Frei / Wohnzimmer\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571508227,\"note\":\"\",\"order\":5,\"active_schedule\":201,\"attribute_ids\":[44,72,183,410],\"node_ids\":[2,4,19,62],\"schedule\":[{\"id\":201,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":207,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":208,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":209,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":210,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":211,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":212,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":213,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":214,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":215,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":216,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":217,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":218,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":219,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38}],\"variables\":[{\"id\":36,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":37,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":38,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":39,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":40,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":41,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":42,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":16,\"enabled\":true,\"attribute_ids\":[126,131],\"trigger_value\":0,\"operator\":5,\"variable_id\":40,\"delay\":300,\"priority\":0,\"type\":1},{\"id\":17,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":39,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":18,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":42,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":7,\"name\":\"Heizplan / Frei / Bad\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571508465,\"note\":\"\",\"order\":6,\"active_schedule\":225,\"attribute_ids\":[237],\"node_ids\":[26],\"schedule\":[{\"id\":224,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":225,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":226,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":244,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":245,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":246,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":247,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":248,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":249,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":250,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":251,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":252,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":253,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":254,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":255,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":256,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":257,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":258,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":259,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":260,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":261,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":262,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":263,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":264,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":265,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":266,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":267,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":268,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45}],\"variables\":[{\"id\":43,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":44,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":45,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":46,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":47,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":48,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":49,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":19,\"enabled\":true,\"attribute_ids\":[136],\"trigger_value\":0,\"operator\":5,\"variable_id\":47,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":20,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":46,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":21,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":49,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":8,\"name\":\"Heizplan / Frei / Büro\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571508758,\"note\":\"\",\"order\":7,\"active_schedule\":293,\"attribute_ids\":[30],\"node_ids\":[1],\"schedule\":[{\"id\":269,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":293,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":294,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":295,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":296,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":297,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":298,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":459,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":460,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":461,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":462,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":463,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":464,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":465,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52}],\"variables\":[{\"id\":50,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":51,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":52,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":53,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":54,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":55,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":56,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":22,\"enabled\":true,\"attribute_ids\":[111,116],\"trigger_value\":0,\"operator\":5,\"variable_id\":54,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":23,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":53,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":24,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":56,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":9,\"name\":\"Heizplan / Frei / WC\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571508871,\"note\":\"\",\"order\":8,\"active_schedule\":329,\"attribute_ids\":[86],\"node_ids\":[5],\"schedule\":[{\"id\":305,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":329,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":330,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":331,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":332,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":333,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":334,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":337,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":340,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":443,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":444,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":466,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":467,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":468,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":469,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59}],\"variables\":[{\"id\":57,\"name\":\"Eco\",\"value\":19,\"type\":3},{\"id\":58,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":59,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":60,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":61,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":62,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":63,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":25,\"enabled\":true,\"attribute_ids\":[121],\"trigger_value\":0,\"operator\":5,\"variable_id\":61,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":26,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":60,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":27,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":63,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":11,\"name\":\"Heizplan / Homeoffice / Wohnzimmer\",\"image\":\"planicon_radiator\",\"enabled\":true,\"type\":1,\"owner\":1,\"added\":1572287598,\"note\":\"\",\"order\":9,\"active_schedule\":393,\"attribute_ids\":[44,72,183,410],\"node_ids\":[2,4,19,62],\"schedule\":[{\"id\":367,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":370,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":73},{\"id\":387,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":389,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":390,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":73},{\"id\":391,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":392,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":393,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":394,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":395,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":73},{\"id\":396,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":73},{\"id\":397,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":73},{\"id\":399,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":73},{\"id\":400,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":73}],\"variables\":[{\"id\":71,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":72,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":73,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":74,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":75,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":76,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":77,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":31,\"enabled\":true,\"attribute_ids\":[126,131],\"trigger_value\":0,\"operator\":5,\"variable_id\":75,\"delay\":300,\"priority\":0,\"type\":1},{\"id\":32,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":74,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":33,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":77,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":12,\"name\":\"Heizplan / Homeoffice / Büro\",\"image\":\"planicon_radiator\",\"enabled\":true,\"type\":1,\"owner\":1,\"added\":1572287884,\"note\":\"\",\"order\":10,\"active_schedule\":408,\"attribute_ids\":[30],\"node_ids\":[1],\"schedule\":[{\"id\":401,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":402,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":403,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":404,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":405,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":406,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":407,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":408,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":409,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":410,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":411,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":412,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":413,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":80},{\"id\":414,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":80},{\"id\":470,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":471,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80}],\"variables\":[{\"id\":78,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":79,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":80,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":81,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":82,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":83,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":84,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":34,\"enabled\":true,\"attribute_ids\":[111,116],\"trigger_value\":0,\"operator\":5,\"variable_id\":82,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":35,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":81,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":36,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":84,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":13,\"name\":\"Heizplan / Homeoffice / Bad\",\"image\":\"planicon_radiator\",\"enabled\":true,\"type\":1,\"owner\":1,\"added\":1572288062,\"note\":\"\",\"order\":11,\"active_schedule\":427,\"attribute_ids\":[237],\"node_ids\":[26],\"schedule\":[{\"id\":415,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":416,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=7;BYMINUTE=30;INTERVAL=1\",\"variable_id\":85},{\"id\":417,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":418,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":87},{\"id\":419,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":420,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":421,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":422,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":423,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":424,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=15;INTERVAL=1\",\"variable_id\":87},{\"id\":425,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=7;BYMINUTE=30;INTERVAL=1\",\"variable_id\":85},{\"id\":426,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=7;BYMINUTE=30;INTERVAL=1\",\"variable_id\":85},{\"id\":427,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=7;BYMINUTE=30;INTERVAL=1\",\"variable_id\":85},{\"id\":428,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=7;BYMINUTE=30;INTERVAL=1\",\"variable_id\":85},{\"id\":429,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":430,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":431,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":432,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":433,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":434,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":85},{\"id\":435,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":85},{\"id\":436,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=30;INTERVAL=1\",\"variable_id\":87},{\"id\":437,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":87},{\"id\":438,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":87},{\"id\":439,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":87},{\"id\":440,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":87},{\"id\":441,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":442,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90}],\"variables\":[{\"id\":85,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":86,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":87,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":88,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":89,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":90,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":91,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":37,\"enabled\":true,\"attribute_ids\":[136],\"trigger_value\":0,\"operator\":5,\"variable_id\":89,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":38,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":88,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":39,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":91,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":14,\"name\":\"Heizplan / Homeoffice / WC\",\"image\":\"planicon_radiator\",\"enabled\":true,\"type\":1,\"owner\":1,\"added\":1572288296,\"note\":\"\",\"order\":12,\"active_schedule\":449,\"attribute_ids\":[86],\"node_ids\":[5],\"schedule\":[{\"id\":445,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":446,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":94},{\"id\":447,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":448,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":449,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":450,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":451,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":452,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":453,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":94},{\"id\":454,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":94},{\"id\":455,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":94},{\"id\":456,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":94},{\"id\":457,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":94},{\"id\":458,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":94}],\"variables\":[{\"id\":92,\"name\":\"Eco\",\"value\":19,\"type\":3},{\"id\":93,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":94,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":95,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":96,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":97,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":98,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":40,\"enabled\":true,\"attribute_ids\":[121],\"trigger_value\":0,\"operator\":5,\"variable_id\":96,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":41,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":95,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":42,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":98,\"delay\":0,\"priority\":10,\"type\":3}]}]", "payloadType": "json", "x": 170, "y": 2940, "wires": [ [ "bd4a29afe1d2edc0", "65bc684012bb3e71" ] ] }, { "id": "60e749dd963aaef8", "type": "debug", "z": "9c280ddf049b2b4d", "name": "Pläne Tabelle", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 700, "y": 2940, "wires": [] }, { "id": "bd4a29afe1d2edc0", "type": "change", "z": "9c280ddf049b2b4d", "name": "Pläne Tabelle", "rules": [ { "t": "set", "p": "active", "pt": "msg", "to": "[{\"id\":true,\"name\":\"aktivert\",\"color\":\"green\"},{\"id\":false,\"name\":\"deaktiviert\",\"color\":\"orange\"}]", "tot": "json" }, { "t": "set", "p": "types", "pt": "msg", "to": "[{\"id\":0,\"name\":\"Keine Zuordnung\"},{\"id\":1,\"name\":\"Heizplan\"},{\"id\":2,\"name\":\"Energie\"},{\"id\":3,\"name\":\"OnOff\"},{\"id\":4,\"name\":\"Anwesenheitssimulation\"},{\"id\":5,\"name\":\"ElektroHeizung\"},{\"id\":50,\"name\":\"Windüberwachung\"},{\"id\":51,\"name\":\"Sonnenautomatisierung\"},{\"id\":52,\"name\":\"Dämmerungsautomatisierung\"}]", "tot": "json" }, { "t": "set", "p": "payload", "pt": "msg", "to": "payload.{\"name\": name,\t \"aktiv\" : ' <font color=\\\"' & $single($$.active, function($v){$v.id = enabled}).color & '\\\"> ' & $single($$.active, function($v){$v.id = enabled}).name,\t \"type\" : $single($$.types, function($v){$v.id = type}).name,\t \"schedule\" : $count(schedule),\t \"devices\" : $count(node_ids),\t \"scheduler\":schedule.{\"id\":id,\"rrule\":{\"freq\":($split(rrule,\";\").$split($,\"=\")[1])[0],\t \"day\" : ($split(rrule,\";\").$split($,\"=\")[1])[1],\t \"time\" : $pad(($split(rrule,\";\").$split($,\"=\")[1])[2],-2,\"0\") & \":\" & $pad(($split(rrule,\";\").$split($,\"=\")[1])[3],-2,\"0\"),\t \"interval\" : ($split(rrule,\";\").$split($,\"=\")[1])[4]},\"variable\": $single($$.payload.variables, function($v){$v.id=variable_id})},\t \"variables\" : variables} ~> |$|\t { \"temperatur\": variables.[$decodeUrlComponent(name) & \": \" & value & \"°C\"] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \"),\t \"montag\": scheduler[rrule.day=\"MO\"].[rrule.time & \" = \" & variable.value & \"°C\" ] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \"),\t \"dienstag\": scheduler[rrule.day=\"TU\"].[rrule.time & \" = \" & variable.value & \"°C\" ] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \"),\t \"mittwoch\": scheduler[rrule.day=\"WE\"].[rrule.time & \" = \" & variable.value & \"°C\" ] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \"),\t \"donnerstag\": scheduler[rrule.day=\"TH\"].[rrule.time & \" = \" & variable.value & \"°C\" ] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \"),\t \"freitag\": scheduler[rrule.day=\"FR\"].[rrule.time & \" = \" & variable.value & \"°C\" ] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \"),\t \"samstag\": scheduler[rrule.day=\"SA\"].[rrule.time & \" = \" & variable.value & \"°C\" ] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \"),\t \"sonntag\": scheduler[rrule.day=\"SU\"].[rrule.time & \" = \" & variable.value & \"°C\" ] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \")},\t [\"scheduler\",\"variables\"]|", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 460, "y": 2940, "wires": [ [ "60e749dd963aaef8" ] ] }, { "id": "41412eb625251659", "type": "comment", "z": "9c280ddf049b2b4d", "name": "Heizpläne", "info": "", "x": 160, "y": 2840, "wires": [] }, { "id": "65bc684012bb3e71", "type": "change", "z": "9c280ddf049b2b4d", "name": "Scheduler Daten", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "payload.{\"name\":name,\t \"room\": $split(name,\" / \")[2],\t \"profile\" : $split(name,\" / \")[1],\t \"profiles\" :{\"Arbeit\":\"1\",\"Frei\":\"2\",\"Homeoffice\":\"3\"},\t \"scheduler\":schedule.{\"id\":id,\"rrule\":{\"freq\":($split(rrule,\";\").$split($,\"=\")[1])[0],\t \"day\" : ($split(rrule,\";\").$split($,\"=\")[1])[1],\t \"time\" : $pad(($split(rrule,\";\").$split($,\"=\")[1])[2],-2,\"0\") & \":\" & $pad(($split(rrule,\";\").$split($,\"=\")[1])[3],-2,\"0\"),\t \"interval\" : ($split(rrule,\";\").$split($,\"=\")[1])[4]},\"variable\": $single($$.payload.variables, function($v){$v.id=variable_id})},\t \"variables\" : variables} ~> |$|\t { \t \"scheduler\": \t [scheduler[rrule.day=\"MO\"]#$i.{\"topic\" : \"heatingcontrol.0.Profiles.\" & $lookup(%.profiles,%.profile) & \".\" & %.room & \".Mon.Periods.\" & ($i+1),\"time\": rrule.time, \"Temperature\": variable.value} ,\t scheduler[rrule.day=\"TU\"]#$i.{\"topic\" : \"heatingcontrol.0.Profiles.\" & $lookup(%.profiles,%.profile) & \".\" & %.room & \".Tue.Periods.\" & ($i+1),\"time\": rrule.time, \"Temperature\": variable.value},\t scheduler[rrule.day=\"WE\"]#$i.{\"topic\" : \"heatingcontrol.0.Profiles.\" & $lookup(%.profiles,%.profile) & \".\" & %.room & \".Wed.Periods.\" & ($i+1),\"time\": rrule.time, \"Temperature\": variable.value},\t scheduler[rrule.day=\"TH\"]#$i.{\"topic\" : \"heatingcontrol.0.Profiles.\" & $lookup(%.profiles,%.profile) & \".\" & %.room & \".Thu.Periods.\" & ($i+1),\"time\": rrule.time, \"Temperature\": variable.value},\t scheduler[rrule.day=\"FR\"]#$i.{\"topic\" : \"heatingcontrol.0.Profiles.\" & $lookup(%.profiles,%.profile) & \".\" & %.room & \".Fri.Periods.\" & ($i+1),\"time\": rrule.time, \"Temperature\": variable.value},\t scheduler[rrule.day=\"SA\"]#$i.{\"topic\" : \"heatingcontrol.0.Profiles.\" & $lookup(%.profiles,%.profile) & \".\" & %.room & \".Sat.Periods.\" & ($i+1),\"time\": rrule.time, \"Temperature\": variable.value},\t scheduler[rrule.day=\"SU\"]#$i.{\"topic\" : \"heatingcontrol.0.Profiles.\" & $lookup(%.profiles,%.profile) & \".\" & %.room & \".Sun.Periods.\" & ($i+1),\"time\": rrule.time, \"Temperature\": variable.value}]\t },\t [\"profiles\",\"variables\"]|", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 410, "y": 3000, "wires": [ [ "3dfdb45ec85ec5f5", "722a6036de8545ce" ] ] }, { "id": "3dfdb45ec85ec5f5", "type": "debug", "z": "9c280ddf049b2b4d", "name": "Scheduler Daten", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 690, "y": 3000, "wires": [] }, { "id": "722a6036de8545ce", "type": "change", "z": "9c280ddf049b2b4d", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "payload.scheduler", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 630, "y": 3060, "wires": [ [ "849a44a081c3b77e", "1e015238d6b94f53" ] ] }, { "id": "849a44a081c3b77e", "type": "debug", "z": "9c280ddf049b2b4d", "name": "Scheduler Daten 2", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 850, "y": 3060, "wires": [] }, { "id": "1e015238d6b94f53", "type": "split", "z": "9c280ddf049b2b4d", "name": "", "splt": "\\n", "spltType": "str", "arraySplt": 1, "arraySpltType": "len", "stream": false, "addname": "", "x": 830, "y": 3120, "wires": [ [ "b7c0b2e8349051b4", "887fcd1ceb0cca72" ] ] }, { "id": "b7c0b2e8349051b4", "type": "change", "z": "9c280ddf049b2b4d", "name": "Temperature", "rules": [ { "t": "set", "p": "topic", "pt": "msg", "to": "payload.topic & \".Temperature\"", "tot": "jsonata" }, { "t": "set", "p": "payload", "pt": "msg", "to": "payload.Temperature", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1010, "y": 3160, "wires": [ [ "7bb2e503288d8344" ] ] }, { "id": "887fcd1ceb0cca72", "type": "change", "z": "9c280ddf049b2b4d", "name": "time", "rules": [ { "t": "set", "p": "topic", "pt": "msg", "to": "payload.topic & \".time\"", "tot": "jsonata" }, { "t": "set", "p": "payload", "pt": "msg", "to": "payload.time", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 990, "y": 3100, "wires": [ [ "d31211f307ccbc5c" ] ] }, { "id": "7bb2e503288d8344", "type": "ioBroker out", "z": "9c280ddf049b2b4d", "d": true, "name": "Erstelle Temperature", "topic": "", "ack": "false", "autoCreate": "true", "stateName": "", "role": "", "payloadType": "number", "readonly": "false", "stateUnit": "°C", "stateMin": "", "stateMax": "", "x": 1220, "y": 3160, "wires": [] }, { "id": "d31211f307ccbc5c", "type": "ioBroker out", "z": "9c280ddf049b2b4d", "d": true, "name": "Erstelle Time", "topic": "", "ack": "false", "autoCreate": "true", "stateName": "", "role": "", "payloadType": "string", "readonly": "false", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1190, "y": 3100, "wires": [] } ]
Wie gesagt viel komplexer sollte es nicht werden, sonst musst halt mit Javascript programmieren - auch wenn Du wahrscheinlich ein Vielfaches an Code brauchen wirst.
-
@mickym
du bist genial, dass hätte ich im Leben nicht hinbekommen, 3 Fragen hätte ich aber noch.-
Kann man das ganze noch nach Stunden aufsteigend sortieren?
Die Daten werden von der Api leider nicht chronologisch übergeben, daher wird es in der Tabelle nicht richtig dargestellt und ich schreibe in die falschen Datenpunkte. -
Wie kann ich auf Änderungen prüfen?
Ich möchte den Flow zusätzlich bei Änderungen in den Heizplänen ausführen lassen. -
Kann ich dir für deinen Aufwand irgendwie eine Spende zukommen lassen?
-
-
@oli sagte in Benötige Hilfe mit Node-Red in Verbindung mit homee:
@mickym
du bist genial, dass hätte ich im Leben nicht hinbekommen, 3 Fragen hätte ich aber noch.Vielen Dank! - Aber zur Genialität fehlt mir noch einiges.
- Ich brauch da immer noch viel zu lange.
- Kann man das ganze noch nach Stunden aufsteigend sortieren?
Die Daten werden von der Api leider nicht chronologisch übergeben, daher wird es in der Tabelle nicht richtig dargestellt und ich schreibe in die falschen Datenpunkte.
Das ist mir erst gar nicht aufgefallen, weil ich dachte es sei eigentlich schon sortiert. Nur am Wochenende hatte ich dann entdeckt, dass es nicht ganz stimmt:
Für die Tabelle war es relativ einfach zu beheben:
Für die Datenpunkte war es leider schwieriger und ich musste auch anfangen in JSONATA zu programmieren und mit Variablen arbeiten - da man nach der Sortierung nicht mehr auf das parent Objekt zugreifen konnte (habs nicht hinbekommen - ausser eben mit Nutzung von Variablen). Jedenfalls sollte es jetzt so hinhauen:
- Wie kann ich auf Änderungen prüfen?
Ich möchte den Flow zusätzlich bei Änderungen in den Heizplänen ausführen lassen.
Ich hab den ganzen Plan im Flow-Kontext gespeichert und der wird mit dem neuen Input verglichen. Bei Änderungen wird nun die Nachrichteneigenschaft changed gesetzt - die nur wenn sie true ist in der nachfolgenden Switch Node durchgelassen wird.
Hier nun der vollständige Flow:
[ { "id": "29c703f08796e8f8", "type": "inject", "z": "9c280ddf049b2b4d", "name": "trigger", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "[{\"id\":1,\"name\":\"Heizplan / Arbeit / Wohnzimmer\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571493363,\"note\":\"\",\"order\":1,\"active_schedule\":29,\"attribute_ids\":[44,72,183,410],\"node_ids\":[2,4,19,62],\"schedule\":[{\"id\":1,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":2,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":1},{\"id\":3,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":4,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":3},{\"id\":21,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":22,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":3},{\"id\":23,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":24,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":3},{\"id\":25,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":26,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":27,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":28,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":29,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":1},{\"id\":30,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":1},{\"id\":31,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":1},{\"id\":32,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":1},{\"id\":33,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":34,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":35,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":36,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=14;BYMINUTE=0;INTERVAL=1\",\"variable_id\":2},{\"id\":37,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":3},{\"id\":38,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":3},{\"id\":39,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":3},{\"id\":42,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":3}],\"variables\":[{\"id\":1,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":2,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":3,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":4,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":5,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":6,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":7,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":1,\"enabled\":true,\"attribute_ids\":[126,131],\"trigger_value\":0,\"operator\":5,\"variable_id\":5,\"delay\":300,\"priority\":0,\"type\":1},{\"id\":2,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":4,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":3,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":7,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":3,\"name\":\"Heizplan / Arbeit / Bad\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571494193,\"note\":\"\",\"order\":2,\"active_schedule\":97,\"attribute_ids\":[237],\"node_ids\":[26],\"schedule\":[{\"id\":67,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=4;BYMINUTE=30;INTERVAL=1\",\"variable_id\":20},{\"id\":68,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":17},{\"id\":69,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":70,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":17},{\"id\":91,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=4;BYMINUTE=30;INTERVAL=1\",\"variable_id\":20},{\"id\":92,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=4;BYMINUTE=30;INTERVAL=1\",\"variable_id\":20},{\"id\":93,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=4;BYMINUTE=30;INTERVAL=1\",\"variable_id\":20},{\"id\":94,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=4;BYMINUTE=30;INTERVAL=1\",\"variable_id\":20},{\"id\":95,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":96,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":17},{\"id\":97,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":17},{\"id\":98,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":17},{\"id\":99,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":17},{\"id\":100,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=6;BYMINUTE=30;INTERVAL=1\",\"variable_id\":17},{\"id\":102,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":103,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":104,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":105,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":106,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":107,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":15},{\"id\":108,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":15},{\"id\":109,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":17},{\"id\":110,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":17},{\"id\":111,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":17},{\"id\":114,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":17},{\"id\":115,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":17},{\"id\":116,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":117,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":20},{\"id\":472,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=15;BYMINUTE=30;INTERVAL=1\",\"variable_id\":15},{\"id\":473,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=15;BYMINUTE=30;INTERVAL=1\",\"variable_id\":15},{\"id\":474,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=15;BYMINUTE=30;INTERVAL=1\",\"variable_id\":15},{\"id\":475,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=15;BYMINUTE=30;INTERVAL=1\",\"variable_id\":15},{\"id\":476,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=14;BYMINUTE=0;INTERVAL=1\",\"variable_id\":15}],\"variables\":[{\"id\":15,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":16,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":17,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":18,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":19,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":20,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":21,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":7,\"enabled\":true,\"attribute_ids\":[136],\"trigger_value\":0,\"operator\":5,\"variable_id\":19,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":8,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":18,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":9,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":21,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":4,\"name\":\"Heizplan / Arbeit / WC\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571494812,\"note\":\"\",\"order\":3,\"active_schedule\":126,\"attribute_ids\":[86],\"node_ids\":[5],\"schedule\":[{\"id\":119,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":126,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":24},{\"id\":127,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":128,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":129,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":130,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=14;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":131,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":132,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":22},{\"id\":133,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":24},{\"id\":134,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":24},{\"id\":135,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":24},{\"id\":138,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":24},{\"id\":139,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":24},{\"id\":140,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":24}],\"variables\":[{\"id\":22,\"name\":\"Eco\",\"value\":19,\"type\":3},{\"id\":23,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":24,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":25,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":26,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":27,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":28,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":10,\"enabled\":true,\"attribute_ids\":[121],\"trigger_value\":0,\"operator\":5,\"variable_id\":26,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":11,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":25,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":12,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":28,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":5,\"name\":\"Heizplan / Arbeit / Büro\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571497652,\"note\":\"\",\"order\":4,\"active_schedule\":144,\"attribute_ids\":[30],\"node_ids\":[1],\"schedule\":[{\"id\":141,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":144,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":168,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=14;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":169,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":170,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":174,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":175,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":176,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":347,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":348,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":349,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=15;BYMINUTE=0;INTERVAL=1\",\"variable_id\":30},{\"id\":350,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":351,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31},{\"id\":352,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":31}],\"variables\":[{\"id\":29,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":30,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":31,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":32,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":33,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":34,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":35,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":13,\"enabled\":true,\"attribute_ids\":[111,116],\"trigger_value\":0,\"operator\":5,\"variable_id\":33,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":14,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":32,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":15,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":35,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":6,\"name\":\"Heizplan / Frei / Wohnzimmer\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571508227,\"note\":\"\",\"order\":5,\"active_schedule\":201,\"attribute_ids\":[44,72,183,410],\"node_ids\":[2,4,19,62],\"schedule\":[{\"id\":201,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":207,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":208,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":209,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":210,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":211,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":212,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":213,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":214,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":215,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":216,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":217,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38},{\"id\":218,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":37},{\"id\":219,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":38}],\"variables\":[{\"id\":36,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":37,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":38,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":39,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":40,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":41,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":42,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":16,\"enabled\":true,\"attribute_ids\":[126,131],\"trigger_value\":0,\"operator\":5,\"variable_id\":40,\"delay\":300,\"priority\":0,\"type\":1},{\"id\":17,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":39,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":18,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":42,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":7,\"name\":\"Heizplan / Frei / Bad\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571508465,\"note\":\"\",\"order\":6,\"active_schedule\":225,\"attribute_ids\":[237],\"node_ids\":[26],\"schedule\":[{\"id\":224,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":225,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":226,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":244,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":245,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":246,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":247,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":248,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":249,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":250,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":251,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":252,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":253,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":254,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":255,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":256,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":43},{\"id\":257,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":258,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":259,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":260,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":261,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":262,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":48},{\"id\":263,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":264,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":265,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":266,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":267,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45},{\"id\":268,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":45}],\"variables\":[{\"id\":43,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":44,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":45,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":46,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":47,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":48,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":49,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":19,\"enabled\":true,\"attribute_ids\":[136],\"trigger_value\":0,\"operator\":5,\"variable_id\":47,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":20,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":46,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":21,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":49,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":8,\"name\":\"Heizplan / Frei / Büro\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571508758,\"note\":\"\",\"order\":7,\"active_schedule\":293,\"attribute_ids\":[30],\"node_ids\":[1],\"schedule\":[{\"id\":269,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":293,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":294,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":295,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":296,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":297,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":298,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":51},{\"id\":459,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":460,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":461,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":462,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":463,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":464,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52},{\"id\":465,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":52}],\"variables\":[{\"id\":50,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":51,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":52,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":53,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":54,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":55,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":56,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":22,\"enabled\":true,\"attribute_ids\":[111,116],\"trigger_value\":0,\"operator\":5,\"variable_id\":54,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":23,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":53,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":24,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":56,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":9,\"name\":\"Heizplan / Frei / WC\",\"image\":\"planicon_radiator\",\"enabled\":false,\"type\":1,\"owner\":1,\"added\":1571508871,\"note\":\"\",\"order\":8,\"active_schedule\":329,\"attribute_ids\":[86],\"node_ids\":[5],\"schedule\":[{\"id\":305,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":329,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":330,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":331,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":332,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":333,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":334,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":57},{\"id\":337,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":340,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":443,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":444,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":466,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":467,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":468,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59},{\"id\":469,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":59}],\"variables\":[{\"id\":57,\"name\":\"Eco\",\"value\":19,\"type\":3},{\"id\":58,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":59,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":60,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":61,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":62,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":63,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":25,\"enabled\":true,\"attribute_ids\":[121],\"trigger_value\":0,\"operator\":5,\"variable_id\":61,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":26,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":60,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":27,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":63,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":11,\"name\":\"Heizplan / Homeoffice / Wohnzimmer\",\"image\":\"planicon_radiator\",\"enabled\":true,\"type\":1,\"owner\":1,\"added\":1572287598,\"note\":\"\",\"order\":9,\"active_schedule\":393,\"attribute_ids\":[44,72,183,410],\"node_ids\":[2,4,19,62],\"schedule\":[{\"id\":367,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":370,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":73},{\"id\":387,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":389,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":390,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":73},{\"id\":391,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":392,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":393,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":394,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":72},{\"id\":395,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":73},{\"id\":396,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":73},{\"id\":397,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":73},{\"id\":399,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":73},{\"id\":400,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":73}],\"variables\":[{\"id\":71,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":72,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":73,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":74,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":75,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":76,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":77,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":31,\"enabled\":true,\"attribute_ids\":[126,131],\"trigger_value\":0,\"operator\":5,\"variable_id\":75,\"delay\":300,\"priority\":0,\"type\":1},{\"id\":32,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":74,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":33,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":77,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":12,\"name\":\"Heizplan / Homeoffice / Büro\",\"image\":\"planicon_radiator\",\"enabled\":true,\"type\":1,\"owner\":1,\"added\":1572287884,\"note\":\"\",\"order\":10,\"active_schedule\":408,\"attribute_ids\":[30],\"node_ids\":[1],\"schedule\":[{\"id\":401,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":402,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":403,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":404,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":405,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":406,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":407,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":408,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":409,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":79},{\"id\":410,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":411,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":412,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":413,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":80},{\"id\":414,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":80},{\"id\":470,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80},{\"id\":471,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":80}],\"variables\":[{\"id\":78,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":79,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":80,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":81,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":82,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":83,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":84,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":34,\"enabled\":true,\"attribute_ids\":[111,116],\"trigger_value\":0,\"operator\":5,\"variable_id\":82,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":35,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":81,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":36,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":84,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":13,\"name\":\"Heizplan / Homeoffice / Bad\",\"image\":\"planicon_radiator\",\"enabled\":true,\"type\":1,\"owner\":1,\"added\":1572288062,\"note\":\"\",\"order\":11,\"active_schedule\":427,\"attribute_ids\":[237],\"node_ids\":[26],\"schedule\":[{\"id\":415,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":416,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=7;BYMINUTE=30;INTERVAL=1\",\"variable_id\":85},{\"id\":417,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":418,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":87},{\"id\":419,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":420,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":421,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":422,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=5;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":423,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":424,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=15;INTERVAL=1\",\"variable_id\":87},{\"id\":425,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=7;BYMINUTE=30;INTERVAL=1\",\"variable_id\":85},{\"id\":426,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=7;BYMINUTE=30;INTERVAL=1\",\"variable_id\":85},{\"id\":427,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=7;BYMINUTE=30;INTERVAL=1\",\"variable_id\":85},{\"id\":428,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=7;BYMINUTE=30;INTERVAL=1\",\"variable_id\":85},{\"id\":429,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":430,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":431,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":432,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":433,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":434,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":85},{\"id\":435,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=10;BYMINUTE=0;INTERVAL=1\",\"variable_id\":85},{\"id\":436,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=30;INTERVAL=1\",\"variable_id\":87},{\"id\":437,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":87},{\"id\":438,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":87},{\"id\":439,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":87},{\"id\":440,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":87},{\"id\":441,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=23;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90},{\"id\":442,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=22;BYMINUTE=0;INTERVAL=1\",\"variable_id\":90}],\"variables\":[{\"id\":85,\"name\":\"Eco\",\"value\":18,\"type\":3},{\"id\":86,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":87,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":88,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":89,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":90,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":91,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":37,\"enabled\":true,\"attribute_ids\":[136],\"trigger_value\":0,\"operator\":5,\"variable_id\":89,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":38,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":88,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":39,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":91,\"delay\":0,\"priority\":10,\"type\":3}]},{\"id\":14,\"name\":\"Heizplan / Homeoffice / WC\",\"image\":\"planicon_radiator\",\"enabled\":true,\"type\":1,\"owner\":1,\"added\":1572288296,\"note\":\"\",\"order\":12,\"active_schedule\":449,\"attribute_ids\":[86],\"node_ids\":[5],\"schedule\":[{\"id\":445,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":446,\"rrule\":\"FREQ=WEEKLY;BYDAY=MO;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":94},{\"id\":447,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":448,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":449,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":450,\"rrule\":\"FREQ=WEEKLY;BYDAY=FR;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":451,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=6;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":452,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=8;BYMINUTE=0;INTERVAL=1\",\"variable_id\":92},{\"id\":453,\"rrule\":\"FREQ=WEEKLY;BYDAY=TU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":94},{\"id\":454,\"rrule\":\"FREQ=WEEKLY;BYDAY=WE;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":94},{\"id\":455,\"rrule\":\"FREQ=WEEKLY;BYDAY=TH;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":94},{\"id\":456,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=23;BYMINUTE=20;INTERVAL=1\",\"variable_id\":94},{\"id\":457,\"rrule\":\"FREQ=WEEKLY;BYDAY=SA;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":94},{\"id\":458,\"rrule\":\"FREQ=WEEKLY;BYDAY=SU;BYHOUR=1;BYMINUTE=0;INTERVAL=1\",\"variable_id\":94}],\"variables\":[{\"id\":92,\"name\":\"Eco\",\"value\":19,\"type\":3},{\"id\":93,\"name\":\"Komfort\",\"value\":21,\"type\":2},{\"id\":94,\"name\":\"Nacht\",\"value\":15,\"type\":4},{\"id\":95,\"name\":\"Abwesend\",\"value\":18,\"type\":5},{\"id\":96,\"name\":\"Fenster%20Offen\",\"value\":8,\"type\":6},{\"id\":97,\"name\":\"Komfort Plus\",\"value\":24,\"type\":1},{\"id\":98,\"name\":\"Urlaub\",\"value\":15,\"type\":7}],\"events\":[{\"id\":40,\"enabled\":true,\"attribute_ids\":[121],\"trigger_value\":0,\"operator\":5,\"variable_id\":96,\"delay\":0,\"priority\":0,\"type\":1},{\"id\":41,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":2,\"operator\":14,\"variable_id\":95,\"delay\":0,\"priority\":10,\"type\":2},{\"id\":42,\"enabled\":true,\"attribute_ids\":[1],\"trigger_value\":3,\"operator\":14,\"variable_id\":98,\"delay\":0,\"priority\":10,\"type\":3}]}]", "payloadType": "json", "x": 150, "y": 2940, "wires": [ [ "2bcb34a2d0f6d715" ] ] }, { "id": "60e749dd963aaef8", "type": "debug", "z": "9c280ddf049b2b4d", "name": "Pläne Tabelle", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 940, "y": 2940, "wires": [] }, { "id": "bd4a29afe1d2edc0", "type": "change", "z": "9c280ddf049b2b4d", "name": "Pläne Tabelle", "rules": [ { "t": "set", "p": "active", "pt": "msg", "to": "[{\"id\":true,\"name\":\"aktivert\",\"color\":\"green\"},{\"id\":false,\"name\":\"deaktiviert\",\"color\":\"orange\"}]", "tot": "json" }, { "t": "set", "p": "types", "pt": "msg", "to": "[{\"id\":0,\"name\":\"Keine Zuordnung\"},{\"id\":1,\"name\":\"Heizplan\"},{\"id\":2,\"name\":\"Energie\"},{\"id\":3,\"name\":\"OnOff\"},{\"id\":4,\"name\":\"Anwesenheitssimulation\"},{\"id\":5,\"name\":\"ElektroHeizung\"},{\"id\":50,\"name\":\"Windüberwachung\"},{\"id\":51,\"name\":\"Sonnenautomatisierung\"},{\"id\":52,\"name\":\"Dämmerungsautomatisierung\"}]", "tot": "json" }, { "t": "set", "p": "payload", "pt": "msg", "to": "payload.{\"name\": name,\t \"aktiv\" : ' <font color=\\\"' & $single($$.active, function($v){$v.id = enabled}).color & '\\\"> ' & $single($$.active, function($v){$v.id = enabled}).name,\t \"type\" : $single($$.types, function($v){$v.id = type}).name,\t \"schedule\" : $count(schedule),\t \"devices\" : $count(node_ids),\t \"scheduler\":schedule.{\"id\":id,\"rrule\":{\"freq\":($split(rrule,\";\").$split($,\"=\")[1])[0],\t \"day\" : ($split(rrule,\";\").$split($,\"=\")[1])[1],\t \"time\" : $pad(($split(rrule,\";\").$split($,\"=\")[1])[2],-2,\"0\") & \":\" & $pad(($split(rrule,\";\").$split($,\"=\")[1])[3],-2,\"0\"),\t \"interval\" : ($split(rrule,\";\").$split($,\"=\")[1])[4]},\"variable\": $single($$.payload.variables, function($v){$v.id=variable_id})},\t \"variables\" : variables} ~> |$|\t { \"temperatur\": variables.[$decodeUrlComponent(name) & \": \" & value & \"°C\"] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \"),\t \"montag\": scheduler[rrule.day=\"MO\"]^(rrule.time).[rrule.time & \" = \" & variable.value & \"°C\" ] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \"),\t \"dienstag\": scheduler[rrule.day=\"TU\"]^(rrule.time).[rrule.time & \" = \" & variable.value & \"°C\" ] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \"),\t \"mittwoch\": scheduler[rrule.day=\"WE\"]^(rrule.time).[rrule.time & \" = \" & variable.value & \"°C\" ] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \"),\t \"donnerstag\": scheduler[rrule.day=\"TH\"]^(rrule.time).[rrule.time & \" = \" & variable.value & \"°C\" ] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \"),\t \"freitag\": scheduler[rrule.day=\"FR\"]^(rrule.time).[rrule.time & \" = \" & variable.value & \"°C\" ] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \"),\t \"samstag\": scheduler[rrule.day=\"SA\"]^(rrule.time).[rrule.time & \" = \" & variable.value & \"°C\" ] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \"),\t \"sonntag\": scheduler[rrule.day=\"SU\"]^(rrule.time).[rrule.time & \" = \" & variable.value & \"°C\" ] ~> $reduce(function($A,$v){$append($A,$v)}) ~> $join(\"<br> \")},\t [\"scheduler\",\"variables\"]|", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 700, "y": 2940, "wires": [ [ "60e749dd963aaef8" ] ] }, { "id": "41412eb625251659", "type": "comment", "z": "9c280ddf049b2b4d", "name": "Heizpläne", "info": "", "x": 160, "y": 2840, "wires": [] }, { "id": "65bc684012bb3e71", "type": "change", "z": "9c280ddf049b2b4d", "name": "Scheduler Daten", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "payload.{\"name\":name,\t \"room\": $split(name,\" / \")[2],\t \"profile\" : $split(name,\" / \")[1],\t \"profiles\" :{\"Arbeit\":\"1\",\"Frei\":\"2\",\"Homeoffice\":\"3\"},\t \"scheduler\":schedule.{\"id\":id,\"rrule\":{\"freq\":($split(rrule,\";\").$split($,\"=\")[1])[0],\t \"day\" : ($split(rrule,\";\").$split($,\"=\")[1])[1],\t \"time\" : $pad(($split(rrule,\";\").$split($,\"=\")[1])[2],-2,\"0\") & \":\" & $pad(($split(rrule,\";\").$split($,\"=\")[1])[3],-2,\"0\"),\t \"interval\" : ($split(rrule,\";\").$split($,\"=\")[1])[4]},\"variable\": $single($$.payload.variables, function($v){$v.id=variable_id})},\t \"variables\" : variables} ~> |$|\t { \t \"scheduler\": \t [($p := $lookup(profiles,profile); $r := room; scheduler[rrule.day=\"SA\"]^(rrule.time)#$i.{\"topic\" : \"heatingcontrol.0.Profiles.\" & $p & \".\" & $r & \".Mon.Periods.\" & ($i+1),\"time\": rrule.time, \"Temperature\": variable.value}) ,\t ($p := $lookup(profiles,profile); $r := room; scheduler[rrule.day=\"SA\"]^(rrule.time)#$i.{\"topic\" : \"heatingcontrol.0.Profiles.\" & $p & \".\" & $r & \".Tue.Periods.\" & ($i+1),\"time\": rrule.time, \"Temperature\": variable.value}),\t ($p := $lookup(profiles,profile); $r := room; scheduler[rrule.day=\"SA\"]^(rrule.time)#$i.{\"topic\" : \"heatingcontrol.0.Profiles.\" & $p & \".\" & $r & \".Wed.Periods.\" & ($i+1),\"time\": rrule.time, \"Temperature\": variable.value}),\t ($p := $lookup(profiles,profile); $r := room; scheduler[rrule.day=\"SA\"]^(rrule.time)#$i.{\"topic\" : \"heatingcontrol.0.Profiles.\" & $p & \".\" & $r & \".Thu.Periods.\" & ($i+1),\"time\": rrule.time, \"Temperature\": variable.value}),\t ($p := $lookup(profiles,profile); $r := room; scheduler[rrule.day=\"SA\"]^(rrule.time)#$i.{\"topic\" : \"heatingcontrol.0.Profiles.\" & $p & \".\" & $r & \".Fri.Periods.\" & ($i+1),\"time\": rrule.time, \"Temperature\": variable.value}),\t ($p := $lookup(profiles,profile); $r := room; scheduler[rrule.day=\"SA\"]^(rrule.time)#$i.{\"topic\" : \"heatingcontrol.0.Profiles.\" & $p & \".\" & $r & \".Sat.Periods.\" & ($i+1),\"time\": rrule.time, \"Temperature\": variable.value}),\t ($p := $lookup(profiles,profile); $r := room; scheduler[rrule.day=\"SU\"]^(rrule.time)#$i.{\"topic\" : \"heatingcontrol.0.Profiles.\" & $p & \".\" & $r & \".Sun.Periods.\" & ($i+1),\"time\": rrule.time, \"Temperature\": variable.value})]\t \t },\t [\"profiles\",\"variables\"]|", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 690, "y": 3000, "wires": [ [ "3dfdb45ec85ec5f5", "722a6036de8545ce" ] ] }, { "id": "3dfdb45ec85ec5f5", "type": "debug", "z": "9c280ddf049b2b4d", "name": "Scheduler Daten", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 970, "y": 3000, "wires": [] }, { "id": "722a6036de8545ce", "type": "change", "z": "9c280ddf049b2b4d", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "payload.scheduler", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 910, "y": 3060, "wires": [ [ "849a44a081c3b77e", "1e015238d6b94f53" ] ] }, { "id": "849a44a081c3b77e", "type": "debug", "z": "9c280ddf049b2b4d", "name": "Scheduler Daten 2", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 1130, "y": 3060, "wires": [] }, { "id": "1e015238d6b94f53", "type": "split", "z": "9c280ddf049b2b4d", "name": "", "splt": "\\n", "spltType": "str", "arraySplt": 1, "arraySpltType": "len", "stream": false, "addname": "", "x": 1110, "y": 3120, "wires": [ [ "b7c0b2e8349051b4", "887fcd1ceb0cca72" ] ] }, { "id": "b7c0b2e8349051b4", "type": "change", "z": "9c280ddf049b2b4d", "name": "Temperature", "rules": [ { "t": "set", "p": "topic", "pt": "msg", "to": "payload.topic & \".Temperature\"", "tot": "jsonata" }, { "t": "set", "p": "payload", "pt": "msg", "to": "payload.Temperature", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1290, "y": 3160, "wires": [ [ "7bb2e503288d8344" ] ] }, { "id": "887fcd1ceb0cca72", "type": "change", "z": "9c280ddf049b2b4d", "name": "time", "rules": [ { "t": "set", "p": "topic", "pt": "msg", "to": "payload.topic & \".time\"", "tot": "jsonata" }, { "t": "set", "p": "payload", "pt": "msg", "to": "payload.time", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1270, "y": 3100, "wires": [ [ "d31211f307ccbc5c" ] ] }, { "id": "7bb2e503288d8344", "type": "ioBroker out", "z": "9c280ddf049b2b4d", "d": true, "name": "Erstelle Temperature", "topic": "", "ack": "false", "autoCreate": "true", "stateName": "", "role": "", "payloadType": "number", "readonly": "false", "stateUnit": "°C", "stateMin": "", "stateMax": "", "x": 1520, "y": 3160, "wires": [] }, { "id": "d31211f307ccbc5c", "type": "ioBroker out", "z": "9c280ddf049b2b4d", "d": true, "name": "Erstelle Time", "topic": "", "ack": "false", "autoCreate": "true", "stateName": "", "role": "", "payloadType": "string", "readonly": "false", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1470, "y": 3100, "wires": [] }, { "id": "3a98ab78418aa1b8", "type": "switch", "z": "9c280ddf049b2b4d", "name": "geändert?", "property": "changed", "propertyType": "msg", "rules": [ { "t": "true" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 480, "y": 2940, "wires": [ [ "bd4a29afe1d2edc0", "65bc684012bb3e71" ] ] }, { "id": "2bcb34a2d0f6d715", "type": "change", "z": "9c280ddf049b2b4d", "name": "check ", "rules": [ { "t": "set", "p": "current", "pt": "msg", "to": "homee.plan", "tot": "flow" }, { "t": "set", "p": "changed", "pt": "msg", "to": "current = payload ? false : true", "tot": "jsonata" }, { "t": "set", "p": "homee.plan", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 310, "y": 2940, "wires": [ [ "3a98ab78418aa1b8" ] ] } ]
- Kann ich dir für deinen Aufwand irgendwie eine Spende zukommen lassen?
Nein.
- Solange es mir noch Spass macht und ich selbst dabei noch lerne und solche Flows speichere ich mir durchaus ab, ist mir das Lohn genug.
- Das Einzige was Du machen kannst, ist dieses tolle Tool (ich meine natürlich die "roten Knoten" ) und auch die Genialität von JSONATA zu promoten (die meisten wissen gar nicht, was ihnen entgeht).
Du kannst ja mal versuchen, es mit Javascript nachzubauen. Und die "Puzzle"-Fraktion könnte zwar auch JSONATA nutzen und tut es aber nicht - weil es sicher am Anfang nicht einfach ist, aber wenn man es einigermaßen durchschaut hat, spart man sich in meinen Augen eine Menge Codiererei. Wie gesagt Du kannst ja gerne mal - da Du des Programmierens mächtig bist, das gleiche mal mit function Nodes und Javascript programmieren.
- Kann man das ganze noch nach Stunden aufsteigend sortieren?
-
Na das schaut doch sehr gut aus.
-
@mickym
Danke -
@oli
Wahnsinn! Tolles Projekt!
Ich benutze Node Red für virtuelle Geräte im Homee.Vor knapp 1 Jahr bin ich von IO Broker zu Homeassistant gewechselt, weil die Visualisierung dort gleich mit dabei ist und ich gerne ein schönes Dashbord für ein Tablet haben wollte. Spielerei.
Wo ich das Projekt hier sehe, gehe ich vielleicht wieder auf iO Broker zurück.