- Home
- Deutsch
- Skripten / Logik
- Blockly
- [Vorlage] Blockly - Beliebiges Zeichen im Text tauschen
[Vorlage] Blockly - Beliebiges Zeichen im Text tauschen
-
Dürfte nicht an der Version liegen. Ist nichts kompliziertes drin.
Das Script komplett importiert?
Alles zwischen <xml und </xml markieren und mit Strg+c kopieren und beim Import mit Strg+v einfügen. -
ja script ist importiert!
wie wird das dann verwendet? -
@cubeman Wenn Du noch nie mit Blockly gearbeitet hast, wirds kompliziert.
In Kürze.
Du nimmst einen Trigger und lässt die Meldung von DWD triggern um auf eine Änderung der Meldung zu reagieren.
In diesen Trigger setzt Du die linke Bausteingruppe rein.
In "setze MeinText" übergibst Du die DWD Meldung. Dann wie im Beispiel die Zeichen tauschen.
Bei den "Debug" Bausteinen kannst Du dann mit dem geänderten Text machen was Du möchtest.
Mit Email, Telegramm usw. versenden oder in einen Datenpunkt schreiben um den in VIS anzuzeigen. -
@rantanplan Das wäre dann in der Art oder? Die Weiterverarbeitung kriege ich dann hin.
-
Genau so
-
Vielen Dank für die Hilfe!
Beste Grüße -
@dslraser aha ich bin aktuell auf der 4.0.12 also ist es eine Beta?
Habe ich merkbare Nachteile, wenn ich runter zur 3.6.4 gehe?Ein Bug habe ich wohl in 4.0.12 gefunden, wenn man im Trigger ein 2tes Objekt hinzufügt und es danach wieder entfernen will bleibt es als unlöschbarer shadow im Hintergrund.
Löschen kann ich es dann nur, wenn ich im Export den Shadow Teil unten löschen und meinen Blockly Code wieder importiere.
edit:
ich sehe gerade im changelog das seit gestern eine 4.1.2 vorhanden ist...4.1.2 (2019-02-20)
(jkuehner) Updated the blockly to the latest code
(bleufox) scriptEnabled variables not only for experts
(bleufox) fixed one error with "cannot extract blockly"das Problem mit dem cannot extract blockly habe ich sogar aktuell, wie komme ich denn auf die Version hoch? Wird mir unter Adapter nicht angeboten.
-
@TDCroPower ?????????
Falscher Fred!!! -
Hi,
ich versuche ein "letztes Komma" in meinem DP zu entfernen, aber egal wo ich ansetze es zerschiesst mir mein Blockly. Es gibt ein Haufen Fenster Status Script die aber irgendwie nie alles abgedeckt haben, was ich gerne wollte. Ich also nachfolgendes Blockly und es funktioniert einwandfrei nur habe ich eben ein "letztes Komma" in meinem DP, das ich aus "Perfektionsgründen" gerne weg hätte.
mein Blockly ist bestimmt nich so elegant wieviele andere... aber naja
ich gehe reagier auf die Trigger der HM Fenstergriffe und schreibe abhängig davon in variable den Namen der Fenster.Am Ende schreibe ich die Variablen in die Datenpunkte
jetzt ist wie bereit gesagt, das letzte Komma im Text zuviel.
ich müsste alle den Inhalt meiner variable " var_text_fenster_geschlossen" einlesen und das letzte "Komma" entfernen, bevor ich den Datenpunkt fülle.ich habe heute schon Stunden damit verbracht, ich stehe auf dem Schlauch.
Ich kann die "Text" Elemente aus Blockly nicht in meine Script verbinden dass irgendwie sinnig ist.bitte helft mir mal da raus.
Vielen Dank -
Ich habe HMIP Fensterdrehgriffe und einfache HMIP Fenstersensoren gemischt und mache die Auswertung über die Werteliste. Vielleicht magst Du es Dir mal ansehen.
Geräte zählen
https://forum.iobroker.net/post/346230Und hier das gleiche, zusätzlich mit Alexa Ansage
https://forum.iobroker.net/post/273976 -
@dslraser
Hi, Danke dir, das kenne ich schon und habe viel davon abgeschaut.
Aber ich verstehe eben nicht alles und kann dann nicht daran weiterarbeiten oder verändern/ für mich ergänzen, daher habe ich es für mich neu aufgebaut.es geht mir eben nur noch um das "Komma".
-
@dos1973
stelle mal Dein Blockly hier rein, ich möchte mal was probieren. -
-
@dos1973
Naja, Du könntest ja sogar machen wieText = Im Text nimm Teil ab Anfang bis Textlänge -1
Dann isses weg
-
@padrino
ich bekomme die Puzzle mit den "Textblöcken" nicht in mein Blockly ohne es zu zerstören... -
@dos1973
Bin jetzt leider nicht am PC...Mach den Baustein, wie von mir beschrieben (allein, unter oder neben Deinem Blocken).
Als Text nimmst/verschiebst Du Deine Variable aus "beschreibe Datenpunkte", dann schiebst Du das ganze Konstrukt zurück ins "steuere", wo die Variable fehlt. -
@padrino
das klappt alles nicht,
entweder stehe ich hier total auf dem Schlauch, aber mir fehlt einfach der "Vorbau" um mit den Textblöcken zu arbeiten zu können. -
<xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="undefined" id="Blockly_start">Blockly_start</variable> <variable type="" id="lORNh2Pt?czf/[Pfo.(1">var_fenster_offen</variable> <variable type="" id="6VGwAvuZ|naQs:$3=)Eu">var_fenster_gekippt</variable> <variable type="" id="DhL`*s-7|kUw=e@q/mo/">var_fenster_geschlossen</variable> <variable type="" id="Q!dr0|xbBMZfEjF}8{ex">var_gekippt_oder_offen</variable> <variable type="" id="b?%5%fXn!w`Ft,m~9C}C">var_text_fenster_offen</variable> <variable type="" id="6%kvOp_86|coob7n0tCg">var_text_fenster_geschlossen</variable> <variable type="" id="eVC#)Xjk3Fn4EhfdHvKE">var_text_fenster_gekippt</variable> </variables> <block type="procedures_defcustomnoreturn" id=".}seu`gD99^pXgi@37f:" disabled="true" x="13" y="63"> <mutation statements="false"></mutation> <field name="NAME">Datenpunkt_erstellen</field> <field name="SCRIPT">LyoqCiAqIENyZWF0ZSBzdGF0ZXMgdW5kZXIgMF91c2VyZGF0YS4wIG9yIGphdmFzY3JpcHQueAogKiBDdXJyZW50IFZlcnNpb246ICAgICBodHRwczovL2dpdGh1Yi5jb20vTWljLU0vaW9icm9rZXIuY3JlYXRlVXNlclN0YXRlcwogKiBTdXBwb3J0OiAgICAgICAgICAgICBodHRwczovL2ZvcnVtLmlvYnJva2VyLm5ldC90b3BpYy8yNjgzOS8KICogQXV0b3I6ICAgICAgICAgICAgICAgTWljIChpb0Jyb2tlcikgfCBNaWMtTSAoZ2l0aHViKQogKiBWZXJzaW9uOiAgICAgICAgICAgICAxLjEgKDI2IEphbnVhcnkgMjAyMCkKICogRXhhbXBsZTogICAgICAgICAgICAgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9NaWMtTS9pb2Jyb2tlci5jcmVhdGVVc2VyU3RhdGVzI2JlaXNwaWVsCiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAqIFBMRUFTRSBOT1RFOiBQZXIgaHR0cHM6Ly9naXRodWIuY29tL2lvQnJva2VyL2lvQnJva2VyLmphdmFzY3JpcHQvaXNzdWVzLzQ3NCwgdGhlIHVzZWQgZnVuY3Rpb24gc2V0T2JqZWN0KCkgCiAqICAgICAgICAgICAgICBleGVjdXRlcyB0aGUgY2FsbGJhY2sgUFJJT1IgdG8gY29tcGxldGluZyB0aGUgc3RhdGUgY3JlYXRpb24uIFRoZXJlZm9yZSwgd2UgdXNlIGEgc2V0VGltZW91dCBhbmQgY291bnRlci4gCiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAqIEBwYXJhbSB7c3RyaW5nfSB3aGVyZSAgICAgICAgICBXaGVyZSB0byBjcmVhdGUgdGhlIHN0YXRlOiAnMF91c2VyZGF0YS4wJyBvciAnamF2YXNjcmlwdC54Jy4KICogQHBhcmFtIHtib29sZWFufSBmb3JjZSAgICAgICAgIEZvcmNlIHN0YXRlIGNyZWF0aW9uIChvdmVyd3JpdGUpLCBpZiBzdGF0ZSBpcyBleGlzdGluZy4KICogQHBhcmFtIHthcnJheX0gc3RhdGVzVG9DcmVhdGUgIFN0YXRlKHMpIHRvIGNyZWF0ZS4gc2luZ2xlIGFycmF5IG9yIGFycmF5IG9mIGFycmF5cwogKiBAcGFyYW0ge29iamVjdH0gW2NhbGxiYWNrXSAgICAgT3B0aW9uYWw6IGEgY2FsbGJhY2sgZnVuY3Rpb24gLS0gVGhpcyBwcm92aWRlZCBmdW5jdGlvbiB3aWxsIGJlIGV4ZWN1dGVkIGFmdGVyIGFsbCBzdGF0ZXMgYXJlIGNyZWF0ZWQuCiAqLwpmdW5jdGlvbiBjcmVhdGVVc2VyU3RhdGVzKHdoZXJlLCBmb3JjZSwgc3RhdGVzVG9DcmVhdGUsIGNhbGxiYWNrID0gdW5kZWZpbmVkKSB7CiAKICAgIGNvbnN0IFdBUk4gPSBmYWxzZTsgLy8gT25seSBmb3IgMF91c2VyZGF0YS4wOiBUaHJvd3Mgd2FybmluZyBpbiBsb2csIGlmIHN0YXRlIGlzIGFscmVhZHkgZXhpc3RpbmcgYW5kIGZvcmNlPWZhbHNlLiBEZWZhdWx0IGlzIGZhbHNlLCBzbyBubyB3YXJuaW5nIGluIGxvZywgaWYgc3RhdGUgZXhpc3RzLgogICAgY29uc3QgTE9HX0RFQlVHID0gZmFsc2U7IC8vIFRvIGRlYnVnIHRoaXMgZnVuY3Rpb24sIHNldCB0byB0cnVlCiAgICAvLyBQZXIgaXNzdWUgIzQ3NCAoaHR0cHM6Ly9naXRodWIuY29tL2lvQnJva2VyL2lvQnJva2VyLmphdmFzY3JpcHQvaXNzdWVzLzQ3NCksIHRoZSB1c2VkIGZ1bmN0aW9uIHNldE9iamVjdCgpIGV4ZWN1dGVzIHRoZSBjYWxsYmFjayAKICAgIC8vIGJlZm9yZSB0aGUgc3RhdGUgaXMgYWN0dWFsIGNyZWF0ZWQuIFRoZXJlZm9yZSwgd2UgdXNlIGEgc2V0VGltZW91dCBhbmQgY291bnRlciBhcyBhIHdvcmthcm91bmQuCiAgICBjb25zdCBERUxBWSA9IDUwOyAvLyBEZWxheSBpbiBtaWxsaXNlY29uZHMgKG1zKS4gSW5jcmVhc2UgdGhpcyB0byAxMDAsIGlmIGl0IGlzIG5vdCB3b3JraW5nLgoKICAgIC8vIFZhbGlkYXRlICJ3aGVyZSIKICAgIGlmICh3aGVyZS5lbmRzV2l0aCgnLicpKSB3aGVyZSA9IHdoZXJlLnNsaWNlKDAsIC0xKTsgLy8gUmVtb3ZlIHRyYWlsaW5nIGRvdAogICAgaWYgKCAod2hlcmUubWF0Y2goL14oKGphdmFzY3JpcHRcLihbMS05XVswLTldfFswLTldKSkkfDBfdXNlcmRhdGFcLjAkKS8pID09IG51bGwpICkgewogICAgICAgIGxvZygnVGhpcyBzY3JpcHQgZG9lcyBub3Qgc3VwcG9ydCB0byBjcmVhdGUgc3RhdGVzIHVuZGVyIFsnICsgd2hlcmUgKyAnXScsICdlcnJvcicpOwogICAgICAgIHJldHVybjsKICAgIH0KCiAgICAvLyBQcmVwYXJlICJzdGF0ZXNUb0NyZWF0ZSIgc2luY2Ugd2UgYWxzbyBhbGxvdyBhIHNpbmdsZSBzdGF0ZSB0byBjcmVhdGUKICAgIGlmKCFBcnJheS5pc0FycmF5KHN0YXRlc1RvQ3JlYXRlWzBdKSkgc3RhdGVzVG9DcmVhdGUgPSBbc3RhdGVzVG9DcmVhdGVdOyAvLyB3cmFwIGludG8gYXJyYXksIGlmIGp1c3Qgb25lIGFycmF5IGFuZCBub3QgaW5zaWRlIGFuIGFycmF5CgogICAgLy8gQWRkICJ3aGVyZSIgdG8gU1RBVEVTX1RPX0NSRUFURQogICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdGF0ZXNUb0NyZWF0ZS5sZW5ndGg7IGkrKykgewogICAgICAgIGxldCBscFBhdGggPSBzdGF0ZXNUb0NyZWF0ZVtpXVswXS5yZXBsYWNlKC9cLipcLi9nLCAnLicpOyAvLyByZXBsYWNlIGFsbCBtdWx0aXBsZSBkb3RzIGxpa2UgJy4uJywgJy4uLicgd2l0aCBhIHNpbmdsZSAnLicKICAgICAgICBscFBhdGggPSBscFBhdGgucmVwbGFjZSgvXigoamF2YXNjcmlwdFwuKFsxLTldWzAtOV18WzAtOV0pXC4pfDBfdXNlcmRhdGFcLjBcLikvLCcnKSAvLyByZW1vdmUgYW55IGphdmFzY3JpcHQueC4gLyAwX3VzZXJkYXRhLjAuIGZyb20gYmVnaW5uaW5nCiAgICAgICAgbHBQYXRoID0gd2hlcmUgKyAnLicgKyBscFBhdGg7IC8vIGFkZCB3aGVyZSB0byBiZWdpbm5pbmcgb2Ygc3RyaW5nCiAgICAgICAgc3RhdGVzVG9DcmVhdGVbaV1bMF0gPSBscFBhdGg7CiAgICB9CgogICAgaWYgKHdoZXJlICE9ICcwX3VzZXJkYXRhLjAnKSB7CiAgICAgICAgLy8gQ3JlYXRlIFN0YXRlcyB1bmRlciBqYXZhc2NyaXB0LngKICAgICAgICBsZXQgbnVtU3RhdGVzID0gc3RhdGVzVG9DcmVhdGUubGVuZ3RoOwogICAgICAgIHN0YXRlc1RvQ3JlYXRlLmZvckVhY2goZnVuY3Rpb24obG9vcFBhcmFtKSB7CiAgICAgICAgICAgIGlmIChMT0dfREVCVUcpIGxvZygnW0RlYnVnXSBOb3cgd2UgYXJlIGNyZWF0aW5nIG5ldyBzdGF0ZSBbJyArIGxvb3BQYXJhbVswXSArICddJyk7CiAgICAgICAgICAgIGxldCBsb29wSW5pdCA9IChsb29wUGFyYW1bMV1bJ2RlZiddID09IHVuZGVmaW5lZCkgPyBudWxsIDogbG9vcFBhcmFtWzFdWydkZWYnXTsgLy8gbWltaWMgc2FtZSBiZWhhdmlvciBhcyBjcmVhdGVTdGF0ZSBpZiBubyBpbml0IHZhbHVlIGlzIHByb3ZpZGVkCiAgICAgICAgICAgIGNyZWF0ZVN0YXRlKGxvb3BQYXJhbVswXSwgbG9vcEluaXQsIGZvcmNlLCBsb29wUGFyYW1bMV0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgbnVtU3RhdGVzLS07CiAgICAgICAgICAgICAgICBpZiAobnVtU3RhdGVzID09PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEFsbCBzdGF0ZXMgcHJvY2Vzc2VkLicpOwogICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgY2FsbGJhY2sgPT09ICdmdW5jdGlvbicpIHsgLy8gZXhlY3V0ZSBpZiBhIGZ1bmN0aW9uIHdhcyBwcm92aWRlZCB0byBwYXJhbWV0ZXIgY2FsbGJhY2sKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEZ1bmN0aW9uIHRvIGNhbGxiYWNrIHBhcmFtZXRlciB3YXMgcHJvdmlkZWQnKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKCk7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICB9IGVsc2UgewogICAgICAgIC8vIENyZWF0ZSBTdGF0ZXMgdW5kZXIgMF91c2VyZGF0YS4wCiAgICAgICAgbGV0IG51bVN0YXRlcyA9IHN0YXRlc1RvQ3JlYXRlLmxlbmd0aDsKICAgICAgICBsZXQgY291bnRlciA9IC0xOwogICAgICAgIHN0YXRlc1RvQ3JlYXRlLmZvckVhY2goZnVuY3Rpb24obG9vcFBhcmFtKSB7CiAgICAgICAgICAgIGNvdW50ZXIgKz0gMTsKICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nICgnW0RlYnVnXSBDdXJyZW50bHkgcHJvY2Vzc2luZyBmb2xsb3dpbmcgc3RhdGU6IFsnICsgbG9vcFBhcmFtWzBdICsgJ10nKTsKICAgICAgICAgICAgaWYoICgkKGxvb3BQYXJhbVswXSkubGVuZ3RoID4gMCkgJiYgKGV4aXN0c1N0YXRlKGxvb3BQYXJhbVswXSkpICkgeyAvLyBXb3JrYXJvdW5kIGR1ZSB0byBodHRwczovL2dpdGh1Yi5jb20vaW9Ccm9rZXIvaW9Ccm9rZXIuamF2YXNjcmlwdC9pc3N1ZXMvNDc4CiAgICAgICAgICAgICAgICAvLyBTdGF0ZSBpcyBleGlzdGluZy4KICAgICAgICAgICAgICAgIGlmIChXQVJOICYmICFmb3JjZSkgbG9nKCdTdGF0ZSBbJyArIGxvb3BQYXJhbVswXSArICddIGlzIGFscmVhZHkgZXhpc3RpbmcgYW5kIHdpbGwgbm8gbG9uZ2VyIGJlIGNyZWF0ZWQuJywgJ3dhcm4nKTsKICAgICAgICAgICAgICAgIGlmICghV0FSTiAmJiBMT0dfREVCVUcpIGxvZygnW0RlYnVnXSBTdGF0ZSBbJyArIGxvb3BQYXJhbVswXSArICddIGlzIGFscmVhZHkgZXhpc3RpbmcuIE9wdGlvbiBmb3JjZSAoPW92ZXJ3cml0ZSkgaXMgc2V0IHRvIFsnICsgZm9yY2UgKyAnXS4nKTsKICAgICAgICAgICAgICAgIGlmKCFmb3JjZSkgewogICAgICAgICAgICAgICAgICAgIC8vIFN0YXRlIGV4aXN0cyBhbmQgc2hhbGwgbm90IGJlIG92ZXJ3cml0dGVuIHNpbmNlIGZvcmNlPWZhbHNlCiAgICAgICAgICAgICAgICAgICAgLy8gU28sIHdlIGRvIG5vdCBwcm9jZWVkLgogICAgICAgICAgICAgICAgICAgIG51bVN0YXRlcy0tOwogICAgICAgICAgICAgICAgICAgIGlmIChudW1TdGF0ZXMgPT09IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEFsbCBzdGF0ZXMgc3VjY2Vzc2Z1bGx5IHByb2Nlc3NlZCEnKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjYWxsYmFjayA9PT0gJ2Z1bmN0aW9uJykgeyAvLyBleGVjdXRlIGlmIGEgZnVuY3Rpb24gd2FzIHByb3ZpZGVkIHRvIHBhcmFtZXRlciBjYWxsYmFjawogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEFuIG9wdGlvbmFsIGNhbGxiYWNrIGZ1bmN0aW9uIHdhcyBwcm92aWRlZCwgd2hpY2ggd2UgYXJlIGdvaW5nIHRvIGV4ZWN1dGUgbm93LicpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAvLyBXZSBuZWVkIHRvIGdvIG91dCBhbmQgY29udGludWUgd2l0aCBuZXh0IGVsZW1lbnQgaW4gbG9vcC4KICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xODQ1MjkyMC9jb250aW51ZS1pbi1jdXJzb3ItZm9yZWFjaAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gLy8gaWYoIWZvcmNlKQogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyBTdGF0ZSBpcyBub3QgZXhpc3Rpbmcgb3IgZm9yY2UgPSB0cnVlLCBzbyB3ZSBhcmUgY29udGludWluZyB0byBjcmVhdGUgdGhlIHN0YXRlIHRocm91Z2ggc2V0T2JqZWN0KCkuCiAgICAgICAgICAgIGxldCBvYmogPSB7fTsKICAgICAgICAgICAgb2JqLnR5cGUgPSAnc3RhdGUnOwogICAgICAgICAgICBvYmoubmF0aXZlID0ge307CiAgICAgICAgICAgIG9iai5jb21tb24gPSBsb29wUGFyYW1bMV07CiAgICAgICAgICAgIHNldE9iamVjdChsb29wUGFyYW1bMF0sIG9iaiwgZnVuY3Rpb24gKGVycikgewogICAgICAgICAgICAgICAgaWYgKGVycikgewogICAgICAgICAgICAgICAgICAgIGxvZygnQ2Fubm90IHdyaXRlIG9iamVjdCBmb3Igc3RhdGUgWycgKyBsb29wUGFyYW1bMF0gKyAnXTogJyArIGVycik7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIGlmIChMT0dfREVCVUcpIGxvZygnW0RlYnVnXSBOb3cgd2UgYXJlIGNyZWF0aW5nIG5ldyBzdGF0ZSBbJyArIGxvb3BQYXJhbVswXSArICddJykKICAgICAgICAgICAgICAgICAgICBsZXQgaW5pdCA9IG51bGw7CiAgICAgICAgICAgICAgICAgICAgaWYobG9vcFBhcmFtWzFdLmRlZiA9PT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKGxvb3BQYXJhbVsxXS50eXBlID09PSAnbnVtYmVyJykgaW5pdCA9IDA7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKGxvb3BQYXJhbVsxXS50eXBlID09PSAnYm9vbGVhbicpIGluaXQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYobG9vcFBhcmFtWzFdLnR5cGUgPT09ICdzdHJpbmcnKSBpbml0ID0gJyc7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgaW5pdCA9IGxvb3BQYXJhbVsxXS5kZWY7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHNldFN0YXRlKGxvb3BQYXJhbVswXSwgaW5pdCwgdHJ1ZSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoTE9HX0RFQlVHKSBsb2coJ1tEZWJ1Z10gc2V0U3RhdGUgZHVyY2hnZWbDvGhydDogJyArIGxvb3BQYXJhbVswXSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBudW1TdGF0ZXMtLTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChudW1TdGF0ZXMgPT09IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoTE9HX0RFQlVHKSBsb2coJ1tEZWJ1Z10gQWxsIHN0YXRlcyBwcm9jZXNzZWQuJyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjYWxsYmFjayA9PT0gJ2Z1bmN0aW9uJykgeyAvLyBleGVjdXRlIGlmIGEgZnVuY3Rpb24gd2FzIHByb3ZpZGVkIHRvIHBhcmFtZXRlciBjYWxsYmFjawogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoTE9HX0RFQlVHKSBsb2coJ1tEZWJ1Z10gRnVuY3Rpb24gdG8gY2FsbGJhY2sgcGFyYW1ldGVyIHdhcyBwcm92aWRlZCcpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2soKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgIH0sIERFTEFZICsgKDIwICogY291bnRlcikgKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICB9Cn0KCmxldCBzdGF0ZXNUb0NyZWF0ZSA9IFsKICAgIAogICAgLy9GZW5zdGVyCiAgICBbJ1Rlc3QuRmVuc3Rlci5Lw7xjaGVuZmVuc3RlcicsIHsnbmFtZSc6J0vDvGNoZW5mZW5zdGVyJywgJ3R5cGUnOidzdHJpbmcnLCAncmVhZCc6dHJ1ZSwgJ3dyaXRlJzp0cnVlLCAncm9sZSc6J3N0cmluZycsICdkZWYnOicnfV0sCiAgICBbJ1Rlc3QuRmVuc3Rlci5CYWRlemltbWVyZmVuc3RlcicsIHsnbmFtZSc6J0JhZGV6aW1tZXJmZW5zdGVyJywgJ3R5cGUnOidzdHJpbmcnLCAncmVhZCc6dHJ1ZSwgJ3dyaXRlJzp0cnVlLCAncm9sZSc6J3N0cmluZycsICdkZWYnOicnfV0sCiAgICBbJ1Rlc3QuRmVuc3Rlci5XZXJrc3RhdHRmZW5zdGVyJywgeyduYW1lJzonV2Vya3N0YXR0ZmVuc3RlcicsICd0eXBlJzonc3RyaW5nJywgJ3JlYWQnOnRydWUsICd3cml0ZSc6dHJ1ZSwgJ3JvbGUnOidzdHJpbmcnLCAnZGVmJzonJ31dLAogICAgLy9BdXN3ZXJ0dW5nCiAgICBbJ1dvaG51bmcuU3RhdHVzLkZlbnN0ZXIuRmVuc3Rlcl9nZcO2ZmZuZXQnLCB7J25hbWUnOidGZW5zdGVyX2dlw7ZmZm5ldCcsICd0eXBlJzonbnVtYmVyJywgJ3JlYWQnOnRydWUsICd3cml0ZSc6dHJ1ZSwgJ3JvbGUnOidudW1iZXInLCAndW5pdCc6J2dlw7ZmZm5ldCd9XSwKICAgIFsnV29obnVuZy5TdGF0dXMuRmVuc3Rlci5GZW5zdGVyX2dla2lwcHQnLCB7J25hbWUnOidGZW5zdGVyX2dla2lwcHQnLCAndHlwZSc6J251bWJlcicsICdyZWFkJzp0cnVlLCAnd3JpdGUnOnRydWUsICdyb2xlJzonbnVtYmVyJywgJ3VuaXQnOidnZWtpcHB0J31dLAogICAgWydXb2hudW5nLlN0YXR1cy5GZW5zdGVyLkZlbnN0ZXJfZ2VzY2hsb3NzZW4nLCB7J25hbWUnOidGZW5zdGVyX2dlc2NobG9zc2VuJywgJ3R5cGUnOidudW1iZXInLCAncmVhZCc6dHJ1ZSwgJ3dyaXRlJzp0cnVlLCAncm9sZSc6J251bWJlcicsICd1bml0JzonZ2VzY2hsb3NzZW4nfV0sCiAgICBbJ1dvaG51bmcuU3RhdHVzLkZlbnN0ZXIuRmVuc3Rlcl9nZWtpcHB0X29kZXJfb2ZmZW4nLCB7J25hbWUnOidGZW5zdGVyX2dla2lwcHRfb2Rlcl9vZmZlbicsICd0eXBlJzonbnVtYmVyJywgJ3JlYWQnOnRydWUsICd3cml0ZSc6dHJ1ZSwgJ3JvbGUnOidudW1iZXInLCAndW5pdCc6J2dla2lwcHQgb2RlciBvZmZlbid9XSwKICAgIFsnV29obnVuZy5TdGF0dXMuRmVuc3Rlci5UZXh0X0ZlbnN0ZXJfb2ZmZW4nLCB7J25hbWUnOidUZXh0X0ZlbnN0ZXJfb2ZmZW4nLCAndHlwZSc6J3N0cmluZycsICdyZWFkJzp0cnVlLCAnd3JpdGUnOnRydWUsICdyb2xlJzonc3RyaW5nJywgJ2RlZic6Jyd9XSwKICAgIFsnV29obnVuZy5TdGF0dXMuRmVuc3Rlci5UZXh0X0ZlbnN0ZXJfZ2VzY2hsb3NzZW4nLCB7J25hbWUnOidUZXh0X0ZlbnN0ZXJfZ2VzY2hsb3NzZW4nLCAndHlwZSc6J3N0cmluZycsICdyZWFkJzp0cnVlLCAnd3JpdGUnOnRydWUsICdyb2xlJzonc3RyaW5nJywgJ2RlZic6Jyd9XSwKICAgIFsnV29obnVuZy5TdGF0dXMuRmVuc3Rlci5UZXh0X0ZlbnN0ZXJfZ2VraXBwdCcsIHsnbmFtZSc6J1RleHRfRmVuc3Rlcl9nZWtpcHB0JywgJ3R5cGUnOidzdHJpbmcnLCAncmVhZCc6dHJ1ZSwgJ3dyaXRlJzp0cnVlLCAncm9sZSc6J3N0cmluZycsICdkZWYnOicnfV0KICAgIApdOyAgICAKY3JlYXRlVXNlclN0YXRlcygnMF91c2VyZGF0YS4wJywgdHJ1ZSwgc3RhdGVzVG9DcmVhdGUpOwo=</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> <block type="comment" id="geR:o({PyTnc(Sc5gB.:" x="13" y="113"> <field name="COMMENT">reagiere auf folgende Trigger</field> <next> <block type="procedures_callcustomnoreturn" id="Y(J+8eW-a^mbu))S=bB_" disabled="true"> <mutation name="Datenpunkt_erstellen"></mutation> <next> <block type="timeouts_settimeout" id="+Gk%Hxz^:(Vu2fU3uMOy"> <field name="NAME">Blockly_start</field> <field name="DELAY">1000</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="procedures_callnoreturn" id="a%u~-DA;v9lz*7y_A:WS"> <mutation name="Fensterstatus"></mutation> </block> </statement> <next> <block type="comment" id="-[x6iQ8F2f/Qwfc!di@5"> <field name="COMMENT">Variable leeren</field> <next> <block type="variables_set" id="w`V{-Z$TSJHD^w3Mhv[L"> <field name="VAR" id="lORNh2Pt?czf/[Pfo.(1" variabletype="">var_fenster_offen</field> <value name="VALUE"> <block type="math_number" id="Z1]U/sdF5V*!~Ip5zG;n"> <field name="NUM">0</field> </block> </value> <next> <block type="variables_set" id="WfxP0rlOpOKw)?Y3R7vR"> <field name="VAR" id="6VGwAvuZ|naQs:$3=)Eu" variabletype="">var_fenster_gekippt</field> <value name="VALUE"> <block type="math_number" id="1`$;p(lD.pfawVZ1!}IU"> <field name="NUM">0</field> </block> </value> <next> <block type="variables_set" id="9qYGr4CdkO9)^sMLnwes"> <field name="VAR" id="DhL`*s-7|kUw=e@q/mo/" variabletype="">var_fenster_geschlossen</field> <value name="VALUE"> <block type="math_number" id="/00-df~G{q{oy$`Uh#kG"> <field name="NUM">0</field> </block> </value> <next> <block type="variables_set" id="BKVG2gp$kl``tS32p,T4"> <field name="VAR" id="Q!dr0|xbBMZfEjF}8{ex" variabletype="">var_gekippt_oder_offen</field> <value name="VALUE"> <block type="math_number" id="XHe|v8~z%H}DdPk;Zp_r"> <field name="NUM">0</field> </block> </value> <next> <block type="variables_set" id="Tdl3/XF*h}|M~s7K+_ZF"> <field name="VAR" id="b?%5%fXn!w`Ft,m~9C}C" variabletype="">var_text_fenster_offen</field> <value name="VALUE"> <block type="text" id="`T;,z1M9sqS/R+@$}]T5"> <field name="TEXT"></field> </block> </value> <next> <block type="variables_set" id="VMv-Y|2Q|j3`)gp,}9#b"> <field name="VAR" id="6%kvOp_86|coob7n0tCg" variabletype="">var_text_fenster_geschlossen</field> <value name="VALUE"> <block type="text" id="avcB2CO@{:|O49@D!$6^"> <field name="TEXT"></field> </block> </value> <next> <block type="variables_set" id="!6|l#:oN0([^)$Yc^YH7"> <field name="VAR" id="eVC#)Xjk3Fn4EhfdHvKE" variabletype="">var_text_fenster_gekippt</field> <value name="VALUE"> <block type="text" id="ExP%4X;!}S*9Ne)L815."> <field name="TEXT"></field> </block> </value> <next> <block type="on_ext" id="DgLM(@Y`m9+Ax*`]}ZYv"> <mutation items="3"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="MccWTVNiQj=Ev_+^s,pL"> <field name="oid">hm-rpc.0.0000D709955B95.1.STATE</field> </shadow> </value> <value name="OID1"> <shadow type="field_oid" id="Mrs,}xc]])?#Wa$w[FUu"> <field name="oid">hm-rpc.0.0000D709958ABE.1.STATE</field> </shadow> </value> <value name="OID2"> <shadow type="field_oid" id="hN3kCNp~e$@_2)VI6gB^"> <field name="oid">hm-rpc.0.0007D7099D0094.1.STATE</field> </shadow> </value> <statement name="STATEMENT"> <block type="procedures_callnoreturn" id="7?o_K3(srgL!,g:;gU-g"> <mutation name="Fensterstatus"></mutation> </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> <block type="procedures_defnoreturn" id="Xk^vR39OPj@](zj0l0ie" x="537" y="138"> <field name="NAME">Fensterstatus</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="comment" id="a@L9O?y5TLjU-LM5(Urk"> <field name="COMMENT">Variable leeren</field> <next> <block type="variables_set" id=":H.wuG#*Yo7wd`F3{J#7"> <field name="VAR" id="lORNh2Pt?czf/[Pfo.(1" variabletype="">var_fenster_offen</field> <value name="VALUE"> <block type="math_number" id="YarVMAh4Yxz188pV-xqH"> <field name="NUM">0</field> </block> </value> <next> <block type="variables_set" id="y2WI?uN%yrW`vbHg`}1+"> <field name="VAR" id="6VGwAvuZ|naQs:$3=)Eu" variabletype="">var_fenster_gekippt</field> <value name="VALUE"> <block type="math_number" id="s7OCAH-QGxj4(49E_I[7"> <field name="NUM">0</field> </block> </value> <next> <block type="variables_set" id="4YM9vFx)m%S/?|sy+L/K"> <field name="VAR" id="DhL`*s-7|kUw=e@q/mo/" variabletype="">var_fenster_geschlossen</field> <value name="VALUE"> <block type="math_number" id="xoOIp_`j%6Yvm)fO4H@b"> <field name="NUM">0</field> </block> </value> <next> <block type="variables_set" id="(Gu9X1R-+OVV1||JYWoB"> <field name="VAR" id="Q!dr0|xbBMZfEjF}8{ex" variabletype="">var_gekippt_oder_offen</field> <value name="VALUE"> <block type="math_number" id="4J^L*J,iTc#?B`uw)VBV"> <field name="NUM">0</field> </block> </value> <next> <block type="variables_set" id="2(lp]B!*k{s.{8][#iNn"> <field name="VAR" id="b?%5%fXn!w`Ft,m~9C}C" variabletype="">var_text_fenster_offen</field> <value name="VALUE"> <block type="text" id="`O#o({1]d,CG)LDi9lvg"> <field name="TEXT"></field> </block> </value> <next> <block type="variables_set" id="|18Gm{CeFWL@fP,_;yQP"> <field name="VAR" id="6%kvOp_86|coob7n0tCg" variabletype="">var_text_fenster_geschlossen</field> <value name="VALUE"> <block type="text" id="yR]le$Qehw6w=g*Q7x(_"> <field name="TEXT"></field> </block> </value> <next> <block type="variables_set" id="^8D#R78R#fP@2mo38mQa"> <field name="VAR" id="eVC#)Xjk3Fn4EhfdHvKE" variabletype="">var_text_fenster_gekippt</field> <value name="VALUE"> <block type="text" id="3?AaETaiw%+#1-;h1#`@"> <field name="TEXT"></field> </block> </value> <next> <block type="comment" id="glO*z5IXA{#CYu{RMsIe"> <field name="COMMENT">Küche</field> <next> <block type="controls_if" id="J2][l}#NSd|pngy0$L0="> <mutation elseif="2"></mutation> <value name="IF0"> <block type="logic_compare" id="mO]#1s+,MD,R8.Zq5nq6"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="I]jO~iP9%)1XhsK+q=gS"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.0000D709955B95.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="U.:8l|-o4c4p^Jgo*ZV?"> <field name="NUM">2</field> </block> </value> </block> </value> <statement name="DO0"> <block type="update" id="V+Lqq?[{%#15_2gbKIst"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Test.Fenster.Küchenfenster</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id=",~d%=[C#3~h8Z$5u~%+@"> <field name="TEXT">offen</field> </block> </value> <next> <block type="math_change" id="HCVS}^ZKI87xqXjC=/V8"> <field name="VAR" id="lORNh2Pt?czf/[Pfo.(1" variabletype="">var_fenster_offen</field> <value name="DELTA"> <shadow type="math_number" id="-+LTb`4N`3J|O#Vb|9y#"> <field name="NUM">1</field> </shadow> </value> <next> <block type="math_change" id="3-V7%LW.j]:m8R?xm`D|"> <field name="VAR" id="Q!dr0|xbBMZfEjF}8{ex" variabletype="">var_gekippt_oder_offen</field> <value name="DELTA"> <shadow type="math_number" id="a%3x?`hhvQ)(j!E:4KCa"> <field name="NUM">1</field> </shadow> </value> <next> <block type="text_append" id="FTtc9IzL,#7|7@:M;|h#"> <field name="VAR" id="b?%5%fXn!w`Ft,m~9C}C" variabletype="">var_text_fenster_offen</field> <value name="TEXT"> <shadow type="text" id="t3^uU`?7qM8|S,NHuq-?"> <field name="TEXT">Küche, </field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="nk3|QaDe]0JlMtc]`kj~"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="Xo~iN~*^Xnt0P(zk};`k"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.0000D709955B95.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="30Amp1V/h6gj!5#[kIe_"> <field name="NUM">1</field> </block> </value> </block> </value> <statement name="DO1"> <block type="update" id="X;KG2Sc2]tGkF,/ZSLY("> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Test.Fenster.Küchenfenster</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="FkDsWc2P[PNCy=@3ae[r"> <field name="TEXT">gekippt</field> </block> </value> <next> <block type="math_change" id="Fy)COP2ti!w_w=X|SevI"> <field name="VAR" id="6VGwAvuZ|naQs:$3=)Eu" variabletype="">var_fenster_gekippt</field> <value name="DELTA"> <shadow type="math_number" id="q^`qi.(M*$`X?#FpZD[4"> <field name="NUM">1</field> </shadow> </value> <next> <block type="math_change" id="[j8CM5Yxg/nIJQxi^A{y"> <field name="VAR" id="Q!dr0|xbBMZfEjF}8{ex" variabletype="">var_gekippt_oder_offen</field> <value name="DELTA"> <shadow type="math_number" id="!udUyEjuH2Df+GM(?r6~"> <field name="NUM">1</field> </shadow> </value> <next> <block type="text_append" id="Udo5W?O[hjo_Z:*}i?w`"> <field name="VAR" id="eVC#)Xjk3Fn4EhfdHvKE" variabletype="">var_text_fenster_gekippt</field> <value name="TEXT"> <shadow type="text" id="Vp}1hVOG1koCX3D/y#ZJ"> <field name="TEXT">Küche, </field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </statement> <value name="IF2"> <block type="logic_compare" id="gdAQZ+.qY;Ry2pR610$("> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="y5dwS7Z[d0c:Odc|uLzL"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.0000D709955B95.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="-tRl3r_7*Ajlwx1(oUP{"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO2"> <block type="update" id="D;!HMDfrN~7m%sl0pnhI"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Test.Fenster.Küchenfenster</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="V]y_{vL0$OhZ#Y4C+r{;"> <field name="TEXT">geschlossen</field> </block> </value> <next> <block type="math_change" id=",rD_tN|Rdpsz;#redWHj"> <field name="VAR" id="DhL`*s-7|kUw=e@q/mo/" variabletype="">var_fenster_geschlossen</field> <value name="DELTA"> <shadow type="math_number" id="H#w851jEyqW~Ub#o`6sJ"> <field name="NUM">1</field> </shadow> </value> <next> <block type="text_append" id="q(hTLe5^6W6cJ`YAb;Jd"> <field name="VAR" id="6%kvOp_86|coob7n0tCg" variabletype="">var_text_fenster_geschlossen</field> <value name="TEXT"> <shadow type="text" id="[U#TVSVr%UU+/##%`k4W"> <field name="TEXT">Küche, </field> </shadow> </value> </block> </next> </block> </next> </block> </statement> <next> <block type="comment" id="Ydw`0n3@0ftZ7+U,}r_R"> <field name="COMMENT">Badezimmer</field> <next> <block type="controls_if" id="N~CHU22_MkH*VAX5s!xV"> <mutation elseif="2"></mutation> <value name="IF0"> <block type="logic_compare" id="x}0?B9a8/|)]2.^+G_34"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="DtG7%]ZkM8OU4|T9[`FE"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.0000D709958ABE.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="Sw[[2u%w5+Z)4y(D%F%C"> <field name="NUM">2</field> </block> </value> </block> </value> <statement name="DO0"> <block type="update" id="b.oXNz.%{iH5vOAY+B_y"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Test.Fenster.Badezimmerfenster</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id=")jM/7;BZrueDT|7q;iNV"> <field name="TEXT">offen</field> </block> </value> <next> <block type="math_change" id=",hW}7cf`f=J}wH47muJ~"> <field name="VAR" id="lORNh2Pt?czf/[Pfo.(1" variabletype="">var_fenster_offen</field> <value name="DELTA"> <shadow type="math_number" id="9QF7$`Z$s_D0$tkX(q=7"> <field name="NUM">1</field> </shadow> </value> <next> <block type="math_change" id="JplL`/=~]iy(ITu;4=O7"> <field name="VAR" id="Q!dr0|xbBMZfEjF}8{ex" variabletype="">var_gekippt_oder_offen</field> <value name="DELTA"> <shadow type="math_number" id="sd7v+F0lh7jxlqTM@to7"> <field name="NUM">1</field> </shadow> </value> <next> <block type="text_append" id="?Bc(bxJ11JWSIN][*7y+"> <field name="VAR" id="b?%5%fXn!w`Ft,m~9C}C" variabletype="">var_text_fenster_offen</field> <value name="TEXT"> <shadow type="text" id="Oad/M:ODDz971h$^61NP"> <field name="TEXT">Badezimmer, </field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="m0u%$/QO(l1.:HO.E52="> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="6QSIvk^*{e=]o}^R;t;`"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.0000D709958ABE.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="}wv/U0,ZMbo{RgpY=+B("> <field name="NUM">1</field> </block> </value> </block> </value> <statement name="DO1"> <block type="update" id="dD@_qbM.S50+o8m.SQ.."> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Test.Fenster.Badezimmerfenster</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="x}cG;Xn|D^p*o5V#b5QU"> <field name="TEXT">gekippt</field> </block> </value> <next> <block type="math_change" id="Soc/.;N~x~/LRHtvPmjW"> <field name="VAR" id="6VGwAvuZ|naQs:$3=)Eu" variabletype="">var_fenster_gekippt</field> <value name="DELTA"> <shadow type="math_number" id="ldC95^aPu9Kbi#!Oc1?9"> <field name="NUM">1</field> </shadow> </value> <next> <block type="math_change" id="ezL]})RnyA{n-.cd8M*_"> <field name="VAR" id="Q!dr0|xbBMZfEjF}8{ex" variabletype="">var_gekippt_oder_offen</field> <value name="DELTA"> <shadow type="math_number" id="-cb:g!o^6Hw2*X`[%wb6"> <field name="NUM">1</field> </shadow> </value> <next> <block type="text_append" id=":1;@t*xz=1wAlXOHybqu"> <field name="VAR" id="eVC#)Xjk3Fn4EhfdHvKE" variabletype="">var_text_fenster_gekippt</field> <value name="TEXT"> <shadow type="text" id="seAD)^$m9oNzOiYwDNrf"> <field name="TEXT">Badezimmer, </field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </statement> <value name="IF2"> <block type="logic_compare" id="nX!K![C+S_b!s]OG)l;d"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="cK;^Bieg:3Zl3#!O4]-@"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.0000D709958ABE.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="_,K4[X!l+]ssFD%e%ruG"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO2"> <block type="update" id="%eHLjzdIvjp]%OLF)Z9y"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Test.Fenster.Badezimmerfenster</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="*MkgG,L[XiNa^]16KcNr"> <field name="TEXT">geschlossen</field> </block> </value> <next> <block type="math_change" id="ttfVeGya]{afz3JuF|N`"> <field name="VAR" id="DhL`*s-7|kUw=e@q/mo/" variabletype="">var_fenster_geschlossen</field> <value name="DELTA"> <shadow type="math_number" id="-^kT~z}~TfI8x{P-j|^N"> <field name="NUM">1</field> </shadow> </value> <next> <block type="text_append" id="4i@`tENHS^iX:zHs;9*b"> <field name="VAR" id="6%kvOp_86|coob7n0tCg" variabletype="">var_text_fenster_geschlossen</field> <value name="TEXT"> <shadow type="text" id="1j@V[[/5O+::UChH5RU2"> <field name="TEXT">Badezimmer, </field> </shadow> </value> </block> </next> </block> </next> </block> </statement> <next> <block type="comment" id="[~/l(#$5e`uo-cG1##pC"> <field name="COMMENT">Werkstatt</field> <next> <block type="controls_if" id="OP7*#wSk;c#[e-B[A*2P"> <mutation elseif="2"></mutation> <value name="IF0"> <block type="logic_compare" id="wnvMh(,O]Yh*i?iAI.qI"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="@89|YY-vGSv8I;as:6-o"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.0007D7099D0094.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id=")8j+4.iQrF3GOXoev,2("> <field name="NUM">2</field> </block> </value> </block> </value> <statement name="DO0"> <block type="update" id="ARUgXh?}4{8zUZZ`B5+@"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Test.Fenster.Werkstattfenster</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="0E7V~Hoh*)(31.qF8J($"> <field name="TEXT">offen</field> </block> </value> <next> <block type="math_change" id="v+sMTPj4Nb_zbqdx%),z"> <field name="VAR" id="lORNh2Pt?czf/[Pfo.(1" variabletype="">var_fenster_offen</field> <value name="DELTA"> <shadow type="math_number" id="0)+.{tIs6a=_6;dcg1f7"> <field name="NUM">1</field> </shadow> </value> <next> <block type="math_change" id="cUhl1{PO+M*=lU}54h7$"> <field name="VAR" id="Q!dr0|xbBMZfEjF}8{ex" variabletype="">var_gekippt_oder_offen</field> <value name="DELTA"> <shadow type="math_number" id=":Na]Z.-?cD%{nrEWk.-A"> <field name="NUM">1</field> </shadow> </value> <next> <block type="text_append" id="m15IJ5^FwZk{}u-Asqhi"> <field name="VAR" id="b?%5%fXn!w`Ft,m~9C}C" variabletype="">var_text_fenster_offen</field> <value name="TEXT"> <shadow type="text" id="jA.BLs.}}lRtOWcE|5Dh"> <field name="TEXT">Werkstatt, </field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="v{VVz]f+7/^T83F;qwCh"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="48Ue+W`T#5)$UvgB4CLV"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.0007D7099D0094.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="PlAoGB3][LKO)FC-O!3D"> <field name="NUM">1</field> </block> </value> </block> </value> <statement name="DO1"> <block type="update" id=")VJa7kr26f1YX7tfK-p{"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Test.Fenster.Werkstattfenster</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="i})Q%_@#8`m+m=?XUOCQ"> <field name="TEXT">gekippt</field> </block> </value> <next> <block type="math_change" id=":*_G+[%r$^3(|@BH+JKb"> <field name="VAR" id="6VGwAvuZ|naQs:$3=)Eu" variabletype="">var_fenster_gekippt</field> <value name="DELTA"> <shadow type="math_number" id="O6mrs=Xd`$p]8ZR65s@x"> <field name="NUM">1</field> </shadow> </value> <next> <block type="math_change" id="=gTS{(lJP:lV0%{[=lgR"> <field name="VAR" id="Q!dr0|xbBMZfEjF}8{ex" variabletype="">var_gekippt_oder_offen</field> <value name="DELTA"> <shadow type="math_number" id="n?R}PhCBY97J$RdxA6Ef"> <field name="NUM">1</field> </shadow> </value> <next> <block type="text_append" id="mG]hiRc_,.]b?^R5x13U"> <field name="VAR" id="eVC#)Xjk3Fn4EhfdHvKE" variabletype="">var_text_fenster_gekippt</field> <value name="TEXT"> <shadow type="text" id="b?,{4rjg3,XM=*64+Inc"> <field name="TEXT">Werkstatt, </field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </statement> <value name="IF2"> <block type="logic_compare" id="T5buE9$1:ZN^%B66`::Y"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="TF!FzD^Rp#OX|x1/V0f-"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.0007D7099D0094.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="e7i(0d85q`1$DCuR56;~"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO2"> <block type="update" id="%~c$;JCReV$RsGh5NLv5"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Test.Fenster.Werkstattfenster</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="vkLs,63Ib+s%yY{n@Kfi"> <field name="TEXT">geschlossen</field> </block> </value> <next> <block type="math_change" id="W?uyh{av*NFFC{04|%k#"> <field name="VAR" id="DhL`*s-7|kUw=e@q/mo/" variabletype="">var_fenster_geschlossen</field> <value name="DELTA"> <shadow type="math_number" id="ZurkFDSHF}HjnaF2R.aH"> <field name="NUM">1</field> </shadow> </value> <next> <block type="text_append" id="qwEpW5DvWsvZ(hW|fulP"> <field name="VAR" id="6%kvOp_86|coob7n0tCg" variabletype="">var_text_fenster_geschlossen</field> <value name="TEXT"> <shadow type="text" id=")}2T3DjV;)}0q`KjGvII"> <field name="TEXT">Werkstatt, </field> </shadow> </value> </block> </next> </block> </next> </block> </statement> <next> <block type="comment" id="RDjYVBiEg%d{JKKqt*S9"> <field name="COMMENT">beschreibe Datenpunkte</field> <next> <block type="update" id="-3oB33jwlN508i-4E*}w"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Wohnung.Status.Fenster.Fenster_geöffnet</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="xR{gt@Ts~#^Q9n|/7Vu5"> <field name="VAR" id="lORNh2Pt?czf/[Pfo.(1" variabletype="">var_fenster_offen</field> </block> </value> <next> <block type="update" id="a]e?hE7O*~=.S!87wjR:"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Wohnung.Status.Fenster.Fenster_gekippt</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="Y#BPd=k:t=5,G^{jnDF}"> <field name="VAR" id="6VGwAvuZ|naQs:$3=)Eu" variabletype="">var_fenster_gekippt</field> </block> </value> <next> <block type="update" id="dtp#.,MnI;VX2Y`qc.l7"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Wohnung.Status.Fenster.Fenster_geschlossen</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="bQa7LPM/k)+@]-qIjJ1w"> <field name="VAR" id="DhL`*s-7|kUw=e@q/mo/" variabletype="">var_fenster_geschlossen</field> </block> </value> <next> <block type="update" id="rZ}wkcie,QM7pcU`PLXB"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Wohnung.Status.Fenster.Fenster_gekippt_oder_offen</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="i~|ae^TsBqjwX~vZW|o;"> <field name="VAR" id="Q!dr0|xbBMZfEjF}8{ex" variabletype="">var_gekippt_oder_offen</field> </block> </value> <next> <block type="control_ex" id="XCf64K3Gz~M:BgGeoa@y" inline="true"> <field name="TYPE">true</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="?[X/29n;(u{TATZZ~dec"> <field name="oid">0_userdata.0.Wohnung.Status.Fenster.Text_Fenster_offen</field> </shadow> </value> <value name="VALUE"> <shadow type="logic_boolean" id="9H9%GpT0qgY10(~!Pm[f"> <field name="BOOL">TRUE</field> </shadow> <block type="text_getSubstring" id=".5(:l[`30E{!?e+KIr^!"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_END</field> <value name="STRING"> <block type="variables_get" id="KC/3LpVl3Gd~F{CI@bWx"> <field name="VAR" id="b?%5%fXn!w`Ft,m~9C}C" variabletype="">var_text_fenster_offen</field> </block> </value> <value name="AT2"> <block type="math_number" id="A?H)rLu=IeK_o$IE^ZnH"> <field name="NUM">3</field> </block> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="fWhjNhW-*YLrfuSN]2A~"> <field name="NUM">0</field> </shadow> </value> <next> <block type="control_ex" id="!9f|*xHYCwQc-|finaI]" inline="true"> <field name="TYPE">true</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="K`xH0x_jw(QW|KiXN^*D"> <field name="oid">0_userdata.0.Wohnung.Status.Fenster.Text_Fenster_geschlossen</field> </shadow> </value> <value name="VALUE"> <shadow type="logic_boolean" id="VpfP}pqKK^lE{n`!NVNB"> <field name="BOOL">TRUE</field> </shadow> <block type="text_getSubstring" id="@gfzBds042An6nMOt:7y"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_END</field> <value name="STRING"> <block type="variables_get" id="mXvLHmk)x{ce!tghRB]n"> <field name="VAR" id="6%kvOp_86|coob7n0tCg" variabletype="">var_text_fenster_geschlossen</field> </block> </value> <value name="AT2"> <block type="math_number" id="P`+^%vH?))MH*^ckJ||D"> <field name="NUM">3</field> </block> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="9_LY!)*l[asJ3JTwZFCx"> <field name="NUM">0</field> </shadow> </value> <next> <block type="control_ex" id="m6^lw2,!JEE[tKI*-`l6" inline="true"> <field name="TYPE">true</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="r;*JW6Hz*h7esb.hd3#B"> <field name="oid">0_userdata.0.Wohnung.Status.Fenster.Text_Fenster_gekippt</field> </shadow> </value> <value name="VALUE"> <shadow type="logic_boolean" id="}lHR]LNW)UPqJ;(*DNu1"> <field name="BOOL">TRUE</field> </shadow> <block type="text_getSubstring" id="j}2kpDWLFmr5T(:J.Qte"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_END</field> <value name="STRING"> <shadow type="text" id="EteP_lG{uP,pZJaNsx*p"> <field name="TEXT"></field> </shadow> <block type="variables_get" id="7tl#dIaPWqa:wQUSuZA,"> <field name="VAR" id="eVC#)Xjk3Fn4EhfdHvKE" variabletype="">var_text_fenster_gekippt</field> </block> </value> <value name="AT2"> <block type="math_number" id="2yp=%?jUba8Rzi9:[Bc;"> <field name="NUM">3</field> </block> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="~9F(v:%Bs:++-1=IWv%p"> <field name="NUM">0</field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </xml>
Ich habe mal drei Fenster von mir probiert....
-
@dos1973
Vorbau?
Du hast doch den Text in der Variablen "var_fenster_...").
Also packste die da rein (grüne Pfeile) und setzt es zusammen und auf "nimm Teil ab erster" umstellen. -
@dslraser
Oha, ah ja, "bis von hinten gibt's ja auch".
Aber wieso "3"?