- Home
- Deutsch
- Skripten / Logik
- Node-Red
- String aufteilen
String aufteilen
-
-
@mickym Das sieht schon mal sehr gut aus, Danke. Kann ich es auch direkt auf verschiedene Ausgänge aufteilen oder benötige ich nochmals ein Changenod dazu, und dann noch eines um es auf die boolschen Werte zu ändern?
-
@paul53 füllt mir dein Script direkt die 7 Objekte? Wo kann ich definieren was zu was gehört?
-
[ { "id": "b3bfd4c2.e5c2c8", "type": "split", "z": "6a421c3f.cc35f4", "name": "", "splt": ",", "spltType": "str", "arraySplt": 1, "arraySpltType": "len", "stream": false, "addname": "", "x": 2750, "y": 980, "wires": [ [ "1b19502c.f6aba" ] ] }, { "id": "2c3a675a.c13998", "type": "inject", "z": "6a421c3f.cc35f4", "name": "", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "0,0,0,1,0,0,1", "payloadType": "str", "x": 2590, "y": 980, "wires": [ [ "b3bfd4c2.e5c2c8" ] ] }, { "id": "1b19502c.f6aba", "type": "change", "z": "6a421c3f.cc35f4", "name": "", "rules": [ { "t": "change", "p": "payload", "pt": "msg", "from": "0", "fromt": "str", "to": "false", "tot": "bool" }, { "t": "change", "p": "payload", "pt": "msg", "from": "1", "fromt": "str", "to": "true", "tot": "bool" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 2930, "y": 980, "wires": [ [ "d6edd7f5.488038" ] ] }, { "id": "340f067c.5eb5ba", "type": "debug", "z": "6a421c3f.cc35f4", "name": "Montag", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 3340, "y": 880, "wires": [] }, { "id": "d6edd7f5.488038", "type": "switch", "z": "6a421c3f.cc35f4", "name": "", "property": "parts.index", "propertyType": "msg", "rules": [ { "t": "eq", "v": "0", "vt": "num" }, { "t": "eq", "v": "1", "vt": "num" }, { "t": "eq", "v": "2", "vt": "num" }, { "t": "eq", "v": "3", "vt": "num" }, { "t": "eq", "v": "4", "vt": "num" }, { "t": "eq", "v": "5", "vt": "num" }, { "t": "eq", "v": "6", "vt": "num" } ], "checkall": "true", "repair": false, "outputs": 7, "x": 3110, "y": 980, "wires": [ [ "340f067c.5eb5ba" ], [ "e9d9933f.1a956" ], [ "858e703e.77a1" ], [ "851179d3.084838" ], [ "d8af3db0.87b92" ], [ "c8a0372a.741b08" ], [ "3e8c628.cba049e" ] ] }, { "id": "e9d9933f.1a956", "type": "debug", "z": "6a421c3f.cc35f4", "name": "Dienstag", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 3340, "y": 920, "wires": [] }, { "id": "858e703e.77a1", "type": "debug", "z": "6a421c3f.cc35f4", "name": "Mittwoch", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 3340, "y": 960, "wires": [] }, { "id": "851179d3.084838", "type": "debug", "z": "6a421c3f.cc35f4", "name": "Donnerstag", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 3350, "y": 1000, "wires": [] }, { "id": "d8af3db0.87b92", "type": "debug", "z": "6a421c3f.cc35f4", "name": "Freitag", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 3340, "y": 1040, "wires": [] }, { "id": "c8a0372a.741b08", "type": "debug", "z": "6a421c3f.cc35f4", "name": "Samstag", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 3340, "y": 1080, "wires": [] }, { "id": "3e8c628.cba049e", "type": "debug", "z": "6a421c3f.cc35f4", "name": "Sonntag", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 3340, "y": 1120, "wires": [] } ]
-
@mickym Vielen Dank
Ich muss muss mich da wirklich noch etwas reinarbeiten.
-
@hafo sagte füllt mir dein Script direkt die 7 Objekte?
Ja, wenn die 7 Datenpunkte vorher unter "0_userdata.0" erstellt wurden.
@hafo sagte in String aufteilen:
Wo kann ich definieren was zu was gehört?
Der erste Wert wird in "0_userdata.0.xyz.msg1" geschrieben, der zweite in "0_userdata.0.xyz.msg2" usw. "xyz" sollte durch etwas sinnvolles ersetzt werden.
-
@hafo sagte in String aufteilen:
@mickym Vielen Dank
Ich muss muss mich da wirklich noch etwas reinarbeiten.
Weißt Du, wenn ich Dein anderen Post nicht gelesen hätte, hätte ich ja nicht gewusst auf was es hinausläuft.
Gestern hast aber keine Antwort von mir bekommen, da Du weder Dein VIS noch Deine Widgets vorgestellt hast. Außerdem sind mir Screenshots die Function Nodes enthalten ohne dass der Flow exportiert sind, eine Black-Box - was soll man denn da helfen?
Also wenn Du wirkliche Hilfe willst, dann ist es am Besten wenn man sich beim Beschreiben des Problems etwas ausführlicher Mühe gibt.
Ich gehe nun mal davon aus, dass Du in Deiner Vis nun Widgets als Switches hast - die true oder false für den Wochentag bieten und Du für jeden Wochentag einen eigenen Datenpunkt erstellt hast.
Dann wirst Du wahrscheinlich als nächstes vor der Herausforderung stehen, diese Datenpunkte wieder in den Ausgangsstring zu verwandeln. ;). Tipp: Sammeln mit JOIN als Objekt, SPLIT in Einzelnachrichten, JOIN in String.
-
@hafo sagte: Wo kann ich definieren was zu was gehört?
Wenn es um die Tomaten an Wochentagen geht, z.B. "0_userdata.0.Bewaesserung.Tomaten.Mittwoch":
const path = '0_userdata.0.Bewaesserung.Tomaten.'; const idString = '...'; const weekdays = ['Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag','Sonntag']; on(idString, function(dp) { let arr = dp.state.val.split(','); for(let i = 0; i < arr.length; i++) { setState(path + weekdays[i], !!parseInt(arr[i]), true); } });
-
@mickym Deine Glaskugel möchte ich auch mal haben. Aber das zurückführen in einen String kenne ich noch aus meinem Projekt Wetterstation. Ich werde mein Projekt unter Vis einmal genau vorstellen, das vereinfacht sicher vieles. Ich fürchte ich bin noch lange nicht am Ziel.
@paul53 Danke, das wäre wahrscheinlich der kürzere Weg gewesen, ich habe aber schon mickym's Lösung übernommen. Das ist für micht ehrlich gesagt auch durchschaubarer. -
@hafo sagte in String aufteilen:
Aber das zurückführen in einen String kenne ich noch aus meinem Projekt Wetterstation.
In dem Fall würde ich es aber anders machen, was aber nicht heißt, dass es nicht auch so ginge.
-
@mickym dann kläre mich doch bitte auf, als Anfänger ist man offen für bessere Wege
-
@hafo sagte in String aufteilen:
@mickym dann kläre mich doch bitte auf, als Anfänger ist man offen für bessere Wege
Nun dann poste doch mal wie Deine Wochentagspunkte unter 0_userdata.0 aussehen, die Du wieder in die Stringform zurückhaben willst. Gerne auch Screenshot der Objekte Struktur und einmal den Pfad zu einem Wochentag in Textform in Code-Tags. Ich kanns dann halt besser anpassen, aber im Grunde schaut der Flow so aus:
-
@mickym gerne. Ich möchte grundsätzlich alles wichtige als Objekt gespeichert haben. Wenn ich im Vis dann mithilfe des Filter dropdown einen Kanal auswähle, werden die entsprechenden Punkte in die Objekte für das Vis geladen und dort angezeigt. Diese kann ich dann ändern und auf speichern klicken. Dann sollte es die Daten wieder auf den richtigen Objekten speichern. Diese Änderung löst dann einen String aus, welcher den Timer programmiert.
Soviel zur Theorie, ich hoffe das ist halbwegs verständlich.
Hier werden die Objekte zum Vis geladen:
[ { "id": "9e190b64.53d15", "type": "ioBroker in", "z": "99194dc0.5d65f", "name": "Vis Auswahl", "topic": "0_userdata.0.Bewässerung.vis_Auswahl", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "fireOnStart": "false", "x": 90, "y": 520, "wires": [ [ "1e3267dc.fdde18" ] ] }, { "id": "1e3267dc.fdde18", "type": "switch", "z": "99194dc0.5d65f", "name": "Verteiler", "property": "payload", "propertyType": "msg", "rules": [ { "t": "eq", "v": "1", "vt": "num" }, { "t": "eq", "v": "2", "vt": "num" }, { "t": "eq", "v": "3", "vt": "num" }, { "t": "eq", "v": "4", "vt": "num" }, { "t": "eq", "v": "5", "vt": "num" }, { "t": "eq", "v": "6", "vt": "num" }, { "t": "eq", "v": "7", "vt": "num" } ], "checkall": "true", "repair": false, "outputs": 7, "x": 260, "y": 520, "wires": [ [ "d701193.8d08d68", "d61802a5.3c8ee8", "ed935774.7ff95", "6d7eebae.187484" ], [ "6069718b.b27198", "3064f4bf.b9cfd4", "db6d1d71.321db", "c50a6d57.163c98" ], [ "6a6c068a.66fae", "7c456758.fd2e28", "420e5dd6.a6a794", "fdab73fb.a29758" ], [ "b29ffe85.62b778", "a655384e.cc9f48", "85581d0d.dcdac8", "cb96de0f.567aa8" ], [ "9a7fe8d.96ed618", "8ecb2b31.69c9a", "57cab2ad.5238ec", "2bb7c24b.2e20ce" ], [ "21765429.9e148c", "96ac89c7.f640c", "fe4ba9f8.37b3e8", "a3da58b6.1c94d8" ], [ "32de8143.168756", "4e50060a.be7778", "1386479f.8c24d", "760b9f83.494e5" ] ] }, { "id": "32de8143.168756", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Tomaten", "topic": "0_userdata.0.Bewässerung.Tomaten_Tage", "attrname": "payload", "payloadType": "value", "x": 680, "y": 300, "wires": [ [ "b3bfd4c2.e5c2c8" ] ] }, { "id": "b3bfd4c2.e5c2c8", "type": "split", "z": "99194dc0.5d65f", "name": "", "splt": ",", "spltType": "str", "arraySplt": 1, "arraySpltType": "len", "stream": false, "addname": "", "x": 890, "y": 180, "wires": [ [ "1b19502c.f6aba" ] ] }, { "id": "1b19502c.f6aba", "type": "change", "z": "99194dc0.5d65f", "name": "", "rules": [ { "t": "change", "p": "payload", "pt": "msg", "from": "0", "fromt": "str", "to": "false", "tot": "bool" }, { "t": "change", "p": "payload", "pt": "msg", "from": "1", "fromt": "str", "to": "true", "tot": "bool" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1070, "y": 180, "wires": [ [ "d6edd7f5.488038" ] ] }, { "id": "d6edd7f5.488038", "type": "switch", "z": "99194dc0.5d65f", "name": "", "property": "parts.index", "propertyType": "msg", "rules": [ { "t": "eq", "v": "0", "vt": "num" }, { "t": "eq", "v": "1", "vt": "num" }, { "t": "eq", "v": "2", "vt": "num" }, { "t": "eq", "v": "3", "vt": "num" }, { "t": "eq", "v": "4", "vt": "num" }, { "t": "eq", "v": "5", "vt": "num" }, { "t": "eq", "v": "6", "vt": "num" } ], "checkall": "true", "repair": false, "outputs": 7, "x": 1250, "y": 180, "wires": [ [ "a79df2d.709cb1" ], [ "b0e42158.9a50a" ], [ "2fda9826.954298" ], [ "13fd78fb.1e2217" ], [ "192afa2f.c005b6" ], [ "76e613ea.b8d75c" ], [ "4b4341e2.22c508" ] ] }, { "id": "6a6c068a.66fae", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Rasen", "topic": "0_userdata.0.Bewässerung.Rasen_Tage", "attrname": "payload", "payloadType": "value", "x": 670, "y": 140, "wires": [ [ "b3bfd4c2.e5c2c8" ] ] }, { "id": "6069718b.b27198", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Gewuertz", "topic": "0_userdata.0.Bewässerung.Gewuertz_Tage", "attrname": "payload", "payloadType": "value", "x": 680, "y": 100, "wires": [ [ "b3bfd4c2.e5c2c8" ] ] }, { "id": "b29ffe85.62b778", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Himbeeren", "topic": "0_userdata.0.Bewässerung.Himbeeren_Tage", "attrname": "payload", "payloadType": "value", "x": 690, "y": 180, "wires": [ [ "b3bfd4c2.e5c2c8" ] ] }, { "id": "d701193.8d08d68", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Chili", "topic": "0_userdata.0.Bewässerung.Chili_Tage", "attrname": "payload", "payloadType": "value", "x": 670, "y": 60, "wires": [ [ "b3bfd4c2.e5c2c8" ] ] }, { "id": "21765429.9e148c", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Feigenbaum", "topic": "0_userdata.0.Bewässerung.Feigenbaum_Tage", "attrname": "payload", "payloadType": "value", "x": 690, "y": 260, "wires": [ [ "b3bfd4c2.e5c2c8" ] ] }, { "id": "9a7fe8d.96ed618", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Gemuese", "topic": "0_userdata.0.Bewässerung.Gemuese_Tage", "attrname": "payload", "payloadType": "value", "x": 680, "y": 220, "wires": [ [ "b3bfd4c2.e5c2c8" ] ] }, { "id": "a79df2d.709cb1", "type": "ioBroker out", "z": "99194dc0.5d65f", "name": "Mo", "topic": "0_userdata.0.Bewässerung.dMo", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1450, "y": 60, "wires": [] }, { "id": "b0e42158.9a50a", "type": "ioBroker out", "z": "99194dc0.5d65f", "name": "Di", "topic": "0_userdata.0.Bewässerung.dDi", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1450, "y": 100, "wires": [] }, { "id": "2fda9826.954298", "type": "ioBroker out", "z": "99194dc0.5d65f", "name": "Mi", "topic": "0_userdata.0.Bewässerung.dMi", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1450, "y": 140, "wires": [] }, { "id": "13fd78fb.1e2217", "type": "ioBroker out", "z": "99194dc0.5d65f", "name": "Do", "topic": "0_userdata.0.Bewässerung.dDo", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1450, "y": 180, "wires": [] }, { "id": "192afa2f.c005b6", "type": "ioBroker out", "z": "99194dc0.5d65f", "name": "Fr", "topic": "0_userdata.0.Bewässerung.dFr", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1450, "y": 220, "wires": [] }, { "id": "76e613ea.b8d75c", "type": "ioBroker out", "z": "99194dc0.5d65f", "name": "Sa", "topic": "0_userdata.0.Bewässerung.dSa", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1450, "y": 260, "wires": [] }, { "id": "4b4341e2.22c508", "type": "ioBroker out", "z": "99194dc0.5d65f", "name": "So", "topic": "0_userdata.0.Bewässerung.dSo", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1450, "y": 300, "wires": [] }, { "id": "4e50060a.be7778", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Tomaten", "topic": "0_userdata.0.Bewässerung.Tomaten_Laufzeit", "attrname": "payload", "payloadType": "value", "x": 680, "y": 640, "wires": [ [ "b3311a52.9de078" ] ] }, { "id": "7c456758.fd2e28", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Rasen", "topic": "0_userdata.0.Bewässerung.Rasen_Laufzeit", "attrname": "payload", "payloadType": "value", "x": 670, "y": 480, "wires": [ [ "b3311a52.9de078" ] ] }, { "id": "3064f4bf.b9cfd4", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Gewuertz", "topic": "0_userdata.0.Bewässerung.Gewuertz_Laufzeit", "attrname": "payload", "payloadType": "value", "x": 680, "y": 440, "wires": [ [ "b3311a52.9de078" ] ] }, { "id": "a655384e.cc9f48", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Himbeeren", "topic": "0_userdata.0.Bewässerung.Himbeeren_Laufzeit", "attrname": "payload", "payloadType": "value", "x": 690, "y": 520, "wires": [ [ "b3311a52.9de078" ] ] }, { "id": "d61802a5.3c8ee8", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Chili", "topic": "0_userdata.0.Bewässerung.Chili_Laufzeit", "attrname": "payload", "payloadType": "value", "x": 670, "y": 400, "wires": [ [ "b3311a52.9de078" ] ] }, { "id": "96ac89c7.f640c", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Feigenbaum", "topic": "0_userdata.0.Bewässerung.Feigenbaum_Laufzeit", "attrname": "payload", "payloadType": "value", "x": 690, "y": 600, "wires": [ [ "b3311a52.9de078" ] ] }, { "id": "8ecb2b31.69c9a", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Gemuese", "topic": "0_userdata.0.Bewässerung.Gemuese_Laufzeit", "attrname": "payload", "payloadType": "value", "x": 680, "y": 560, "wires": [ [ "b3311a52.9de078" ] ] }, { "id": "1386479f.8c24d", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Tomaten", "topic": "0_userdata.0.Bewässerung.Tomaten_Startzeit", "attrname": "payload", "payloadType": "value", "x": 680, "y": 960, "wires": [ [ "88eb3cc4.1f7df8" ] ] }, { "id": "420e5dd6.a6a794", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Rasen", "topic": "0_userdata.0.Bewässerung.Rasen_Startzeit", "attrname": "payload", "payloadType": "value", "x": 670, "y": 800, "wires": [ [ "88eb3cc4.1f7df8" ] ] }, { "id": "db6d1d71.321db", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Gewuertz", "topic": "0_userdata.0.Bewässerung.Gewuertz_Startzeit", "attrname": "payload", "payloadType": "value", "x": 680, "y": 760, "wires": [ [ "88eb3cc4.1f7df8" ] ] }, { "id": "85581d0d.dcdac8", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Himbeeren", "topic": "0_userdata.0.Bewässerung.Himbeeren_Startzeit", "attrname": "payload", "payloadType": "value", "x": 690, "y": 840, "wires": [ [ "88eb3cc4.1f7df8" ] ] }, { "id": "ed935774.7ff95", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Chili", "topic": "0_userdata.0.Bewässerung.Chili_Startzeit", "attrname": "payload", "payloadType": "value", "x": 670, "y": 720, "wires": [ [ "88eb3cc4.1f7df8" ] ] }, { "id": "fe4ba9f8.37b3e8", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Feigenbaum", "topic": "0_userdata.0.Bewässerung.Feigenbaum_Startzeit", "attrname": "payload", "payloadType": "value", "x": 690, "y": 920, "wires": [ [ "88eb3cc4.1f7df8" ] ] }, { "id": "57cab2ad.5238ec", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Gemuese", "topic": "0_userdata.0.Bewässerung.Gemuese_Startzeit", "attrname": "payload", "payloadType": "value", "x": 680, "y": 880, "wires": [ [ "88eb3cc4.1f7df8" ] ] }, { "id": "b3311a52.9de078", "type": "ioBroker out", "z": "99194dc0.5d65f", "name": "vis Laufzeit", "topic": "0_userdata.0.Bewässerung.vis_Laufzeit", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1240, "y": 500, "wires": [] }, { "id": "88eb3cc4.1f7df8", "type": "ioBroker out", "z": "99194dc0.5d65f", "name": "Startzeit h", "topic": "0_userdata.0.Bewässerung.vis_Startzeit_h", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1040, "y": 840, "wires": [] }, { "id": "760b9f83.494e5", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Tomaten", "topic": "0_userdata.0.Bewässerung.Tomaten_Startzeit_m", "attrname": "payload", "payloadType": "value", "x": 680, "y": 1300, "wires": [ [ "e50834b8.eed6d" ] ] }, { "id": "fdab73fb.a29758", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Rasen", "topic": "0_userdata.0.Bewässerung.Rasen_Startzeit_m", "attrname": "payload", "payloadType": "value", "x": 670, "y": 1140, "wires": [ [ "e50834b8.eed6d" ] ] }, { "id": "c50a6d57.163c98", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Gewuertz", "topic": "0_userdata.0.Bewässerung.Gewuertz_Startzeit_m", "attrname": "payload", "payloadType": "value", "x": 680, "y": 1100, "wires": [ [ "e50834b8.eed6d" ] ] }, { "id": "cb96de0f.567aa8", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Himbeeren", "topic": "0_userdata.0.Bewässerung.Himbeeren_Startzeit_m", "attrname": "payload", "payloadType": "value", "x": 690, "y": 1180, "wires": [ [ "e50834b8.eed6d" ] ] }, { "id": "6d7eebae.187484", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Chili", "topic": "0_userdata.0.Bewässerung.Chili_Startzeit_m", "attrname": "payload", "payloadType": "value", "x": 670, "y": 1060, "wires": [ [ "e50834b8.eed6d" ] ] }, { "id": "a3da58b6.1c94d8", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Feigenbaum", "topic": "0_userdata.0.Bewässerung.Feigenbaum_Startzeit_m", "attrname": "payload", "payloadType": "value", "x": 690, "y": 1260, "wires": [ [ "e50834b8.eed6d" ] ] }, { "id": "2bb7c24b.2e20ce", "type": "ioBroker get", "z": "99194dc0.5d65f", "name": "Gemuese", "topic": "0_userdata.0.Bewässerung.Gemuese_Startzeit_m", "attrname": "payload", "payloadType": "value", "x": 680, "y": 1220, "wires": [ [ "e50834b8.eed6d" ] ] }, { "id": "e50834b8.eed6d", "type": "ioBroker out", "z": "99194dc0.5d65f", "name": "Startzeit m", "topic": "0_userdata.0.Bewässerung.vis_Startzeit_m", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1040, "y": 1200, "wires": [] } ]
-
Hier wird der Timer programmiert:
[ { "id": "f1325bf4.4ed0f", "type": "ui_time_scheduler", "z": "95848418.340d58", "group": "df42ab16.59cb78", "name": "Bewässerung", "startDay": "1", "refresh": 60, "devices": [ "Tomaten" ], "onlySendChange": false, "customPayload": false, "eventMode": false, "eventOptions": [], "sendTopic": false, "lat": "46.98015", "lon": "9.5706316", "outputs": 2, "order": 1, "width": 0, "height": 0, "x": 200, "y": 340, "wires": [ [], [ "15cd23d8.ca16d4" ] ], "outputLabels": [ "Info", "Chili", "Gewuertz", "Rasen", "Himbeeren", "Gemuese", "Feigenbaum", "Tomaten" ] }, { "id": "9334f2a7.e7bae", "type": "ioBroker out", "z": "95848418.340d58", "name": "Tomaten", "topic": "mqtt.0.ESP_Bewaesserung.GPIO.12", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 700, "y": 360, "wires": [] }, { "id": "15cd23d8.ca16d4", "type": "change", "z": "95848418.340d58", "name": "change true", "rules": [ { "t": "change", "p": "payload", "pt": "msg", "from": "true", "fromt": "bool", "to": "1", "tot": "num" }, { "t": "change", "p": "payload", "pt": "msg", "from": "false", "fromt": "bool", "to": "0", "tot": "num" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 450, "y": 360, "wires": [ [ "9334f2a7.e7bae" ] ] }, { "id": "1df93fe2.46fbe", "type": "ioBroker in", "z": "95848418.340d58", "name": "Tomaten Startzeit", "topic": "0_userdata.0.Bewässerung.Tomaten_Startzeit", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 140, "y": 40, "wires": [ [ "18e28c07.feb6a4" ] ] }, { "id": "a9f1efd2.7ba", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.tomstart", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 810, "y": 140, "wires": [ [ "49b35f45.913428" ] ] }, { "id": "edbdcaab.6c3bf8", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = Number(msg.payload) + Number(msg.lauf);\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 600, "y": 180, "wires": [ [ "98df7f5d.11b1a8" ] ] }, { "id": "bd4c9090.779998", "type": "ioBroker get", "z": "95848418.340d58", "name": "Tomaten Laufzeit", "topic": "0_userdata.0.Bewässerung.Tomaten_Laufzeit", "attrname": "lauf", "payloadType": "value", "x": 290, "y": 180, "wires": [ [ "61f31e86.30eb7" ] ] }, { "id": "98df7f5d.11b1a8", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.tomend", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 810, "y": 180, "wires": [ [ "49b35f45.913428" ] ] }, { "id": "24fcb6c1.8936a2", "type": "ioBroker in", "z": "95848418.340d58", "name": "Tomaten Tage", "topic": "0_userdata.0.Bewässerung.Tomaten_Tage", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 130, "y": 240, "wires": [ [ "ec2da415.2a4fd8" ] ] }, { "id": "ec2da415.2a4fd8", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.tomtag", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 800, "y": 220, "wires": [ [ "49b35f45.913428" ] ] }, { "id": "f8cc9712.2ab86", "type": "ioBroker in", "z": "95848418.340d58", "name": "Tomaten Laufzeit", "topic": "0_userdata.0.Bewässerung.Tomaten_Laufzeit", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 80, "y": 180, "wires": [ [ "bd4c9090.779998" ] ] }, { "id": "49b35f45.913428", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "send", "tot": "flow" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1070, "y": 180, "wires": [ [ "df48c94f.bf566" ] ] }, { "id": "df48c94f.bf566", "type": "template", "z": "95848418.340d58", "name": "Create timer", "field": "payload", "fieldType": "msg", "format": "handlebars", "syntax": "mustache", "template": "{\"timers\":[{\"starttime\":{{payload.tomstart}},\"days\":[{{payload.tomtag}}],\"output\":\"0\",\"endtime\":{{payload.tomend}}}],\"settings\":{\"disabledDevices\":[]}}", "output": "str", "x": 1270, "y": 180, "wires": [ [ "f1325bf4.4ed0f" ] ] }, { "id": "a2212093.185978", "type": "ioBroker get", "z": "95848418.340d58", "name": "min", "topic": "0_userdata.0.Bewässerung.Tomaten_Startzeit_m", "attrname": "min", "payloadType": "value", "x": 550, "y": 40, "wires": [ [ "cd67691.76bf218" ] ] }, { "id": "cd67691.76bf218", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = (Number(msg.payload) + Number(msg.min)) * 60000;\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 720, "y": 40, "wires": [ [ "a9f1efd2.7ba", "bd4c9090.779998" ] ] }, { "id": "18e28c07.feb6a4", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = (Number(msg.payload) - 1) * 60;\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 350, "y": 40, "wires": [ [ "a2212093.185978" ] ] }, { "id": "61f31e86.30eb7", "type": "calculator", "z": "95848418.340d58", "name": "", "inputMsgField": "lauf", "outputMsgField": "lauf", "operation": "mult", "constant": "60000", "round": false, "decimals": 0, "x": 460, "y": 180, "wires": [ [ "edbdcaab.6c3bf8" ] ] }, { "id": "c5a2845b.60457", "type": "ui_time_scheduler", "z": "95848418.340d58", "group": "df42ab16.59cb78", "name": "Bewässerung", "startDay": "1", "refresh": 60, "devices": [ "Gewuertz" ], "onlySendChange": false, "customPayload": false, "eventMode": false, "eventOptions": [], "sendTopic": false, "lat": "46.98015", "lon": "9.5706316", "outputs": 2, "order": 1, "width": 0, "height": 0, "x": 240, "y": 900, "wires": [ [], [ "677967fd.d6508" ] ], "outputLabels": [ "Info", "Chili" ] }, { "id": "e0307c77.b211c", "type": "ioBroker out", "z": "95848418.340d58", "name": "Gewürtz", "topic": "mqtt.0.ESP_Bewaesserung.GPIO.4", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 740, "y": 920, "wires": [] }, { "id": "677967fd.d6508", "type": "change", "z": "95848418.340d58", "name": "change true", "rules": [ { "t": "change", "p": "payload", "pt": "msg", "from": "true", "fromt": "bool", "to": "1", "tot": "num" }, { "t": "change", "p": "payload", "pt": "msg", "from": "false", "fromt": "bool", "to": "0", "tot": "num" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 550, "y": 920, "wires": [ [ "e0307c77.b211c" ] ] }, { "id": "caf7b2e8.1894b", "type": "ioBroker in", "z": "95848418.340d58", "name": "Gewuertz Startzeit", "topic": "0_userdata.0.Bewässerung.Gewuertz_Startzeit", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 190, "y": 600, "wires": [ [ "fc7a7352.44fc9" ] ] }, { "id": "5ecdf7a0.e5c52", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.gewstart", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 850, "y": 700, "wires": [ [ "b11dd4d7.897628" ] ] }, { "id": "1cf4d57e.33b613", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = Number(msg.payload) + Number(msg.lauf);\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 640, "y": 740, "wires": [ [ "49c2e1d4.4d6fa" ] ] }, { "id": "a8d69e10.cd63e", "type": "ioBroker get", "z": "95848418.340d58", "name": "Gewuertz Laufzeit", "topic": "0_userdata.0.Bewässerung.Gewuertz_Laufzeit", "attrname": "lauf", "payloadType": "value", "x": 330, "y": 740, "wires": [ [ "9eb12009.2f268" ] ] }, { "id": "49c2e1d4.4d6fa", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.gewend", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 850, "y": 740, "wires": [ [ "b11dd4d7.897628" ] ] }, { "id": "a7e14d02.fec93", "type": "ioBroker in", "z": "95848418.340d58", "name": "Gewuertz Tage", "topic": "0_userdata.0.Bewässerung.Gewuertz_Tage", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 180, "y": 800, "wires": [ [ "710ebd7a.a08164" ] ] }, { "id": "710ebd7a.a08164", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.gewtag", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 850, "y": 780, "wires": [ [ "b11dd4d7.897628" ] ] }, { "id": "65326eb6.d8ded", "type": "ioBroker in", "z": "95848418.340d58", "name": "Gewuertz Laufzeit", "topic": "0_userdata.0.Bewässerung.Gewuertz_Laufzeit", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 130, "y": 740, "wires": [ [ "a8d69e10.cd63e" ] ] }, { "id": "b11dd4d7.897628", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "send", "tot": "flow" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1110, "y": 740, "wires": [ [ "961552c6.c4d6d" ] ] }, { "id": "961552c6.c4d6d", "type": "template", "z": "95848418.340d58", "name": "Create timer", "field": "payload", "fieldType": "msg", "format": "handlebars", "syntax": "mustache", "template": "{\"timers\":[{\"starttime\":{{payload.gewstart}},\"days\":[{{payload.gewtag}}],\"output\":\"0\",\"endtime\":{{payload.gewend}}}],\"settings\":{\"disabledDevices\":[]}}", "output": "str", "x": 1310, "y": 740, "wires": [ [ "c5a2845b.60457" ] ] }, { "id": "5350d0ee.b87ef", "type": "ioBroker get", "z": "95848418.340d58", "name": "min", "topic": "0_userdata.0.Bewässerung.Gewuertz_Startzeit_m", "attrname": "min", "payloadType": "value", "x": 590, "y": 600, "wires": [ [ "d7ca170f.1c93a8" ] ] }, { "id": "d7ca170f.1c93a8", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = (Number(msg.payload) + Number(msg.min)) * 60000;\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 760, "y": 600, "wires": [ [ "5ecdf7a0.e5c52", "a8d69e10.cd63e" ] ] }, { "id": "fc7a7352.44fc9", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = (Number(msg.payload) - 1) * 60;\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 400, "y": 600, "wires": [ [ "5350d0ee.b87ef" ] ] }, { "id": "9eb12009.2f268", "type": "calculator", "z": "95848418.340d58", "name": "", "inputMsgField": "lauf", "outputMsgField": "lauf", "operation": "mult", "constant": "60000", "round": false, "decimals": 0, "x": 500, "y": 740, "wires": [ [ "1cf4d57e.33b613" ] ] }, { "id": "f742c03b.2b4018", "type": "ui_time_scheduler", "z": "95848418.340d58", "group": "df42ab16.59cb78", "name": "Bewässerung", "startDay": "1", "refresh": 60, "devices": [ "Rasen" ], "onlySendChange": false, "customPayload": false, "eventMode": false, "eventOptions": [], "sendTopic": false, "lat": "46.98015", "lon": "9.5706316", "outputs": 2, "order": 1, "width": 0, "height": 0, "x": 240, "y": 1340, "wires": [ [], [ "881632b6.31c788" ] ], "outputLabels": [ "Info", "Chili" ] }, { "id": "62ea3655.fb8248", "type": "ioBroker out", "z": "95848418.340d58", "name": "Rasen", "topic": "mqtt.0.ESP_Bewaesserung.GPIO.16", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 730, "y": 1360, "wires": [] }, { "id": "881632b6.31c788", "type": "change", "z": "95848418.340d58", "name": "change true", "rules": [ { "t": "change", "p": "payload", "pt": "msg", "from": "true", "fromt": "bool", "to": "1", "tot": "num" }, { "t": "change", "p": "payload", "pt": "msg", "from": "false", "fromt": "bool", "to": "0", "tot": "num" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 490, "y": 1360, "wires": [ [ "62ea3655.fb8248" ] ] }, { "id": "4b2cc279.165b9c", "type": "ioBroker in", "z": "95848418.340d58", "name": "Rasen Startzeit", "topic": "0_userdata.0.Bewässerung.Rasen_Startzeit", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 180, "y": 1040, "wires": [ [ "7c130cf9.58ddf4" ] ] }, { "id": "9a31aa7.81634d8", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.rasstart", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 850, "y": 1140, "wires": [ [ "478bd581.773b1c" ] ] }, { "id": "7c888e93.75e008", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = Number(msg.payload) + Number(msg.lauf);\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 640, "y": 1180, "wires": [ [ "22336e17.68a50a" ] ] }, { "id": "16fd25cd.411922", "type": "ioBroker get", "z": "95848418.340d58", "name": "Rasen Laufzeit", "topic": "0_userdata.0.Bewässerung.Rasen_Laufzeit", "attrname": "lauf", "payloadType": "value", "x": 320, "y": 1180, "wires": [ [ "537f95ef.af8cf4" ] ] }, { "id": "22336e17.68a50a", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.rasend", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 840, "y": 1180, "wires": [ [ "478bd581.773b1c" ] ] }, { "id": "e8ab5570.c9b078", "type": "ioBroker in", "z": "95848418.340d58", "name": "Rasen Tage", "topic": "0_userdata.0.Bewässerung.Rasen_Tage", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 170, "y": 1240, "wires": [ [ "cc068c34.857cd8" ] ] }, { "id": "cc068c34.857cd8", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.rastag", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 840, "y": 1220, "wires": [ [ "478bd581.773b1c" ] ] }, { "id": "f7ab960.ee03fe8", "type": "ioBroker in", "z": "95848418.340d58", "name": "Rasen Laufzeit", "topic": "0_userdata.0.Bewässerung.Rasen_Laufzeit", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 120, "y": 1180, "wires": [ [ "16fd25cd.411922" ] ] }, { "id": "478bd581.773b1c", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "send", "tot": "flow" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1130, "y": 1180, "wires": [ [ "685c0011.4d76d8" ] ] }, { "id": "685c0011.4d76d8", "type": "template", "z": "95848418.340d58", "name": "Create timer", "field": "payload", "fieldType": "msg", "format": "handlebars", "syntax": "mustache", "template": "{\"timers\":[{\"starttime\":{{payload.rasstart}},\"days\":[{{payload.rastag}}],\"output\":\"0\",\"endtime\":{{payload.rasend}}}],\"settings\":{\"disabledDevices\":[]}}", "output": "str", "x": 1310, "y": 1180, "wires": [ [ "f742c03b.2b4018" ] ] }, { "id": "6179abe5.5008cc", "type": "ioBroker get", "z": "95848418.340d58", "name": "min", "topic": "0_userdata.0.Bewässerung.Rasen_Startzeit_m", "attrname": "min", "payloadType": "value", "x": 590, "y": 1040, "wires": [ [ "eff73484.e162f8" ] ] }, { "id": "eff73484.e162f8", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = (Number(msg.payload) + Number(msg.min)) * 60000;\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 760, "y": 1040, "wires": [ [ "9a31aa7.81634d8", "16fd25cd.411922" ] ] }, { "id": "7c130cf9.58ddf4", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = (Number(msg.payload) - 1) * 60;\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 390, "y": 1040, "wires": [ [ "6179abe5.5008cc" ] ] }, { "id": "537f95ef.af8cf4", "type": "calculator", "z": "95848418.340d58", "name": "", "inputMsgField": "lauf", "outputMsgField": "lauf", "operation": "mult", "constant": "60000", "round": false, "decimals": 0, "x": 500, "y": 1180, "wires": [ [ "7c888e93.75e008" ] ] }, { "id": "ffade621.e21408", "type": "ui_time_scheduler", "z": "95848418.340d58", "group": "df42ab16.59cb78", "name": "Bewässerung", "startDay": "1", "refresh": 60, "devices": [ "Himbeeren" ], "onlySendChange": false, "customPayload": false, "eventMode": false, "eventOptions": [], "sendTopic": false, "lat": "46.98015", "lon": "9.5706316", "outputs": 2, "order": 1, "width": 0, "height": 0, "x": 260, "y": 1840, "wires": [ [], [ "2d9e3615.954982" ] ], "outputLabels": [ "Info", "Chili" ] }, { "id": "3e99677c.33493", "type": "ioBroker out", "z": "95848418.340d58", "name": "Himbeeren", "topic": "mqtt.0.ESP_Bewaesserung.GPIO.15", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 770, "y": 1860, "wires": [] }, { "id": "2d9e3615.954982", "type": "change", "z": "95848418.340d58", "name": "change true", "rules": [ { "t": "change", "p": "payload", "pt": "msg", "from": "true", "fromt": "bool", "to": "1", "tot": "num" }, { "t": "change", "p": "payload", "pt": "msg", "from": "false", "fromt": "bool", "to": "0", "tot": "num" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 530, "y": 1840, "wires": [ [ "3e99677c.33493" ] ] }, { "id": "b1133be4.6945e8", "type": "ioBroker in", "z": "95848418.340d58", "name": "Himbeeren Startzeit", "topic": "0_userdata.0.Bewässerung.Himbeeren_Startzeit", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 210, "y": 1540, "wires": [ [ "43163347.805d3c" ] ] }, { "id": "5776e8d5.98b4a8", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.himstart", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 870, "y": 1640, "wires": [ [ "b5b9c48d.0ac7c8" ] ] }, { "id": "93bbcc75.140c6", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = Number(msg.payload) + Number(msg.lauf);\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 660, "y": 1680, "wires": [ [ "27b37ef4.39d9b2" ] ] }, { "id": "aaf11e52.96428", "type": "ioBroker get", "z": "95848418.340d58", "name": "Himbeeren Laufzeit", "topic": "0_userdata.0.Bewässerung.Himbeeren_Laufzeit", "attrname": "lauf", "payloadType": "value", "x": 350, "y": 1680, "wires": [ [ "889ba824.5c7ba8" ] ] }, { "id": "27b37ef4.39d9b2", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.himend", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 870, "y": 1680, "wires": [ [ "b5b9c48d.0ac7c8" ] ] }, { "id": "a2e37a01.8b062", "type": "ioBroker in", "z": "95848418.340d58", "name": "Himbeeren Tage", "topic": "0_userdata.0.Bewässerung.Himbeeren_Tage", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 200, "y": 1740, "wires": [ [ "17cc38bc.d0b1df" ] ] }, { "id": "17cc38bc.d0b1df", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.himtag", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 860, "y": 1720, "wires": [ [ "b5b9c48d.0ac7c8" ] ] }, { "id": "71fcb2df.72fd44", "type": "ioBroker in", "z": "95848418.340d58", "name": "Himbeeren Laufzeit", "topic": "0_userdata.0.Bewässerung.Himbeeren_Laufzeit", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 150, "y": 1680, "wires": [ [ "aaf11e52.96428" ] ] }, { "id": "b5b9c48d.0ac7c8", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "send", "tot": "flow" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1130, "y": 1680, "wires": [ [ "d35b19a6.f1acf" ] ] }, { "id": "d35b19a6.f1acf", "type": "template", "z": "95848418.340d58", "name": "Create timer", "field": "payload", "fieldType": "msg", "format": "handlebars", "syntax": "mustache", "template": "{\"timers\":[{\"starttime\":{{payload.himstart}},\"days\":[{{payload.himtag}}],\"output\":\"0\",\"endtime\":{{payload.himend}}}],\"settings\":{\"disabledDevices\":[]}}", "output": "str", "x": 1330, "y": 1680, "wires": [ [ "ffade621.e21408" ] ] }, { "id": "58fac00.fbd1ac", "type": "ioBroker get", "z": "95848418.340d58", "name": "min", "topic": "0_userdata.0.Bewässerung.Himbeeren_Startzeit_m", "attrname": "min", "payloadType": "value", "x": 610, "y": 1540, "wires": [ [ "46fe7ce9.fc5d64" ] ] }, { "id": "46fe7ce9.fc5d64", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = (Number(msg.payload) + Number(msg.min)) * 60000;\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 780, "y": 1540, "wires": [ [ "5776e8d5.98b4a8", "aaf11e52.96428" ] ] }, { "id": "43163347.805d3c", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = (Number(msg.payload) - 1) * 60;\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 410, "y": 1540, "wires": [ [ "58fac00.fbd1ac" ] ] }, { "id": "889ba824.5c7ba8", "type": "calculator", "z": "95848418.340d58", "name": "", "inputMsgField": "lauf", "outputMsgField": "lauf", "operation": "mult", "constant": "60000", "round": false, "decimals": 0, "x": 520, "y": 1680, "wires": [ [ "93bbcc75.140c6" ] ] }, { "id": "6a1dc60e.2815c8", "type": "ui_time_scheduler", "z": "95848418.340d58", "group": "df42ab16.59cb78", "name": "Bewässerung", "startDay": "1", "refresh": 60, "devices": [ "Chili" ], "onlySendChange": false, "customPayload": false, "eventMode": false, "eventOptions": [], "sendTopic": false, "lat": "46.98015", "lon": "9.5706316", "outputs": 2, "order": 1, "width": 0, "height": 0, "x": 280, "y": 2280, "wires": [ [], [ "644cc02f.578248" ] ], "outputLabels": [ "Info", "Chili" ] }, { "id": "c739c937.d838", "type": "ioBroker out", "z": "95848418.340d58", "name": "Chili", "topic": "mqtt.0.ESP_Bewaesserung.GPIO.5", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 770, "y": 2300, "wires": [] }, { "id": "644cc02f.578248", "type": "change", "z": "95848418.340d58", "name": "change true", "rules": [ { "t": "change", "p": "payload", "pt": "msg", "from": "true", "fromt": "bool", "to": "1", "tot": "num" }, { "t": "change", "p": "payload", "pt": "msg", "from": "false", "fromt": "bool", "to": "0", "tot": "num" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 530, "y": 2300, "wires": [ [ "c739c937.d838" ] ] }, { "id": "13823c3c.7d6a9c", "type": "ioBroker in", "z": "95848418.340d58", "name": "Chili Startzeit", "topic": "0_userdata.0.Bewässerung.Chili_Startzeit", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 210, "y": 1980, "wires": [ [ "27224828.5dd5e8" ] ] }, { "id": "c252fe8b.8de62", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.chistart", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 890, "y": 2080, "wires": [ [ "a99a6d33.3ba328" ] ] }, { "id": "10e12809.1df7c8", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = Number(msg.payload) + Number(msg.lauf);\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 680, "y": 2120, "wires": [ [ "3b1211e.2f1936e" ] ] }, { "id": "dd403d5.078954", "type": "ioBroker get", "z": "95848418.340d58", "name": "Chili Laufzeit", "topic": "0_userdata.0.Bewässerung.Chili_Laufzeit", "attrname": "lauf", "payloadType": "value", "x": 350, "y": 2120, "wires": [ [ "17acd138.a9cb87" ] ] }, { "id": "3b1211e.2f1936e", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.chiend", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 880, "y": 2120, "wires": [ [ "a99a6d33.3ba328" ] ] }, { "id": "b6c311c.a8d61f", "type": "ioBroker in", "z": "95848418.340d58", "name": "Chili Tage", "topic": "0_userdata.0.Bewässerung.Chili_Tage", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 200, "y": 2180, "wires": [ [ "79a48db9.90d15c" ] ] }, { "id": "79a48db9.90d15c", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.chitag", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 880, "y": 2160, "wires": [ [ "a99a6d33.3ba328" ] ] }, { "id": "fe7dee7f.a8929", "type": "ioBroker in", "z": "95848418.340d58", "name": "Chili Laufzeit", "topic": "0_userdata.0.Bewässerung.Chili_Laufzeit", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 150, "y": 2120, "wires": [ [ "dd403d5.078954" ] ] }, { "id": "a99a6d33.3ba328", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "send", "tot": "flow" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1150, "y": 2120, "wires": [ [ "ea332364.09e1a8" ] ] }, { "id": "ea332364.09e1a8", "type": "template", "z": "95848418.340d58", "name": "Create timer", "field": "payload", "fieldType": "msg", "format": "handlebars", "syntax": "mustache", "template": "{\"timers\":[{\"starttime\":{{payload.chistart}},\"days\":[{{payload.chitag}}],\"output\":\"0\",\"endtime\":{{payload.chiend}}}],\"settings\":{\"disabledDevices\":[]}}", "output": "str", "x": 1350, "y": 2120, "wires": [ [ "6a1dc60e.2815c8" ] ] }, { "id": "99cc1f9a.000d5", "type": "ioBroker get", "z": "95848418.340d58", "name": "min", "topic": "0_userdata.0.Bewässerung.Chili_Startzeit_m", "attrname": "min", "payloadType": "value", "x": 630, "y": 1980, "wires": [ [ "f31fe6d6.ea30f" ] ] }, { "id": "f31fe6d6.ea30f", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = (Number(msg.payload) + Number(msg.min)) * 60000;\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 800, "y": 1980, "wires": [ [ "c252fe8b.8de62", "dd403d5.078954" ] ] }, { "id": "27224828.5dd5e8", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = (Number(msg.payload) - 1) * 60;\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 430, "y": 1980, "wires": [ [ "99cc1f9a.000d5" ] ] }, { "id": "17acd138.a9cb87", "type": "calculator", "z": "95848418.340d58", "name": "", "inputMsgField": "lauf", "outputMsgField": "lauf", "operation": "mult", "constant": "60000", "round": false, "decimals": 0, "x": 540, "y": 2120, "wires": [ [ "10e12809.1df7c8" ] ] }, { "id": "fb61e295.e1c3f8", "type": "ui_time_scheduler", "z": "95848418.340d58", "group": "df42ab16.59cb78", "name": "Bewässerung", "startDay": "1", "refresh": 60, "devices": [ "Gemuese" ], "onlySendChange": false, "customPayload": false, "eventMode": false, "eventOptions": [], "sendTopic": false, "lat": "46.98015", "lon": "9.5706316", "outputs": 2, "order": 1, "width": 0, "height": 0, "x": 240, "y": 2720, "wires": [ [], [ "eb50c5c1.3f81e8" ] ], "outputLabels": [ "Info", "Chili" ] }, { "id": "4d59c645.a9ef3", "type": "ioBroker out", "z": "95848418.340d58", "name": "Gemüse", "topic": "mqtt.0.ESP_Bewaesserung.GPIO.14", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 740, "y": 2740, "wires": [] }, { "id": "eb50c5c1.3f81e8", "type": "change", "z": "95848418.340d58", "name": "change true", "rules": [ { "t": "change", "p": "payload", "pt": "msg", "from": "true", "fromt": "bool", "to": "1", "tot": "num" }, { "t": "change", "p": "payload", "pt": "msg", "from": "false", "fromt": "bool", "to": "0", "tot": "num" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 490, "y": 2740, "wires": [ [ "4d59c645.a9ef3" ] ] }, { "id": "bac661ce.7b14a8", "type": "ioBroker in", "z": "95848418.340d58", "name": "Gemuese Startzeit", "topic": "0_userdata.0.Bewässerung.Gemuese_Startzeit", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 190, "y": 2420, "wires": [ [ "655ca02b.c39688" ] ] }, { "id": "ede61f85.9b1fe8", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.gemstart", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 850, "y": 2520, "wires": [ [ "88855f2e.c147e8" ] ] }, { "id": "2c5a53a9.e88674", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = Number(msg.payload) + Number(msg.lauf);\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 640, "y": 2560, "wires": [ [ "fe9a251d.6c58b8" ] ] }, { "id": "ce8ee0.d1b9192", "type": "ioBroker get", "z": "95848418.340d58", "name": "Gemuese Laufzeit", "topic": "0_userdata.0.Bewässerung.Gemuese_Laufzeit", "attrname": "lauf", "payloadType": "value", "x": 330, "y": 2560, "wires": [ [ "ad223f59.b03b3" ] ] }, { "id": "fe9a251d.6c58b8", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.gemend", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 850, "y": 2560, "wires": [ [ "88855f2e.c147e8" ] ] }, { "id": "8dd057c3.525f", "type": "ioBroker in", "z": "95848418.340d58", "name": "Gemuese Tage", "topic": "0_userdata.0.Bewässerung.Gemuese_Tage", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 180, "y": 2620, "wires": [ [ "1ea15f91.006e4" ] ] }, { "id": "1ea15f91.006e4", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.gemtag", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 850, "y": 2600, "wires": [ [ "88855f2e.c147e8" ] ] }, { "id": "704a9b39.fff60c", "type": "ioBroker in", "z": "95848418.340d58", "name": "Gemuese Laufzeit", "topic": "0_userdata.0.Bewässerung.Gemuese_Laufzeit", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 130, "y": 2560, "wires": [ [ "ce8ee0.d1b9192" ] ] }, { "id": "88855f2e.c147e8", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "send", "tot": "flow" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1110, "y": 2560, "wires": [ [ "7695f95c.e0115" ] ] }, { "id": "7695f95c.e0115", "type": "template", "z": "95848418.340d58", "name": "Create timer", "field": "payload", "fieldType": "msg", "format": "handlebars", "syntax": "mustache", "template": "{\"timers\":[{\"starttime\":{{payload.gemstart}},\"days\":[{{payload.gemtag}}],\"output\":\"0\",\"endtime\":{{payload.gemend}}}],\"settings\":{\"disabledDevices\":[]}}", "output": "str", "x": 1310, "y": 2560, "wires": [ [ "fb61e295.e1c3f8" ] ] }, { "id": "465c6378.063754", "type": "ioBroker get", "z": "95848418.340d58", "name": "min", "topic": "0_userdata.0.Bewässerung.Gemuese_Startzeit_m", "attrname": "min", "payloadType": "value", "x": 590, "y": 2420, "wires": [ [ "71bb1787.93aa1" ] ] }, { "id": "71bb1787.93aa1", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = (Number(msg.payload) + Number(msg.min)) * 60000;\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 760, "y": 2420, "wires": [ [ "ede61f85.9b1fe8", "ce8ee0.d1b9192" ] ] }, { "id": "655ca02b.c39688", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = (Number(msg.payload) - 1) * 60;\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 390, "y": 2420, "wires": [ [ "465c6378.063754" ] ] }, { "id": "ad223f59.b03b3", "type": "calculator", "z": "95848418.340d58", "name": "", "inputMsgField": "lauf", "outputMsgField": "lauf", "operation": "mult", "constant": "60000", "round": false, "decimals": 0, "x": 500, "y": 2560, "wires": [ [ "2c5a53a9.e88674" ] ] }, { "id": "509af3bd.f017f4", "type": "ui_time_scheduler", "z": "95848418.340d58", "group": "df42ab16.59cb78", "name": "Bewässerung", "startDay": "1", "refresh": 60, "devices": [ "Feigenbaum" ], "onlySendChange": false, "customPayload": false, "eventMode": false, "eventOptions": [], "sendTopic": false, "lat": "46.98015", "lon": "9.5706316", "outputs": 2, "order": 1, "width": 0, "height": 0, "x": 260, "y": 3140, "wires": [ [], [ "5a50917e.fb2e08" ] ], "outputLabels": [ "Info", "Chili" ] }, { "id": "8d0f9b68.f48f6", "type": "ioBroker out", "z": "95848418.340d58", "name": "Feigenbaum", "topic": "mqtt.0.ESP_Bewaesserung.GPIO.13", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 770, "y": 3160, "wires": [] }, { "id": "5a50917e.fb2e08", "type": "change", "z": "95848418.340d58", "name": "change true", "rules": [ { "t": "change", "p": "payload", "pt": "msg", "from": "true", "fromt": "bool", "to": "1", "tot": "num" }, { "t": "change", "p": "payload", "pt": "msg", "from": "false", "fromt": "bool", "to": "0", "tot": "num" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 510, "y": 3160, "wires": [ [ "8d0f9b68.f48f6" ] ] }, { "id": "a03757aa.177f78", "type": "ioBroker in", "z": "95848418.340d58", "name": "Feigenbaum Startzeit", "topic": "0_userdata.0.Bewässerung.Feigenbaum_Startzeit", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 220, "y": 2840, "wires": [ [ "ae205d88.b3a16" ] ] }, { "id": "880223f9.33fa5", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.feistart", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 860, "y": 2940, "wires": [ [ "e69125f9.5d323" ] ] }, { "id": "4813b70.5ccf5c8", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = Number(msg.payload) + Number(msg.lauf);\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 660, "y": 2980, "wires": [ [ "cc150fa0.200788" ] ] }, { "id": "7a9f5936.318408", "type": "ioBroker get", "z": "95848418.340d58", "name": "Feigenbaum Laufzeit", "topic": "0_userdata.0.Bewässerung.Feigenbaum_Laufzeit", "attrname": "lauf", "payloadType": "value", "x": 340, "y": 2980, "wires": [ [ "7240e8b9.feeb68" ] ] }, { "id": "cc150fa0.200788", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.feiend", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 860, "y": 2980, "wires": [ [ "e69125f9.5d323" ] ] }, { "id": "dd944832.19d71", "type": "ioBroker in", "z": "95848418.340d58", "name": "Feigenbaum Tage", "topic": "0_userdata.0.Bewässerung.Feigenbaum_Tage", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 210, "y": 3040, "wires": [ [ "42552839.ddf258" ] ] }, { "id": "42552839.ddf258", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "send.feitag", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 860, "y": 3020, "wires": [ [ "e69125f9.5d323" ] ] }, { "id": "4bd2bfd5.a0f29", "type": "ioBroker in", "z": "95848418.340d58", "name": "Feigenbaum Laufzeit", "topic": "0_userdata.0.Bewässerung.Feigenbaum_Laufzeit", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "true", "x": 100, "y": 2980, "wires": [ [ "7a9f5936.318408" ] ] }, { "id": "e69125f9.5d323", "type": "change", "z": "95848418.340d58", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "send", "tot": "flow" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1130, "y": 2980, "wires": [ [ "f67212ea.6d15a" ] ] }, { "id": "f67212ea.6d15a", "type": "template", "z": "95848418.340d58", "name": "Create timer", "field": "payload", "fieldType": "msg", "format": "handlebars", "syntax": "mustache", "template": "{\"timers\":[{\"starttime\":{{payload.feistart}},\"days\":[{{payload.feitag}}],\"output\":\"0\",\"endtime\":{{payload.feiend}}}],\"settings\":{\"disabledDevices\":[]}}", "output": "str", "x": 1330, "y": 2980, "wires": [ [ "509af3bd.f017f4" ] ] }, { "id": "1c9bcf61.13c8b1", "type": "ioBroker get", "z": "95848418.340d58", "name": "min", "topic": "0_userdata.0.Bewässerung.Feigenbaum_Startzeit_m", "attrname": "min", "payloadType": "value", "x": 610, "y": 2840, "wires": [ [ "9ab0b244.3d9638" ] ] }, { "id": "9ab0b244.3d9638", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = (Number(msg.payload) + Number(msg.min)) * 60000;\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 780, "y": 2840, "wires": [ [ "880223f9.33fa5", "7a9f5936.318408" ] ] }, { "id": "ae205d88.b3a16", "type": "function", "z": "95848418.340d58", "name": "", "func": "var math = (Number(msg.payload) - 1) * 60;\nmsg.payload = math;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 410, "y": 2840, "wires": [ [ "1c9bcf61.13c8b1" ] ] }, { "id": "7240e8b9.feeb68", "type": "calculator", "z": "95848418.340d58", "name": "", "inputMsgField": "lauf", "outputMsgField": "lauf", "operation": "mult", "constant": "60000", "round": false, "decimals": 0, "x": 520, "y": 2980, "wires": [ [ "4813b70.5ccf5c8" ] ] }, { "id": "df42ab16.59cb78", "type": "ui_group", "name": "Standard", "tab": "29502947.69c12e", "order": 1, "disp": true, "width": "6", "collapse": false }, { "id": "29502947.69c12e", "type": "ui_tab", "name": "Home", "icon": "dashboard", "disabled": false, "hidden": false } ]
Zum testen habe ich einmal mit dem Vis angefangen
Für heute reicht es. Morgen kommt der Teil dran wo die Daten vom vis wieder in die Objekte gespeichert werden.
-
@mickym Noch zu deiner eigentlichen Frage. Die Wochentage habe ich so gespeichert
0_userdata.0.Bewässerung.dMo
0_userdata.0.Bewässerung.dDi
...
ich hoffe du hast danach gefragt. -
@hafo Ja das hab ich schon rausgefunden.
Ich werde den Flow mal so anpassen, dass er Dir diesen String wieder aus den 7 Bewässerungspunkten ausgibt und Du speicherst es ja dann in Typ_Tage.
Im Übrigen scheinst Du ja parallel mit Node-Red Dashboard zu arbeiten, warum Du aber solche Nodes wie den Calculator installierst - erschließt sich mir nicht ganz, da im Standardsortiment doch die aggregator Node vorhanden ist. Aber egal.
-
@mickym den ui Scheduler habe ich genommen, weil ich nichts anderes gefunden habe wo der Timer mit einem String programmiert werden kann. Häufig kann er nur überschrieben werden und springt dann wieder auf die ursprünglichen Zeiten zurück.
Die Aggregator Node muss ich wohl mal anschauen. Ich wollte nicht alles mit der Funktions Node machen und Calculator klingt halt schon sehr passend.
Schon mal vielen Dank für deine Hilfe. -
@hafo EInen Timer den Du von außen mittels Strings programmieren kannst. ist zum Beispiel dieser hier:
https://flows.nodered.org/node/node-red-contrib-eztimer/in/c8156f6276976bfb518d1e60442e01e2
mit dem muss man sich bissi beschäftigen, aber ich glaube der würde für Deine Zwecke gut passen.
-
@hafo So der Flow ist soweit fertig, wäre zwar bissi einfacher gewesen, wenn die Wochentage auf einer anderen Ebene gewesen wären, dann hätte man mit den Wildcards besser arbeiten können, aber so habe ich halt nur die relevanten Topics zur Bildung des Strings gebildet:
[ { "id": "738cae99.0afee", "type": "inject", "z": "dce8fa20.2e93c8", "name": "Init", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": true, "onceDelay": 0.1, "topic": "", "payload": "{\"dMo\":false,\"dDi\":false,\"dMi\":false,\"dDo\":false,\"dFr\":false,\"dSa\":false,\"dSo\":false}", "payloadType": "json", "x": 1110, "y": 3000, "wires": [ [ "7410385d.2459c8" ] ] }, { "id": "dc29cb83.da0c38", "type": "join", "z": "dce8fa20.2e93c8", "name": "", "mode": "custom", "build": "object", "property": "payload", "propertyType": "msg", "key": "topic", "joiner": "\\n", "joinerType": "str", "accumulate": true, "timeout": "", "count": "7", "reduceRight": false, "reduceExp": "", "reduceInit": "", "reduceInitType": "", "reduceFixup": "", "x": 1410, "y": 3040, "wires": [ [ "80b4a58d.6c43d8", "3c7d1c2c.10bd44" ] ] }, { "id": "80b4a58d.6c43d8", "type": "debug", "z": "dce8fa20.2e93c8", "name": "Objekt", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 1550, "y": 2980, "wires": [] }, { "id": "d0d7e563.ed60d8", "type": "inject", "z": "dce8fa20.2e93c8", "name": "reset", "props": [ { "p": "reset", "v": "true", "vt": "bool" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payloadType": "str", "x": 1250, "y": 2960, "wires": [ [ "dc29cb83.da0c38" ] ] }, { "id": "7410385d.2459c8", "type": "split", "z": "dce8fa20.2e93c8", "name": "", "splt": "\\n", "spltType": "str", "arraySplt": 1, "arraySpltType": "len", "stream": false, "addname": "topic", "x": 1250, "y": 3000, "wires": [ [ "dc29cb83.da0c38" ] ] }, { "id": "3c7d1c2c.10bd44", "type": "split", "z": "dce8fa20.2e93c8", "name": "", "splt": "\\n", "spltType": "str", "arraySplt": 1, "arraySpltType": "len", "stream": false, "addname": "topic", "x": 1550, "y": 3040, "wires": [ [ "a9feb4ff.e0fe28", "cec83e21.09f92" ] ] }, { "id": "a9feb4ff.e0fe28", "type": "debug", "z": "dce8fa20.2e93c8", "name": "Je Tag", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 1730, "y": 2980, "wires": [] }, { "id": "cec83e21.09f92", "type": "change", "z": "dce8fa20.2e93c8", "name": "", "rules": [ { "t": "change", "p": "payload", "pt": "msg", "from": "true", "fromt": "bool", "to": "1", "tot": "str" }, { "t": "change", "p": "payload", "pt": "msg", "from": "false", "fromt": "bool", "to": "0", "tot": "str" }, { "t": "delete", "p": "topic", "pt": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1760, "y": 3040, "wires": [ [ "483e2021.3f9b" ] ] }, { "id": "483e2021.3f9b", "type": "join", "z": "dce8fa20.2e93c8", "name": "", "mode": "custom", "build": "string", "property": "payload", "propertyType": "msg", "key": "topic", "joiner": ",", "joinerType": "str", "accumulate": false, "timeout": "", "count": "7", "reduceRight": false, "reduceExp": "", "reduceInit": "", "reduceInitType": "", "reduceFixup": "", "x": 1940, "y": 3040, "wires": [ [ "b14fe537.4098e8" ] ] }, { "id": "1fc48b1f.b7a925", "type": "debug", "z": "dce8fa20.2e93c8", "name": "String", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 2270, "y": 3000, "wires": [] }, { "id": "40005ec8.38626", "type": "ioBroker in", "z": "dce8fa20.2e93c8", "name": "", "topic": "0_userdata.0.Bewässerung.*", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "fireOnStart": "false", "x": 740, "y": 3040, "wires": [ [ "164a866c.7601ba" ] ] }, { "id": "164a866c.7601ba", "type": "change", "z": "dce8fa20.2e93c8", "name": "", "rules": [ { "t": "change", "p": "topic", "pt": "msg", "from": ".*\\/(.*)$", "fromt": "re", "to": "$1", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 990, "y": 3040, "wires": [ [ "787d80ea.f7322" ] ] }, { "id": "787d80ea.f7322", "type": "switch", "z": "dce8fa20.2e93c8", "name": "Nur Wochentage", "property": "topic", "propertyType": "msg", "rules": [ { "t": "regex", "v": "d(Mo|Di|Mi|Do|Fr|Sa|So)", "vt": "str", "case": false } ], "checkall": "true", "repair": false, "outputs": 1, "x": 1210, "y": 3040, "wires": [ [ "dc29cb83.da0c38" ] ] }, { "id": "b14fe537.4098e8", "type": "trigger", "z": "dce8fa20.2e93c8", "name": "", "op1": "", "op2": "", "op1type": "nul", "op2type": "payl", "duration": "5", "extend": true, "overrideDelay": false, "units": "s", "reset": "", "bytopic": "all", "topic": "topic", "outputs": 1, "x": 2090, "y": 3040, "wires": [ [ "1fc48b1f.b7a925", "428ea859.443ff8" ] ] }, { "id": "a01c4c32.322d3", "type": "change", "z": "dce8fa20.2e93c8", "name": "", "rules": [ { "t": "change", "p": "vis_Selection", "pt": "msg", "from": "7", "fromt": "str", "to": "Tomaten", "tot": "str" }, { "t": "set", "p": "topic", "pt": "msg", "to": "'0_userdata.0.Bewässerung.' & vis_Selection & '_Tage'", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 2490, "y": 3040, "wires": [ [ "38949264.ca833e", "eda70d63.a4786" ] ] }, { "id": "eda70d63.a4786", "type": "ioBroker out", "z": "dce8fa20.2e93c8", "name": "", "topic": "", "ack": "true", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 2700, "y": 3040, "wires": [] }, { "id": "428ea859.443ff8", "type": "ioBroker get", "z": "dce8fa20.2e93c8", "name": "vis_Auswahl", "topic": "0_userdata.0.Bewässerung.vis_Auswahl", "attrname": "vis_Selection", "payloadType": "value", "x": 2270, "y": 3040, "wires": [ [ "a01c4c32.322d3" ] ] }, { "id": "38949264.ca833e", "type": "debug", "z": "dce8fa20.2e93c8", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 2690, "y": 2980, "wires": [] } ]
Wichtig ist, dass Du die Join Node mit den Wochentagen initialisierst, da die Reihenfolge im String ja entscheidend ist. Wenn man das nicht macht kommen die Wochentage wild gewürfelt rein.
Nachdem Du wahrscheinlich immer alle Datenpunkte aufeinmal schreibst, brauchst Du die nicht einzeln abfragen bzw. ich lasse ja den ganzen Bewässerungsast triggern und filtere dann. Du solltest Dir vielleicht doch überlegen, ob Du da nicht eine separate Struktur für die Tage unter Bewässerung machst - also Bewässerung.days.Mo usw. aber egal ich habs jetzt wie es ist rausgefiltert.
Ggf. noch eine Trigger Node dranhängen (hab ich mal gemacht, kannst ja wieder entfernen), falls Du nicht für jede Änderung eine Nachricht brauchst, sondern zum Beispiel erst nach 5 Sekunden oder so. Bei Visualisierungen hilft das gegen nervöse Hände bzw. Finger.
Wenn Du übrigens Deine Vis Auswahl nicht mit Zahlen sondern mit den richtigen Namen fütterst, kannst Du in dem Flow auch den msg.topic dynamisch zusammenstellen und den String mit einer iobroker out Node variabel schreiben. Ansonsten musst halt über eine Change Node (also zum Beispiel 7) mit dem msg.topic übersetzen.
So hab den Flow oben noch um die vis Auswahl und der dynamischen Ausgabe ergänzt:
Du musst nun aber aufpassen, dass Du Dir keine Endlosschleifen einhandelst. Sprich Node-Red und VIS schreiben in die Wochentagspunkte - das wird schief gehen. Da musst Du noch was überlegen - ich würde getrennte Punke ggf. zum Auslesen und zum Setzen nehmen.
-
@mickym Phuu, das ganze wird ja komplizierter als erwartet. Da war die Gardena Steuerung ja noch richtig einfach. Aber noch bin ich motiviert, es liegen ja auch noch 20 Zigbee Bodenfeuchtesensoren hier....
Ich kann gut eine separate Struktur für die Tage machen wenns hilft. Sollte die Struktur dann so aussehen: Bewässerung.days.Mo.Di.Mi... oder kommen alle Tage in denselben Ordner? Dann könnte ich auch gleich einen Ordner für die Vis Punkte machen und für jeden Bewässerungsstrang. Was empfiehlst du da?
Wenn ich alles umbaue, kann ich auch gleich das mit der Variable bei der Vis Ausgabe umsetzen. Das vereinfacht ja auch den Fow welcher das Vis füllt.
Eine Endlosschleife sollte es eigentlich nicht geben. Ich plane einen Knopf fürs Speichern ein. Da wird ein Datenpunkt auf true gesetzt und funktioniert als Trigger für deinen Flow. Am Ende muss ich ihn nur noch auf false setzten.
Was macht dein Timer besser als meiner? Lohnt sich ein umstieg?