- Home
- Deutsch
- Entwicklung
- [neuer Adapter] Gardena Smart System API
[neuer Adapter] Gardena Smart System API
-
@dslraser OMG Das sieht ja kompliziert aus. Aber wenn ich nur ein und ausschalten will, reicht es wenn ich nur die beiden Werte ändere?
-
@Mainframe
ja, probiere doch mal. Duration ist in Sekunden angegeben, aber bei mir fehlen immer drei Sekunden. Du siehst es ganz gut, wenn Du in der App mal z.B. 10 Minuten einstellst und startest, dann siehst Du ja den Wert in den Objekten.
Ich habe bei mir 4 Ventile und möchte die auch z.B. über iQontrol schalten können, nicht nur in der App.Im Moment kann ich noch nix testen, da meine Ventile noch abgeklemmt sind.
-
@dslraser Genau um das geht es mir. Möchte es in mein Mediola neo system einbinden.
Das mit der Restlaufzeit ist ja eine tolle Sache. DANKE für die Tips -
@Mainframe sagte in [neuer Adapter] Gardena Smart System API:
OMG Das sieht ja kompliziert aus
Das sieht nur so aus. Das Problem sind die fehlenden 3 Sekunden, da die App auch nur volle Minuten angibt, wenn der gesetzte Wert in den Objekten nicht stimmt, dann sieht man in der App eine Fehlermeldung. Ein Fehler in der App kommt auch, wenn man versucht mehr als zwei Ventile zu starten.
-
@Mainframe
ach, und ich sehe gerade, das der watering timer zum starten auch noch auf wahr gesetzt werden muß....
(Blockly ist vom letzten Jahr, ich bin dann vor dem Winter nicht mehr zu Ende gekommen) -
@dslraser DU BIST DER HAMMER. Danke es hat geklappt.
-
@dslraser Habe noch zwei Fragen. Das Script funktionier soweit mir deiner Hilfe, nur wie beende ich das Script? Es soll einfach nur den Befehl senden und dann wieder ausschalten.
Und 2. Wie bekomme ich das Scrip jetzt in Mediola NEO? Blöcke exportieren oder den Java Scrip anzeigen und im Automationsmanager einfügen klappt mal nicht. Wäre auch zu einfach. -
@Mainframe sagte in [neuer Adapter] Gardena Smart System API:
Es soll einfach nur den Befehl senden und dann wieder ausschalten.
Wie man den stop Befehl sendet, siehst Du in meinem Blockly.
Und 2. Wie bekomme ich das Scrip jetzt in Mediola NEO?
Da kann ich Dir nicht helfen, das habe ich nicht.
Zeig doch mal Dein aktuelles Blockly/Script. (ich nutze z.B.auch eigene selbst erstellte Datenpunkte) -
Ganz schlicht und einfach. Er soll zb 1 Minuten einschalten und dann das script beenden. Bzw Das Scrip soll sofort beendet werden! Damit ich zb das Stop Script aufrufen kann.
-
@dslraser Du verwendest aber IQontrol. (Ist die kostenlose Version) Da musst du das ja irgendwie dein Script eingefügt haben.
-
@Mainframe sagte in [neuer Adapter] Gardena Smart System API:
Ganz schlicht und einfach. Er soll zb 1 Minuten einschalten und dann das script beenden. Bzw Das Scrip soll sofort beendet werden! Damit ich zb das Stop Script aufrufen kann.
Ich verwende eigene Datenpunkte dafür. Wenn ich wieder am Rechner bin, dann exportiere ich Dir mal mein Blockly.
Du brauchst einen Trigger dafür.
Und übrigens gehört in Deinen letzten steuere Baustein kein Textbaustein mit true, sonder ein Logikbaustein mit true/wahr. -
@Mainframe sagte in [neuer Adapter] Gardena Smart System API:
@dslraser Du verwendest aber IQontrol. (Ist die kostenlose Version) Da musst du das ja irgendwie dein Script eingefügt haben.
ähm...iQontrol ist kostenlos und läuft über ioBroker.
-
@Mainframe
Hier noch der Blockly Export, aber wie gesagt, das läuft noch nicht rund. Aber im Moment kann ich auch nicht weiter testen, da meine Ventile noch nicht wieder drann sind. In dem Blockly ist im Moment nur ein Ventil. Das Blockly erstellt auch Datenpunkte unter 0_userdata.0 und auch SmartNamen für den iot Adapter.<xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="" id="%iOvvbVzFhG(KGcEhYOT">start</variable> <variable type="" id="8id[V#VN.gR:xQ4Q3_@%">stop</variable> <variable type="" id="0a8xbe2*[-477gd-?1(E">duration</variable> <variable type="undefined" id="hinten">hinten</variable> <variable type="" id=".!r8N,_o=%#_@l*^5zXc">Anzahl_aktive_Ventile</variable> </variables> <block type="procedures_defcustomnoreturn" id="D:0E=~0D8*EFnn8f|sd." x="13" y="13"> <mutation statements="false"></mutation> <field name="NAME">Datenpunkte_erstellen</field> <field name="SCRIPT">LyoqCiAqIENyZWF0ZSBzdGF0ZXMgdW5kZXIgMF91c2VyZGF0YS4wIG9yIGphdmFzY3JpcHQueAogKiBDdXJyZW50IFZlcnNpb246ICAgICBodHRwczovL2dpdGh1Yi5jb20vTWljLU0vaW9icm9rZXIuY3JlYXRlVXNlclN0YXRlcwogKiBTdXBwb3J0OiAgICAgICAgICAgICBodHRwczovL2ZvcnVtLmlvYnJva2VyLm5ldC90b3BpYy8yNjgzOS8KICogQXV0b3I6ICAgICAgICAgICAgICAgTWljIChpb0Jyb2tlcikgfCBNaWMtTSAoZ2l0aHViKQogKiBWZXJzaW9uOiAgICAgICAgICAgICAxLjEgKDI2IEphbnVhcnkgMjAyMCkKICogRXhhbXBsZTogICAgICAgICAgICAgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9NaWMtTS9pb2Jyb2tlci5jcmVhdGVVc2VyU3RhdGVzI2JlaXNwaWVsCiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAqIFBMRUFTRSBOT1RFOiBQZXIgaHR0cHM6Ly9naXRodWIuY29tL2lvQnJva2VyL2lvQnJva2VyLmphdmFzY3JpcHQvaXNzdWVzLzQ3NCwgdGhlIHVzZWQgZnVuY3Rpb24gc2V0T2JqZWN0KCkgCiAqICAgICAgICAgICAgICBleGVjdXRlcyB0aGUgY2FsbGJhY2sgUFJJT1IgdG8gY29tcGxldGluZyB0aGUgc3RhdGUgY3JlYXRpb24uIFRoZXJlZm9yZSwgd2UgdXNlIGEgc2V0VGltZW91dCBhbmQgY291bnRlci4gCiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAqIEBwYXJhbSB7c3RyaW5nfSB3aGVyZSAgICAgICAgICBXaGVyZSB0byBjcmVhdGUgdGhlIHN0YXRlOiAnMF91c2VyZGF0YS4wJyBvciAnamF2YXNjcmlwdC54Jy4KICogQHBhcmFtIHtib29sZWFufSBmb3JjZSAgICAgICAgIEZvcmNlIHN0YXRlIGNyZWF0aW9uIChvdmVyd3JpdGUpLCBpZiBzdGF0ZSBpcyBleGlzdGluZy4KICogQHBhcmFtIHthcnJheX0gc3RhdGVzVG9DcmVhdGUgIFN0YXRlKHMpIHRvIGNyZWF0ZS4gc2luZ2xlIGFycmF5IG9yIGFycmF5IG9mIGFycmF5cwogKiBAcGFyYW0ge29iamVjdH0gW2NhbGxiYWNrXSAgICAgT3B0aW9uYWw6IGEgY2FsbGJhY2sgZnVuY3Rpb24gLS0gVGhpcyBwcm92aWRlZCBmdW5jdGlvbiB3aWxsIGJlIGV4ZWN1dGVkIGFmdGVyIGFsbCBzdGF0ZXMgYXJlIGNyZWF0ZWQuCiAqLwpmdW5jdGlvbiBjcmVhdGVVc2VyU3RhdGVzKHdoZXJlLCBmb3JjZSwgc3RhdGVzVG9DcmVhdGUsIGNhbGxiYWNrID0gdW5kZWZpbmVkKSB7CiAKICAgIGNvbnN0IFdBUk4gPSBmYWxzZTsgLy8gT25seSBmb3IgMF91c2VyZGF0YS4wOiBUaHJvd3Mgd2FybmluZyBpbiBsb2csIGlmIHN0YXRlIGlzIGFscmVhZHkgZXhpc3RpbmcgYW5kIGZvcmNlPWZhbHNlLiBEZWZhdWx0IGlzIGZhbHNlLCBzbyBubyB3YXJuaW5nIGluIGxvZywgaWYgc3RhdGUgZXhpc3RzLgogICAgY29uc3QgTE9HX0RFQlVHID0gZmFsc2U7IC8vIFRvIGRlYnVnIHRoaXMgZnVuY3Rpb24sIHNldCB0byB0cnVlCiAgICAvLyBQZXIgaXNzdWUgIzQ3NCAoaHR0cHM6Ly9naXRodWIuY29tL2lvQnJva2VyL2lvQnJva2VyLmphdmFzY3JpcHQvaXNzdWVzLzQ3NCksIHRoZSB1c2VkIGZ1bmN0aW9uIHNldE9iamVjdCgpIGV4ZWN1dGVzIHRoZSBjYWxsYmFjayAKICAgIC8vIGJlZm9yZSB0aGUgc3RhdGUgaXMgYWN0dWFsIGNyZWF0ZWQuIFRoZXJlZm9yZSwgd2UgdXNlIGEgc2V0VGltZW91dCBhbmQgY291bnRlciBhcyBhIHdvcmthcm91bmQuCiAgICBjb25zdCBERUxBWSA9IDUwOyAvLyBEZWxheSBpbiBtaWxsaXNlY29uZHMgKG1zKS4gSW5jcmVhc2UgdGhpcyB0byAxMDAsIGlmIGl0IGlzIG5vdCB3b3JraW5nLgoKICAgIC8vIFZhbGlkYXRlICJ3aGVyZSIKICAgIGlmICh3aGVyZS5lbmRzV2l0aCgnLicpKSB3aGVyZSA9IHdoZXJlLnNsaWNlKDAsIC0xKTsgLy8gUmVtb3ZlIHRyYWlsaW5nIGRvdAogICAgaWYgKCAod2hlcmUubWF0Y2goL14oKGphdmFzY3JpcHRcLihbMS05XVswLTldfFswLTldKSkkfDBfdXNlcmRhdGFcLjAkKS8pID09IG51bGwpICkgewogICAgICAgIGxvZygnVGhpcyBzY3JpcHQgZG9lcyBub3Qgc3VwcG9ydCB0byBjcmVhdGUgc3RhdGVzIHVuZGVyIFsnICsgd2hlcmUgKyAnXScsICdlcnJvcicpOwogICAgICAgIHJldHVybjsKICAgIH0KCiAgICAvLyBQcmVwYXJlICJzdGF0ZXNUb0NyZWF0ZSIgc2luY2Ugd2UgYWxzbyBhbGxvdyBhIHNpbmdsZSBzdGF0ZSB0byBjcmVhdGUKICAgIGlmKCFBcnJheS5pc0FycmF5KHN0YXRlc1RvQ3JlYXRlWzBdKSkgc3RhdGVzVG9DcmVhdGUgPSBbc3RhdGVzVG9DcmVhdGVdOyAvLyB3cmFwIGludG8gYXJyYXksIGlmIGp1c3Qgb25lIGFycmF5IGFuZCBub3QgaW5zaWRlIGFuIGFycmF5CgogICAgLy8gQWRkICJ3aGVyZSIgdG8gU1RBVEVTX1RPX0NSRUFURQogICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdGF0ZXNUb0NyZWF0ZS5sZW5ndGg7IGkrKykgewogICAgICAgIGxldCBscFBhdGggPSBzdGF0ZXNUb0NyZWF0ZVtpXVswXS5yZXBsYWNlKC9cLipcLi9nLCAnLicpOyAvLyByZXBsYWNlIGFsbCBtdWx0aXBsZSBkb3RzIGxpa2UgJy4uJywgJy4uLicgd2l0aCBhIHNpbmdsZSAnLicKICAgICAgICBscFBhdGggPSBscFBhdGgucmVwbGFjZSgvXigoamF2YXNjcmlwdFwuKFsxLTldWzAtOV18WzAtOV0pXC4pfDBfdXNlcmRhdGFcLjBcLikvLCcnKSAvLyByZW1vdmUgYW55IGphdmFzY3JpcHQueC4gLyAwX3VzZXJkYXRhLjAuIGZyb20gYmVnaW5uaW5nCiAgICAgICAgbHBQYXRoID0gd2hlcmUgKyAnLicgKyBscFBhdGg7IC8vIGFkZCB3aGVyZSB0byBiZWdpbm5pbmcgb2Ygc3RyaW5nCiAgICAgICAgc3RhdGVzVG9DcmVhdGVbaV1bMF0gPSBscFBhdGg7CiAgICB9CgogICAgaWYgKHdoZXJlICE9ICcwX3VzZXJkYXRhLjAnKSB7CiAgICAgICAgLy8gQ3JlYXRlIFN0YXRlcyB1bmRlciBqYXZhc2NyaXB0LngKICAgICAgICBsZXQgbnVtU3RhdGVzID0gc3RhdGVzVG9DcmVhdGUubGVuZ3RoOwogICAgICAgIHN0YXRlc1RvQ3JlYXRlLmZvckVhY2goZnVuY3Rpb24obG9vcFBhcmFtKSB7CiAgICAgICAgICAgIGlmIChMT0dfREVCVUcpIGxvZygnW0RlYnVnXSBOb3cgd2UgYXJlIGNyZWF0aW5nIG5ldyBzdGF0ZSBbJyArIGxvb3BQYXJhbVswXSArICddJyk7CiAgICAgICAgICAgIGxldCBsb29wSW5pdCA9IChsb29wUGFyYW1bMV1bJ2RlZiddID09IHVuZGVmaW5lZCkgPyBudWxsIDogbG9vcFBhcmFtWzFdWydkZWYnXTsgLy8gbWltaWMgc2FtZSBiZWhhdmlvciBhcyBjcmVhdGVTdGF0ZSBpZiBubyBpbml0IHZhbHVlIGlzIHByb3ZpZGVkCiAgICAgICAgICAgIGNyZWF0ZVN0YXRlKGxvb3BQYXJhbVswXSwgbG9vcEluaXQsIGZvcmNlLCBsb29wUGFyYW1bMV0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgbnVtU3RhdGVzLS07CiAgICAgICAgICAgICAgICBpZiAobnVtU3RhdGVzID09PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEFsbCBzdGF0ZXMgcHJvY2Vzc2VkLicpOwogICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgY2FsbGJhY2sgPT09ICdmdW5jdGlvbicpIHsgLy8gZXhlY3V0ZSBpZiBhIGZ1bmN0aW9uIHdhcyBwcm92aWRlZCB0byBwYXJhbWV0ZXIgY2FsbGJhY2sKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEZ1bmN0aW9uIHRvIGNhbGxiYWNrIHBhcmFtZXRlciB3YXMgcHJvdmlkZWQnKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKCk7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICB9IGVsc2UgewogICAgICAgIC8vIENyZWF0ZSBTdGF0ZXMgdW5kZXIgMF91c2VyZGF0YS4wCiAgICAgICAgbGV0IG51bVN0YXRlcyA9IHN0YXRlc1RvQ3JlYXRlLmxlbmd0aDsKICAgICAgICBsZXQgY291bnRlciA9IC0xOwogICAgICAgIHN0YXRlc1RvQ3JlYXRlLmZvckVhY2goZnVuY3Rpb24obG9vcFBhcmFtKSB7CiAgICAgICAgICAgIGNvdW50ZXIgKz0gMTsKICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nICgnW0RlYnVnXSBDdXJyZW50bHkgcHJvY2Vzc2luZyBmb2xsb3dpbmcgc3RhdGU6IFsnICsgbG9vcFBhcmFtWzBdICsgJ10nKTsKICAgICAgICAgICAgaWYoICgkKGxvb3BQYXJhbVswXSkubGVuZ3RoID4gMCkgJiYgKGV4aXN0c1N0YXRlKGxvb3BQYXJhbVswXSkpICkgeyAvLyBXb3JrYXJvdW5kIGR1ZSB0byBodHRwczovL2dpdGh1Yi5jb20vaW9Ccm9rZXIvaW9Ccm9rZXIuamF2YXNjcmlwdC9pc3N1ZXMvNDc4CiAgICAgICAgICAgICAgICAvLyBTdGF0ZSBpcyBleGlzdGluZy4KICAgICAgICAgICAgICAgIGlmIChXQVJOICYmICFmb3JjZSkgbG9nKCdTdGF0ZSBbJyArIGxvb3BQYXJhbVswXSArICddIGlzIGFscmVhZHkgZXhpc3RpbmcgYW5kIHdpbGwgbm8gbG9uZ2VyIGJlIGNyZWF0ZWQuJywgJ3dhcm4nKTsKICAgICAgICAgICAgICAgIGlmICghV0FSTiAmJiBMT0dfREVCVUcpIGxvZygnW0RlYnVnXSBTdGF0ZSBbJyArIGxvb3BQYXJhbVswXSArICddIGlzIGFscmVhZHkgZXhpc3RpbmcuIE9wdGlvbiBmb3JjZSAoPW92ZXJ3cml0ZSkgaXMgc2V0IHRvIFsnICsgZm9yY2UgKyAnXS4nKTsKICAgICAgICAgICAgICAgIGlmKCFmb3JjZSkgewogICAgICAgICAgICAgICAgICAgIC8vIFN0YXRlIGV4aXN0cyBhbmQgc2hhbGwgbm90IGJlIG92ZXJ3cml0dGVuIHNpbmNlIGZvcmNlPWZhbHNlCiAgICAgICAgICAgICAgICAgICAgLy8gU28sIHdlIGRvIG5vdCBwcm9jZWVkLgogICAgICAgICAgICAgICAgICAgIG51bVN0YXRlcy0tOwogICAgICAgICAgICAgICAgICAgIGlmIChudW1TdGF0ZXMgPT09IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEFsbCBzdGF0ZXMgc3VjY2Vzc2Z1bGx5IHByb2Nlc3NlZCEnKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjYWxsYmFjayA9PT0gJ2Z1bmN0aW9uJykgeyAvLyBleGVjdXRlIGlmIGEgZnVuY3Rpb24gd2FzIHByb3ZpZGVkIHRvIHBhcmFtZXRlciBjYWxsYmFjawogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEFuIG9wdGlvbmFsIGNhbGxiYWNrIGZ1bmN0aW9uIHdhcyBwcm92aWRlZCwgd2hpY2ggd2UgYXJlIGdvaW5nIHRvIGV4ZWN1dGUgbm93LicpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAvLyBXZSBuZWVkIHRvIGdvIG91dCBhbmQgY29udGludWUgd2l0aCBuZXh0IGVsZW1lbnQgaW4gbG9vcC4KICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xODQ1MjkyMC9jb250aW51ZS1pbi1jdXJzb3ItZm9yZWFjaAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gLy8gaWYoIWZvcmNlKQogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyBTdGF0ZSBpcyBub3QgZXhpc3Rpbmcgb3IgZm9yY2UgPSB0cnVlLCBzbyB3ZSBhcmUgY29udGludWluZyB0byBjcmVhdGUgdGhlIHN0YXRlIHRocm91Z2ggc2V0T2JqZWN0KCkuCiAgICAgICAgICAgIGxldCBvYmogPSB7fTsKICAgICAgICAgICAgb2JqLnR5cGUgPSAnc3RhdGUnOwogICAgICAgICAgICBvYmoubmF0aXZlID0ge307CiAgICAgICAgICAgIG9iai5jb21tb24gPSBsb29wUGFyYW1bMV07CiAgICAgICAgICAgIHNldE9iamVjdChsb29wUGFyYW1bMF0sIG9iaiwgZnVuY3Rpb24gKGVycikgewogICAgICAgICAgICAgICAgaWYgKGVycikgewogICAgICAgICAgICAgICAgICAgIGxvZygnQ2Fubm90IHdyaXRlIG9iamVjdCBmb3Igc3RhdGUgWycgKyBsb29wUGFyYW1bMF0gKyAnXTogJyArIGVycik7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIGlmIChMT0dfREVCVUcpIGxvZygnW0RlYnVnXSBOb3cgd2UgYXJlIGNyZWF0aW5nIG5ldyBzdGF0ZSBbJyArIGxvb3BQYXJhbVswXSArICddJykKICAgICAgICAgICAgICAgICAgICBsZXQgaW5pdCA9IG51bGw7CiAgICAgICAgICAgICAgICAgICAgaWYobG9vcFBhcmFtWzFdLmRlZiA9PT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKGxvb3BQYXJhbVsxXS50eXBlID09PSAnbnVtYmVyJykgaW5pdCA9IDA7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKGxvb3BQYXJhbVsxXS50eXBlID09PSAnYm9vbGVhbicpIGluaXQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYobG9vcFBhcmFtWzFdLnR5cGUgPT09ICdzdHJpbmcnKSBpbml0ID0gJyc7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgaW5pdCA9IGxvb3BQYXJhbVsxXS5kZWY7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHNldFN0YXRlKGxvb3BQYXJhbVswXSwgaW5pdCwgdHJ1ZSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoTE9HX0RFQlVHKSBsb2coJ1tEZWJ1Z10gc2V0U3RhdGUgZHVyY2hnZWbDvGhydDogJyArIGxvb3BQYXJhbVswXSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBudW1TdGF0ZXMtLTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChudW1TdGF0ZXMgPT09IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoTE9HX0RFQlVHKSBsb2coJ1tEZWJ1Z10gQWxsIHN0YXRlcyBwcm9jZXNzZWQuJyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjYWxsYmFjayA9PT0gJ2Z1bmN0aW9uJykgeyAvLyBleGVjdXRlIGlmIGEgZnVuY3Rpb24gd2FzIHByb3ZpZGVkIHRvIHBhcmFtZXRlciBjYWxsYmFjawogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoTE9HX0RFQlVHKSBsb2coJ1tEZWJ1Z10gRnVuY3Rpb24gdG8gY2FsbGJhY2sgcGFyYW1ldGVyIHdhcyBwcm92aWRlZCcpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2soKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgIH0sIERFTEFZICsgKDIwICogY291bnRlcikgKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICB9Cn0KCmxldCBzdGF0ZXNUb0NyZWF0ZSA9IFsKICAgIFsnR2FyZGVuYS5CZXdhZXNzZXJ1bmcuMDFSZXN0bGF1ZnplaXRfdm9ybl9saW5rcycsIHsnbmFtZSc6JzAxUmVzdGxhdWZ6ZWl0IHZvcm4gbGlua3MnLCAndHlwZSc6J251bWJlcicsICdyZWFkJzp0cnVlLCAnd3JpdGUnOnRydWUsICdyb2xlJzonbGV2ZWwnLCd1bml0JzonTWludXRlbicsJ21pbic6MCwgJ21heCc6NjAsICdkZWYnOjAsICJzbWFydE5hbWUiOiB7ImRlIjogIkJld8Okc3NlcnVuZyB2b3JuIGxpbmtzIiwic21hcnRUeXBlIjogIkxJR0hUIiwiYnlPTiI6ICJzdG9yZWQifSB9XSwKICAgIFsnR2FyZGVuYS5CZXdhZXNzZXJ1bmcuMDJSZXN0bGF1ZnplaXRfdm9ybl9yZWNodHMnLCB7J25hbWUnOicwMlJlc3RsYXVmemVpdCB2b3JuIHJlY2h0cycsICd0eXBlJzonbnVtYmVyJywgJ3JlYWQnOnRydWUsICd3cml0ZSc6dHJ1ZSwgJ3JvbGUnOidsZXZlbCcsJ3VuaXQnOidNaW51dGVuJywnbWluJzowLCAnbWF4Jzo2MCwgJ2RlZic6MCwgInNtYXJ0TmFtZSI6IHsiZGUiOiAiQmV3w6Rzc2VydW5nIHZvcm4gcmVjaHRzIiwic21hcnRUeXBlIjogIkxJR0hUIiwiYnlPTiI6ICJzdG9yZWQifSB9XSwKICAgIFsnR2FyZGVuYS5CZXdhZXNzZXJ1bmcuMDNSZXN0bGF1ZnplaXRfc2VpdGUnLCB7J25hbWUnOicwM1Jlc3RsYXVmemVpdCBzZWl0ZScsICd0eXBlJzonbnVtYmVyJywgJ3JlYWQnOnRydWUsICd3cml0ZSc6dHJ1ZSwgJ3JvbGUnOidsZXZlbCcsJ3VuaXQnOidNaW51dGVuJywnbWluJzowLCAnbWF4Jzo2MCwgJ2RlZic6MCwgInNtYXJ0TmFtZSI6IHsiZGUiOiAiQmV3w6Rzc2VydW5nIHNlaXRlIiwic21hcnRUeXBlIjogIkxJR0hUIiwiYnlPTiI6ICJzdG9yZWQifSB9XSwKICAgIFsnR2FyZGVuYS5CZXdhZXNzZXJ1bmcuMDRSZXN0bGF1ZnplaXRfaGludGVuJywgeyduYW1lJzonMDRSZXN0bGF1ZnplaXQgaGludGVuJywgJ3R5cGUnOidudW1iZXInLCAncmVhZCc6dHJ1ZSwgJ3dyaXRlJzp0cnVlLCAncm9sZSc6J2xldmVsJywndW5pdCc6J01pbnV0ZW4nLCdtaW4nOjAsICdtYXgnOjYwLCAnZGVmJzowLCAic21hcnROYW1lIjogeyJkZSI6ICJCZXfDpHNzZXJ1bmcgaGludGVuIiwic21hcnRUeXBlIjogIkxJR0hUIiwiYnlPTiI6ICJzdG9yZWQifSB9XSwKICAgIFsnR2FyZGVuYS5CZXdhZXNzZXJ1bmcuMDVha3RpdmVfVmVudGlsZScsIHsnbmFtZSc6JzA1YWt0aXZlIFZlbnRpbGUnLCAndHlwZSc6J251bWJlcicsICdyZWFkJzp0cnVlLCAnd3JpdGUnOnRydWUsICdyb2xlJzonbnVtYmVyJywndW5pdCc6J1ZlbnRpbGUnLCdkZWYnOjAsIH1dLApdOyAgICAKICAgIGNyZWF0ZVVzZXJTdGF0ZXMoJzBfdXNlcmRhdGEuMCcsIGZhbHNlLCBzdGF0ZXNUb0NyZWF0ZSk7Cg==</field> <comment pinned="false" h="80" w="160">Datenpunkte erstellen</comment> </block> <block type="procedures_callcustomnoreturn" id="K:Dkkzk:i@OO;gcBEH{Y" x="13" y="63"> <mutation name="Datenpunkte_erstellen"></mutation> <next> <block type="variables_set" id=":c0YN}Y]rvt|9Ap,7~zr"> <field name="VAR" id="%iOvvbVzFhG(KGcEhYOT" variabletype="">start</field> <value name="VALUE"> <block type="text" id="H2-p#-Ij$ssd*7jVXKwi"> <field name="TEXT">manual</field> </block> </value> <next> <block type="variables_set" id="MgUi2bmI}M%AZ]UM;Ulx"> <field name="VAR" id="8id[V#VN.gR:xQ4Q3_@%" variabletype="">stop</field> <value name="VALUE"> <block type="text" id="{#@Q`r:8If1|gOltc.0."> <field name="TEXT">idle</field> </block> </value> <next> <block type="comment" id="_xZ0}nhqtzQF;+Pet?wD"> <field name="COMMENT">Hinten</field> <next> <block type="on_ext" id="bkr7Oxh.jkq38Hg:FJ_P"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="pVo)6rfzoS~-2?p52[ex"> <field name="oid">0_userdata.0.Gardena.Bewaesserung.04Restlaufzeit_hinten</field> </shadow> </value> <statement name="STATEMENT"> <block type="comment" id="naM%iuve@,gBS@h.QY]."> <field name="COMMENT">Hinten Ventil ID 1</field> <next> <block type="controls_if" id="_4,mh8}AlO2*^u1C3lV-"> <mutation elseif="2"></mutation> <value name="IF0"> <block type="logic_compare" id=",uub=JjEz-a-||Eb}6F;"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id="K-^}K-zjcaj%VTlXEgVb"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Gardena.Bewaesserung.04Restlaufzeit_hinten</field> </block> </value> <value name="B"> <block type="math_number" id=")|H@#s?`(#|cO@f/.d2M"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="controls_if" id="R7~p:/5-%OPmscc1SUY["> <value name="IF0"> <block type="logic_compare" id="o}b5U-0gm/m)ARTcn(Uh"> <field name="OP">LTE</field> <value name="A"> <block type="get_value" id=";M@mI1H/v3I/9n4{W`{I"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Gardena.Bewaesserung.05aktive_Ventile</field> </block> </value> <value name="B"> <block type="math_number" id="74M)02u;`Nr~hH+!ZT#Z"> <field name="NUM">2</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="u(rl[zSa}/!JLc}`k9f+"> <mutation delay_input="false"></mutation> <field name="OID">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.099e1cc2-80f0-3888-a25e-06bd12e0f593.properties.duration</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="jhs/2e~GWN?I)wNRi[wu"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Gardena.Bewaesserung.04Restlaufzeit_hinten</field> </block> </value> <next> <block type="control" id="GC!mc?B18ovz+Q]OCptk"> <mutation delay_input="false"></mutation> <field name="OID">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.099e1cc2-80f0-3888-a25e-06bd12e0f593.properties.state</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="(A8DTtF{5M`QZnL6ku[f"> <field name="VAR" id="%iOvvbVzFhG(KGcEhYOT" variabletype="">start</field> </block> </value> <next> <block type="control" id="g2g-.ro[O`*7)IEPH~7="> <mutation delay_input="true"></mutation> <field name="OID">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.099e1cc2-80f0-3888-a25e-06bd12e0f593.smart_trigger</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">1000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"> <block type="logic_boolean" id="U1Y7v$xAE`8rR@g_77GN"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </next> </block> </statement> <next> <block type="timeouts_clearinterval" id="26Q4ksA,ujx81^vwN*OB"> <field name="NAME">hinten</field> <next> <block type="timeouts_setinterval" id="V)eR!]mz9$ByAx0jq`n!"> <field name="NAME">hinten</field> <field name="INTERVAL">1</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="update" id="]tOcH;Daud(bBTD3:tlV" inline="false"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Gardena.Bewaesserung.04Restlaufzeit_hinten</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="nNab|(3*J+Qd/QP:)u;5"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="^!a,FZ33ph(GV#[e(EeR"> <field name="NUM">1</field> </shadow> <block type="get_value" id=".p*Vlcr*1oB%05VPm.Z4"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Gardena.Bewaesserung.04Restlaufzeit_hinten</field> </block> </value> <value name="B"> <shadow type="math_number" id="nh~,0m2g(HED8,CKti}b"> <field name="NUM">1</field> </shadow> <block type="math_number" id="9x*u,v+}w@f9)6q~]ymJ"> <field name="NUM">1</field> </block> </value> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id=";@`VZLA=O$No#gKJtPgt"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="p1-n]ye/xZ~4x+Jk6$I]"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Gardena.Bewaesserung.04Restlaufzeit_hinten</field> </block> </value> <value name="B"> <block type="math_number" id="*|6EULg)jKP:A/Db1XUg"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO1"> <block type="timeouts_clearinterval" id="|`-/ypSgD`GWuyj)Bz}g"> <field name="NAME">hinten</field> <next> <block type="control" id="n~tXA]b*@G6~djI?tE2t"> <mutation delay_input="false"></mutation> <field name="OID">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.099e1cc2-80f0-3888-a25e-06bd12e0f593.properties.state</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="mBsRE=85)(pD5a*SVXj#"> <field name="VAR" id="8id[V#VN.gR:xQ4Q3_@%" variabletype="">stop</field> </block> </value> <next> <block type="control" id="_mbo*(BFy^Cg{{)%4A7r"> <mutation delay_input="true"></mutation> <field name="OID">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.099e1cc2-80f0-3888-a25e-06bd12e0f593.smart_trigger</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">1000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"> <block type="logic_boolean" id="BTOBRh#@f=S_*$^gJZ::"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </next> </block> </statement> <value name="IF2"> <block type="logic_operation" id=".m7s$Q%H`?sjN9272+tw" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="l0D#91@!o39DCI(.kr=L"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id="h9jd^t9-Y1fe;6glVA1d"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Gardena.Bewaesserung.04Restlaufzeit_hinten</field> </block> </value> <value name="B"> <block type="math_number" id="d#uD7/JGXk4^+:T%IXCW"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="O_9#Gp4_u!Nd)a{pdE[*"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id=":sFUUgE5bEt}P$qf$-FI"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Gardena.Bewaesserung.05aktive_Ventile</field> </block> </value> <value name="B"> <block type="math_number" id="[_3_pbiLdji)0-9[?!Y:"> <field name="NUM">2</field> </block> </value> </block> </value> </block> </value> <statement name="DO2"> <block type="update" id="+]G[vga2r01D``x$-7(x"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Gardena.Bewaesserung.04Restlaufzeit_hinten</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="eU^su!N7w!F,9KMu%rhS"> <field name="NUM">0</field> </block> </value> </block> </statement> </block> </next> </block> </statement> <next> <block type="on_ext" id="4hYU!~XtxcP3*K4-U6$9"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="_3xLV]y]3#7u~^S,vp(@"> <field name="oid">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.099e1cc2-80f0-3888-a25e-06bd12e0f593.properties.state</field> </shadow> </value> <statement name="STATEMENT"> <block type="comment" id="H7BEQf$#^Yw=*(!J*P%B"> <field name="COMMENT">Hinten Ventil ID 1 aus, wenn in der App ausgeschaltet wird</field> <next> <block type="controls_if" id="V;VAtWg+=)C[6=1ea`$$"> <value name="IF0"> <block type="logic_compare" id="hhC:2:AVoVY+](N]])~!"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="2-[=nKAtK?guW^5-;Uy`"> <field name="ATTR">val</field> <field name="OID">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.099e1cc2-80f0-3888-a25e-06bd12e0f593.properties.state</field> </block> </value> <value name="B"> <block type="variables_get" id="`;Ci/2uX%YI[sx/In!z_"> <field name="VAR" id="8id[V#VN.gR:xQ4Q3_@%" variabletype="">stop</field> </block> </value> </block> </value> <statement name="DO0"> <block type="update" id="x|Wt}+)IG4-.2T::.U?J"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Gardena.Bewaesserung.04Restlaufzeit_hinten</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="`[lO+QhxJtx}YXmjFDOk"> <field name="NUM">0</field> </block> </value> </block> </statement> </block> </next> </block> </statement> <next> <block type="on_ext" id="1h)ZD?q0DPx[#%DXc8xR"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="Y$~eE+:4En2e[}%f]hY#"> <field name="oid">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.099e1cc2-80f0-3888-a25e-06bd12e0f593.properties.duration</field> </shadow> </value> <statement name="STATEMENT"> <block type="variables_set" id=";fSL2AkDzri~Cnwym^K%"> <field name="VAR" id="0a8xbe2*[-477gd-?1(E" variabletype="">duration</field> <value name="VALUE"> <block type="math_arithmetic" id="TDARyOJhrsaT~6Q0,pNq"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="7WD.Gc[vqZx%uUL7XGSm"> <field name="NUM">1</field> </shadow> <block type="get_value" id="O^uGhC{#n/z.-1i}h]w;"> <field name="ATTR">val</field> <field name="OID">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.099e1cc2-80f0-3888-a25e-06bd12e0f593.properties.duration</field> </block> </value> <value name="B"> <shadow type="math_number" id="IJ:)RfzcH|5/-|=/[i)l"> <field name="NUM">1</field> </shadow> <block type="math_number" id="AZE=%?.qHoRomxRv3g3U"> <field name="NUM">3</field> </block> </value> </block> </value> <next> <block type="comment" id="-shyWw]q.x-Tk`.#Y;3H"> <field name="COMMENT">Hinten Ventil ID 1 Laufzeit, wenn in der App geändert wird</field> <next> <block type="controls_if" id="LvO*^Fhw_CMS{kU^pF!Q"> <value name="IF0"> <block type="logic_compare" id="jOp)|Zf/;Q.$tu~r!0,t"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="JwDns*PAbim;;`DNJWud"> <field name="ATTR">val</field> <field name="OID">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.099e1cc2-80f0-3888-a25e-06bd12e0f593.properties.state</field> </block> </value> <value name="B"> <block type="variables_get" id="iTRHlA+HL[XJX.j[D@^5"> <field name="VAR" id="%iOvvbVzFhG(KGcEhYOT" variabletype="">start</field> </block> </value> </block> </value> <statement name="DO0"> <block type="update" id="4JV@N={t`*A0(!=k{1Y|"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Gardena.Bewaesserung.04Restlaufzeit_hinten</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="4W0xvZ(Q3%9*!WkY$hL/"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="0)CW:M*`*arYMmG7^rcF"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="$~2`n5xZJnc+ZUr}$ctl"> <field name="VAR" id="0a8xbe2*[-477gd-?1(E" variabletype="">duration</field> </block> </value> <value name="B"> <shadow type="math_number" id="=DmKHn=ofqy[H#w,t;v0"> <field name="NUM">1</field> </shadow> <block type="math_number" id="jmH5vlVfN;nb3HT{-frQ"> <field name="NUM">60</field> </block> </value> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </statement> <next> <block type="comment" id="OfN_,{3CDv)z_Ss%kZ18"> <field name="COMMENT">Seite</field> <next> <block type="comment" id=")s;m^gn-J,Zudu.NFhKy"> <field name="COMMENT">Vorne rechts</field> <next> <block type="comment" id="FN=fH4Z6z:dqi-37Hisv"> <field name="COMMENT">Vorne links</field> <next> <block type="comment" id="7iNd.ypCLT8}xu-k$bXH"> <field name="COMMENT">aktive Ventile</field> <next> <block type="on_ext" id="ak:h]_Wzhofy;Gv%Jz*b"> <mutation items="4"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="gFu{fxMeCrES}yS`B-=T"> <field name="oid">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.099e1cc2-80f0-3888-a25e-06bd12e0f593.properties.state</field> </shadow> </value> <value name="OID1"> <shadow type="field_oid" id=",7r:nmG2}yxx.cZci!B4"> <field name="oid">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.1167267d-74ef-3bcd-8917-523c69ad9cf5.properties.state</field> </shadow> </value> <value name="OID2"> <shadow type="field_oid" id="_::4ZJRgJ6I_!mAVm:^L"> <field name="oid">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.8f976e90-5f89-3e88-a205-8f9cb2fd0a51.properties.state</field> </shadow> </value> <value name="OID3"> <shadow type="field_oid" id="HPe{}P;p^WtG92XI/G~p"> <field name="oid">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.3abc91d0-4e23-33f7-9f81-58ccdc5ebea2.properties.state</field> </shadow> </value> <statement name="STATEMENT"> <block type="variables_set" id="6r.`ubF[7lRh:~KB!hwn"> <field name="VAR" id=".!r8N,_o=%#_@l*^5zXc" variabletype="">Anzahl_aktive_Ventile</field> <value name="VALUE"> <block type="math_number" id="}N0|NxGCR24S5(JdzO@)"> <field name="NUM">0</field> </block> </value> <next> <block type="comment" id="Ir~K5=?fZ861q`!.w)Y_"> <field name="COMMENT">Ventil 1</field> <next> <block type="controls_if" id="|4hc2AMC9{MhMcC.f^oJ"> <value name="IF0"> <block type="logic_compare" id="OvmAE!mZ!2j6CfiH4x+e"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="?xw^HAp4NpAr5siYnHQ)"> <field name="ATTR">val</field> <field name="OID">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.099e1cc2-80f0-3888-a25e-06bd12e0f593.properties.state</field> </block> </value> <value name="B"> <block type="variables_get" id="e([ut)BC%oNoeo,W{35R"> <field name="VAR" id="%iOvvbVzFhG(KGcEhYOT" variabletype="">start</field> </block> </value> </block> </value> <statement name="DO0"> <block type="math_change" id="P{X+]x]f0]!3pza#uj6V"> <field name="VAR" id=".!r8N,_o=%#_@l*^5zXc" variabletype="">Anzahl_aktive_Ventile</field> <value name="DELTA"> <shadow type="math_number" id="w,ThlF*sJNR#1sY9`d#s"> <field name="NUM">1</field> </shadow> </value> </block> </statement> <next> <block type="comment" id="[:^wBG3sJL-Q$F%@kj_5"> <field name="COMMENT">Ventil 2</field> <next> <block type="controls_if" id="V-+eo+:u4H.8Ebz3;Nm_"> <value name="IF0"> <block type="logic_compare" id="@Bpq,$743)*np,xope`j"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="ml|(Jg}EM9OY2iFNESJ!"> <field name="ATTR">val</field> <field name="OID">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.1167267d-74ef-3bcd-8917-523c69ad9cf5.properties.state</field> </block> </value> <value name="B"> <block type="variables_get" id="f~%wSSHlMvyGc)Oo8m?L"> <field name="VAR" id="%iOvvbVzFhG(KGcEhYOT" variabletype="">start</field> </block> </value> </block> </value> <statement name="DO0"> <block type="math_change" id="km:_!Rw2^$)@y_q%vkDI"> <field name="VAR" id=".!r8N,_o=%#_@l*^5zXc" variabletype="">Anzahl_aktive_Ventile</field> <value name="DELTA"> <shadow type="math_number" id="44q$7Y$_D-CUQ,thE41#"> <field name="NUM">1</field> </shadow> </value> </block> </statement> <next> <block type="comment" id=":5MK2LVJE?lca3#?(ORJ"> <field name="COMMENT">Ventil 3</field> <next> <block type="controls_if" id="RD|[w`*gJ^q%sL[MlM%j"> <value name="IF0"> <block type="logic_compare" id="2~=5M^N6~F1iT70DLw}v"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="6/;{d)f394]|j!k^-yoa"> <field name="ATTR">val</field> <field name="OID">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.8f976e90-5f89-3e88-a205-8f9cb2fd0a51.properties.state</field> </block> </value> <value name="B"> <block type="variables_get" id="E%3Dh}EcZ?IzhlD{b3f)"> <field name="VAR" id="%iOvvbVzFhG(KGcEhYOT" variabletype="">start</field> </block> </value> </block> </value> <statement name="DO0"> <block type="math_change" id="?)(Xm.p,t.2DE(7}.@{A"> <field name="VAR" id=".!r8N,_o=%#_@l*^5zXc" variabletype="">Anzahl_aktive_Ventile</field> <value name="DELTA"> <shadow type="math_number" id="wYAs5;Saey_/9iPh_nlc"> <field name="NUM">1</field> </shadow> </value> </block> </statement> <next> <block type="comment" id="ty}]}S!I2Cy(7UJtApbG"> <field name="COMMENT">Ventil 4</field> <next> <block type="controls_if" id="zjZc4h9(8N272}#Z+rab"> <value name="IF0"> <block type="logic_compare" id="2l-l4Xin/D:NbW,tqhV5"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="M=$Dg/:Z3lo/cwDs1cDQ"> <field name="ATTR">val</field> <field name="OID">gardena.0.datapoints.2c47d688-dc5a-45e8-9adc-c3ae3cf5f5b4.79c54164-4963-48ce-b9f1-9bb3bc59d84e.abilities.27fa6b42-7ed2-3149-8e64-262f7988aaa6.3abc91d0-4e23-33f7-9f81-58ccdc5ebea2.properties.state</field> </block> </value> <value name="B"> <block type="variables_get" id="Ze6eolOm*u,]muW::p7G"> <field name="VAR" id="%iOvvbVzFhG(KGcEhYOT" variabletype="">start</field> </block> </value> </block> </value> <statement name="DO0"> <block type="math_change" id="!M6A5`R!ffScdtcM5`.!"> <field name="VAR" id=".!r8N,_o=%#_@l*^5zXc" variabletype="">Anzahl_aktive_Ventile</field> <value name="DELTA"> <shadow type="math_number" id="pr5sDX3XbJH8JI6+Bw]L"> <field name="NUM">1</field> </shadow> </value> </block> </statement> <next> <block type="update" id="OMU%^}/8Mc;4B9q7SCIY"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Gardena.Bewaesserung.05aktive_Ventile</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="ssnhaL!lN9:ECQkjyJ}1"> <field name="VAR" id=".!r8N,_o=%#_@l*^5zXc" variabletype="">Anzahl_aktive_Ventile</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </xml>
-
@dslraser Verstehe. Dachte du verwendest IQONTROL von Mediola.
-
@dslraser Ich bin ein totaler Neuling was iobroker, blockly usw betrifft. Muss mich erst einlesen und Videos durcharbeiten um dies alles zu verstehen. Aber danke
-
das hier ist das iQontrol von dem ich rede
https://github.com/sbormann/ioBroker.iqontrol/blob/master/README.md
-
@dslraser Danke Für die tolle Hilfe. Ich habe es ohne Blockly ins NEO geschafft.
Wo bekommst du die Daten für die Restzlaufzeit her? Duration verändert sich ja nicht. -
@Mainframe
aus meinem eigenen Datenpunkt über das Blockly. (in Minuten)Wenn ich in der App oder auch iQontrol die Bewässerung starte, dann wird die jeweilige Zeit in den jeweiligen Datenpunkt eingetragen und das Blockly zählt dann runter. (zyklische Ausführung 1 Minute)
-
@dslraser Perfekt Danke!
-
@dslraser Ganz verstehe ich es noch nicht.
Du Verwendest die Daten von 04Restlaufzeit hinten, ziehst nach einer Minute du den Wert 1 ab und setzt diese Variable wieder wo ein wo dieser Zyklus wieder nach einer Minute 1 abgezogen bekommt und bei Null ist Schluss?!
Ich bin zu blöd für Blockly