Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Vorlage] Flexible Pin-Eingabe mit Blockly

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.8k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.4k

[Vorlage] Flexible Pin-Eingabe mit Blockly

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
blocklytemplate
72 Beiträge 16 Kommentatoren 18.1k Aufrufe 7 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • L Offline
    L Offline
    Loomii
    schrieb am zuletzt editiert von
    #6

    Hallo Rantanplan,

    Vielen Dank hab mir die Skript Seite 10 mal angeschaut aber an den beiden

    Pfeilen bin Ich wohl dran vorbei :ugeek:

    Jetzt geht´s ,danke fürs Skript

    Mfg

    Sven

    Debian Buster ,Node v12.19.0 NPM 6.14.8

    Billig Tablet an der Wand Android 4.4 und VIS App

    :mrgreen:

    1 Antwort Letzte Antwort
    0
    • lobomauL Offline
      lobomauL Offline
      lobomau
      schrieb am zuletzt editiert von
      #7

      Skript importiert: ok

      3 hqwidgets erzeugt: ok

      3 Variablen bolTestxx: ok

      Wie geht es jetzt weiter? Wo im widget trage ich jetzt den Bezug zum Skript ein?

      Host: NUC8i3 mit Proxmox:

      • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
      • Slave: Pi4
      1 Antwort Letzte Antwort
      0
      • rantanplanR Offline
        rantanplanR Offline
        rantanplan
        schrieb am zuletzt editiert von
        #8

        @lobomau:

        Wie geht es jetzt weiter? Wo im widget trage ich jetzt den Bezug zum Skript ein? `

        Ein Bezug zum Script brauchst Du nicht.

        Der Trigger im Script reagiert auf Änderung einer aufgeführten Variablen auf True/Wahr.

        Über VIS änderst Du den Zustand der Variablen wie beim Ein-/Ausschalten einer Lampe.

        Die Schnittstelle SIND die Variablen.

        Wenn eine davon WAHR wird, reagiert der Trigger.

        (Ist auch so auf dem Trigger beschrieben. Schau mal genau hin.)

        Achte bei dem hgWidget auf den Haken bei "Taster"!
        147_vis.png

        Bei mir stehen die Variablen unter javascript.1…...

        Bei Dir wird es wahrscheinlich javascript.0.... sein.

        [Edit] Mr ist noch aufgefalle, dass ich die Debug Ausgabe "Anwesend…. / Abwesend aktiviert" vertauscht habe.

        Grüße

        Rantanplan

        CCU3 / MS Server 2019(VM) / Scripten mit Blockly

        1 Antwort Letzte Antwort
        0
        • lobomauL Offline
          lobomauL Offline
          lobomau
          schrieb am zuletzt editiert von
          #9

          Danke. Habe es hinbekommen. Nettes Script.

          Host: NUC8i3 mit Proxmox:

          • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
          • Slave: Pi4
          1 Antwort Letzte Antwort
          0
          • rantanplanR Offline
            rantanplanR Offline
            rantanplan
            schrieb am zuletzt editiert von
            #10

            Prima. Freut mich.

            Habe jetzt meinen 6-fach Wandtaster wieder gefunden :D

            Werde das Script erweitern. Pin-Eingabe über VIS und 6-fach Wandtaster.

            Demnächst in diesem Kino ;)

            Rantanplan

            CCU3 / MS Server 2019(VM) / Scripten mit Blockly

            1 Antwort Letzte Antwort
            0
            • kmxakK Offline
              kmxakK Offline
              kmxak
              Most Active
              schrieb am zuletzt editiert von
              #11

              Überlege gerade ob man das nicht einfacher und besser lösen könnte. Kann man sich kein php Script bauen das true oder false je nach eingegebenen Pin zurückschickt? Quasi button on click ziffernfeld und dann mit dem php Ergebnis false or true weiter machen. *nur eine Idee *

              Gesendet von meinem SM-G928F mit Tapatalk

              Gruß Alex

              1 Antwort Letzte Antwort
              0
              • svenomattS Offline
                svenomattS Offline
                svenomatt
                schrieb am zuletzt editiert von
                #12

                Moin,

                sitze gerade an der Pin-Eingabe, habe die 3 Variablen test Bol.. angelegt und mit den 3 hqwidgets verbunden.

                Muss ich jetzt noch weitere Var. anlegen.

                und wenn ja welche sind das?

                1 Antwort Letzte Antwort
                0
                • rantanplanR Offline
                  rantanplanR Offline
                  rantanplan
                  schrieb am zuletzt editiert von
                  #13

                  Moin, Moin

                  Da wo die Kommentare "Eingabe korrekt" stehen, musst Du natürlich eigene Aktionen einbauen.

                  In dem Beispiel gibt es ja nur eine Debug-Ausgabe.

                  Dort kannst Du irgend etwas schalten oder eine eigene Variable ändern.

                  z.B. Alarm = wahr / Alarm= unwahr

                  Grüße

                  Rantanplan

                  CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                  1 Antwort Letzte Antwort
                  0
                  • svenomattS Offline
                    svenomattS Offline
                    svenomatt
                    schrieb am zuletzt editiert von
                    #14

                    Danke, hat hat geklappt. Hatte ich glatt überlesen.

                    1 Antwort Letzte Antwort
                    0
                    • D Offline
                      D Offline
                      darkbrain85
                      schrieb am zuletzt editiert von
                      #15

                      Hi!

                      Danke für die Inspiration.

                      Ich habe das ganze sehr leicht übernehmen können.

                      Das Problem mit dem zurücksetzen durch den Taster habe ich auch weitestgehend gelöst. Einfach nach jedem Tastendruck die Variable per Script zurücksetzen lassen.

                      Eine erweiterung auf die Tasten 0-9 ist auch sehr einfach möglich. Bei Bedarf kann ich das aber gerne auch nochmal exportieren falls es jemand haben möchte.

                      Gruß

                      Michel
                      1860_alarmscript.png

                      1 Antwort Letzte Antwort
                      0
                      • SmarthomeMFS Offline
                        SmarthomeMFS Offline
                        SmarthomeMF
                        schrieb am zuletzt editiert von
                        #16

                        Hallo

                        Ich bin noch relativ neu hier und habe keine Ahnung vom Programmieren.

                        Möchte aber die Pin Abfrage realisieren.

                        Dazu brauche ich eure Hilfe, dass auch ich als Anfänger das schaffe.
                        @rantanplan:

                        Hier der Imort:Spoiler: Show hidden text `
                        Den Script habe ich drin.

                        aber brauche ich da nicht noch weitere Skripte?
                        @rantanplan:

                        Für das Beispiel benutze ich 3 boolsche Variablen die ich über VIS steuer. `
                        Das sind die Skripte die du zu den Tasten brauchst? oder

                        gibt es schon ein fertiges Script das ich als Anfänger einbinden kann und das von 0-9 geht?

                        Wäre toll, wenn ich durch eure Hilfe das schaffen würde.

                        Danke

                        Max

                        ioBroker auf einem NUC ,16GB RAM, 120GB SSD) mit Proxmox
                        Cloud Pro, iot, Alexa, Sonos, sonoff, Fronius, Harmony, Doorbird, Shelly, Hue, Loxone, Mihome, …

                        1 Antwort Letzte Antwort
                        0
                        • rantanplanR Offline
                          rantanplanR Offline
                          rantanplan
                          schrieb am zuletzt editiert von
                          #17

                          @SmarthomeMF:

                          Den Script habe ich drin. `
                          Dann hast Du ja schon 90% geschafft. ;)

                          @SmarthomeMF:

                          aber brauche ich da nicht noch weitere Skripte? `
                          Nein
                          @SmarthomeMF:

                          @rantanplan:

                          Für das Beispiel benutze ich 3 boolsche Variablen die ich über VIS steuer. Das sind die Skripte die du zu den Tasten brauchst? oder

                          Nein, das sind keine Scripte.

                          Das sind Datenpunkte/Variablen. Diese kannst Du in VIS mit den Widgets verbinden.

                          Über VIS wird dann der "PinCode" eingegeben.

                          Das Blockly reagiert dann auf die Eingabe über VIS und baut den PinCode zusammen.

                          @SmarthomeMF:

                          gibt es schon ein fertiges Script das ich als Anfänger einbinden kann und das von 0-9 geht? `
                          Versuche erst einmal die Dreier Version ans laufen zu kriegen.

                          Dazu brauchst Du "nur" die Datenpunkte und die VIS Widgets.

                          Kommst Du mit VIS zurecht?

                          @SmarthomeMF:

                          Wäre toll, wenn ich durch eure Hilfe das schaffen würde. `

                          Wir schaffen das ;)

                          Hier etwas um schon mal die Datenpunkte anzulegen.

                          Achtung!!! Die haben andere Namen als in dem Beispiel.

                          Wenn Du das folgende Blockly einmal startest werden die Variablen angelegt.

                          Die findest Du dann unter javascript.0.Pincode_0 usw.

                          Das Script kannst Du dann wieder beenden.

                          Du musst dann nur in dem Beispielscript, da klicken wo "javascript.0.bolTestx" steht und durch die

                          entsprechende "javascript.0.Pincode_x" tauschen.
                          147_beispiel.png

                          Hier der Export:

                          ! <xml xmlns="http://www.w3.org/1999/xhtml"><block type="create" id="k45s-D}hiCCfW)QXQ13!" x="-312" y="37"><field name="NAME">Pincode_0</field> <statement name="STATEMENT"><block type="create" id="GzGNlOW@(Fd*)A1PQwP+"><field name="NAME">Pincode_1</field> <statement name="STATEMENT"><block type="create" id="{KMqqs^U6+Bqefj-e)_H"><field name="NAME">Pincode_2</field> <statement name="STATEMENT"><block type="create" id="Bh|7!TU)qCE)NLUQcUox"><field name="NAME">Pincode_3</field> <statement name="STATEMENT"><block type="create" id="BEQkl{Dy)uxW;O)Z1eU}"><field name="NAME">Pincode_4</field> <statement name="STATEMENT"><block type="create" id="-8S]ZFn8xy]AIG=ypi?V"><field name="NAME">Pincode_5</field> <statement name="STATEMENT"><block type="create" id="{e%@W;N!WN6)FFuzjGt%"><field name="NAME">Pincode_6</field> <statement name="STATEMENT"><block type="create" id="_H4%;yPLLJgS[UV9a0+s"><field name="NAME">Pincode_7</field> <statement name="STATEMENT"><block type="create" id="V5p68}x+,Ch!)qIu?ZlA"><field name="NAME">Pincode_8</field> <statement name="STATEMENT"><block type="create" id="e9Ue+P2Wa@=C|FOhYEX4"><field name="NAME">Pincode_9</field></block></statement></block></statement></block></statement></block></statement></block></statement></block></statement></block></statement></block></statement></block></statement></block></xml> !

                          Und hier das Widget aus VIS.

                          ! [{"tpl":"tplHqButton","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","oid":"javascript.0.bolTaste01","min":"false","max":"true","iconName":"/icons-mfd-png/edit_numeric_1.png","btIconWidth":"56","offsetAuto":true,"leftOffset":"15","topOffset":"55","pushButton":false,"caption":"","captionOn":"","g_leftRight":true,"timeAsInterval":"true","infoLeftFontSize":"0","infoFontRightSize":"0","infoLeftPaddingLeft":"0","infoLeftPaddingRight":"0","infoRightPaddingRight":"0","descriptionLeft":"bolTaste01","g_styles":false,"signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0},"style":{"left":"324px","top":"168px","width":"64px","height":"64px"},"widgetSet":"hqwidgets"}] !

                          Bei Fragen fragen.

                          Grüße

                          Rantanplan

                          CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                          1 Antwort Letzte Antwort
                          0
                          • SmarthomeMFS Offline
                            SmarthomeMFS Offline
                            SmarthomeMF
                            schrieb am zuletzt editiert von
                            #18

                            So nun brauche ich deine Unterstützung.

                            Ich habe das Script drin und auch schon abgeändert

                            ! <xml 1999/xmlns="<URL url=" http:/www.w3.org/xhtml"="">http://www.w3.org/1999/xhtml">
                            ! <block id=".M/Q%KRmxbXWc2P9~MO" type="comment" y="162" x="-87"><field name="COMMENT">Einmalige Initialisierung bei Programmstart</field>
                            ! <next><block id="tjP%K@i{#i,h1Dyax-gY" type="procedures_callnoreturn"><mutation name="Initialisierung"></mutation>
                            ! <next><block id="?bXfiCYH0h;wOsNVLQT1" type="comment"><field name="COMMENT">Hier beginnt das Triggern</field>
                            ! <next><block id="Ox)}[Fr#C.VldaJS5L^k" type="comment"><field name="COMMENT">Beliebig erweiterbar</field>
                            ! <next><block id="7r*}c).]GtkEH)FR.:s." type="on_ext"><mutation items="3"></mutation>
                            ! <field name="CONDITION">true</field>
                            ! <value name="OID0"><shadow id="qW*M98DOf90FmZ?BT;~" type="field_oid"><field name="oid">javascript.0.Pincode_1</field></shadow></value> ! <value name="OID1"><shadow id="db.g;R[uTi-M|khCqfC" type="field_oid"><field name="oid">javascript.0.Pincode_2</field></shadow></value>
                            ! <value name="OID2"><shadow id="xXI+u{uUm0V4mOYK!n]j" type="field_oid"><field name="oid">javascript.0.Pincode_3</field></shadow></value>
                            ! <statement name="STATEMENT"><block id="Yg;,[I7Ex=?rcz#y?kj%" type="comment"><field name="COMMENT">Timer für zu lange Eingabepause stoppen</field>
                            ! <next><block id="#p8Sw}HSQK?cYiU:YHiK" type="timeouts_cleartimeout"><field name="NAME">timeout</field>
                            ! <next><block id="?pNSp?WhqKPHT/B_pJo:" type="comment"><field name="COMMENT">Nur ausführen wenn Eingabe nicht geblockt</field>
                            ! <next><block id="dn-O]h-kTj)k:Hx)Xkz" type="controls_if"><value name="IF0"><block id="aahnsRO!(k,8K;ftiGcN" type="logic_compare"><field name="OP">NEQ</field> ! <value name="A"><block id="~1[*:7k/oGI/ZT1ie-F5" type="variables_get"><field name="VAR">AnzahlVersuche</field></block></value> ! <value name="B"><block id="9EtqToNOpvma_:nUc:I3" type="variables_get"><field name="VAR">maxVersuche</field></block></value></block></value> ! <statement name="DO0"><block id="53won3Q~KRaZW)3F6
                            [" type="controls_if"><mutation elseif="2"></mutation>
                            ! <value name="IF0"><block id="=Vuh)csdD]A:f+;xaY0c" type="logic_compare"><field name="OP">EQ</field>
                            ! <value name="A"><block id="73#D/?hW=+je)pXEOH]" type="get_value"><field name="ATTR">val</field>
                            ! <field name="OID">javascript.0.Pincode_1</field></block></value>
                            ! <value name="B"><block id="-nBqftYopC%u~4,0#S:J" type="logic_boolean"><field name="BOOL">TRUE</field></block></value></block></value>
                            ! <statement name="DO0"><block id="iDWo7Ppf@/PIDOC3,nQg" type="comment"><field name="COMMENT">Die Eingabe an Funktion übergeben</field>
                            ! <next><block id="9ND8^RRRst6JTr1aF:P" type="procedures_callnoreturn" inline="true"><mutation name="getCode"><arg name="TastenWert"></arg></mutation>
                            ! <value name="ARG0"><block id=";{hUhJ|FuWgRnG+Vx/" type="text"><field name="TEXT">1</field></block></value></block></next></block></statement>
                            ! <value name="IF1"><block id="7OCP}UF3YaQ|gs=RDFy" type="logic_compare"><field name="OP">EQ</field> ! <value name="A"><block id="NHZ%eeYxhwr?#M_(BhP/" type="get_value"><field name="ATTR">val</field> ! <field name="OID">javascript.0.Pincode_2</field></block></value> ! <value name="B"><block id="*2NWW1B~r6Z2E}P%j2wg" type="logic_boolean"><field name="BOOL">TRUE</field></block></value></block></value> ! <statement name="DO1"><block id="TUEyn}|x(z36g?T63y*_" type="procedures_callnoreturn" inline="true"><mutation name="getCode"><arg name="TastenWert"></arg></mutation> ! <value name="ARG0"><block id="]Rf6@?xK
                            gplLyQ-bQP" type="text"><field name="TEXT">2</field></block></value></block></statement>
                            ! <value name="IF2"><block id="8oUmv2o%~@wjdNn_2bB}" type="logic_compare"><field name="OP">EQ</field>
                            ! <value name="A"><block id="D5^##Kxmy;bo1B=Nj_?" type="get_value"><field name="ATTR">val</field> ! <field name="OID">javascript.0.Pincode_3</field></block></value> ! <value name="B"><block id="=+FvloDpnlxoQhQt]biY" type="logic_boolean"><field name="BOOL">TRUE</field></block></value></block></value> ! <statement name="DO2"><block id="?}Q)OGY}05Ms(#R@Kycz" type="procedures_callnoreturn" inline="true"><mutation name="getCode"><arg name="TastenWert"></arg></mutation> ! <value name="ARG0"><block id=";dy%FKdEuIq;eorrIp|h" type="text"><field name="TEXT">3</field></block></value></block></statement></block></statement></block></next></block></next></block></next></block></statement></block></next></block></next></block></next></block></next></block> ! <block id="O)q*?M8Hfa5)/}O6ZsZ7" type="procedures_defnoreturn" y="163" x="563"><field name="NAME">Initialisierung</field> ! <comment w="160" h="80" pinned="false">Bei Programmstart Werte vorgeben.</comment> ! <statement name="STACK"><block id="?L69j3%sRmc}([5G2X60" type="variables_set"><field name="VAR">AnzahlVersuche</field> ! <value name="VALUE"><block id="t]h/PX7feEalP-;RDq
                            " type="math_number"><field name="NUM">0</field></block></value>
                            ! <next><block id="wMeGQPHU)@|vwaJP%iqr" type="variables_set"><field name="VAR">tempCode</field>
                            ! <value name="VALUE"></value>
                            ! <next><block id="UZqDvMtW0LHk96L^T8z" type="comment"><field name="COMMENT">Maximale Fehlversuche festlegen</field>
                            ! <next><block id="e663[k*hSCd%o
                            ?sd(XA" type="variables_set"><field name="VAR">maxVersuche</field>
                            ! <value name="VALUE"><block id="{OjuYXvX(;:=T.oag~a#" type="math_number"><field name="NUM">3</field></block></value>
                            ! <next><block id="K(:;y-gihBx_:{%kJ~Oo" type="comment"><field name="COMMENT">Länge der Codes festlegen</field>
                            ! <next><block id="BGt@+4h!d)Kco3]{,)V" type="variables_set"><field name="VAR">maxCodeLaenge</field> ! <value name="VALUE"><block id="|Wm^i:C~o0Bp7;,-yy" type="math_number"><field name="NUM">3</field></block></value> ! <next><block id="ZgOwwPRCnNLM~@tR?DhB" type="comment"><field name="COMMENT">Liste der Codes</field> ! <next><block id="Kp%9#vKhE4,}vS;@yW_0" type="comment"><field name="COMMENT">Beliebig erweiterbar. Auf Länge achten!</field> ! <next><block id=";~}[HtK6:wa8W/1,]j2a" type="variables_set"><field name="VAR">CodeAbwesend</field> ! <value name="VALUE"><block id="/%k9:KVHUC2RVgH.:^v5" type="text"><field name="TEXT">321</field></block></value> ! <next><block id="~g%5m:PVJO18)ZuFgT%Y" type="variables_set"><field name="VAR">CodeAnwesend</field> ! <value name="VALUE"><block id=";ut1,j-D,_I[Y-ibyD-" type="text"><field name="TEXT">123</field></block></value></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></statement></block>
                            ! <block id="t@lDFN#V:FHO31zeMUSV" type="procedures_defnoreturn" y="813" x="-87"><mutation><arg name="TastenWert"></arg></mutation>
                            ! <field name="NAME">getCode</field>
                            ! <comment w="160" h="80" pinned="false">Code pruefen</comment>
                            ! <statement name="STACK"><block id="@0sNv=W?MJzk622W]Q4" type="text_append"><field name="VAR">tempCode</field> ! <value name="TEXT"><shadow id="6q^nqw|R(+L0{n_l/Gc4" type="text"></shadow> ! <block id="LWMvwI0w|bcPvg-n5gGg" type="variables_get"><field name="VAR">TastenWert</field></block></value> ! <next><block id="vjr3FKb9Vi*y+77wJTx," type="debug"><field name="Severity">log</field> ! <value name="TEXT"><shadow id=".0O)AP~8_Z_^cA%~Y=0o" type="text"></shadow> ! <block id=")*fGp8U0U/F=Wcs;KY/|" type="text_join"><mutation items="2"></mutation> ! <value name="ADD0"><block id=").fVwr0of^0wi[*+UipI" type="text"><field name="TEXT">*****Eingabe -></field></block></value> ! <value name="ADD1"><block id="Cw9-Bo9Tle36/K]UpAeB" type="variables_get"><field name="VAR">tempCode</field></block></value></block></value> ! <next><block id="n5A{||l/F/:ozsHSOg4^" type="controls_if"><mutation elseif="2"></mutation> ! <value name="IF0"><block id="T=]omffKe6S+(UpU:6" type="logic_compare"><field name="OP">GT</field>
                            ! <value name="A"><block id=";Xk,nZX;Io@ax2OT=s73" type="text_length"><value name="VALUE"><shadow id="RGYf*(-7S#_3L-Ww7];" type="text"><field name="TEXT">abc</field></shadow> ! <block id="gapi+DOc_=Fi})6b*l7}" type="variables_get"><field name="VAR">tempCode</field></block></value></block></value> ! <value name="B"><block id="j9RTTC,C]+Q)EY2SD}i" type="variables_get"><field name="VAR">maxCodeLaenge</field></block></value></block></value>
                            ! <statement name="DO0"><block id="|Tgo8I~X04G[v8TB8v3" type="comment"><field name="COMMENT">Zuviele Eingaben</field> ! <next><block id="+lM8)EE*fCon1X0.Dw=" type="comment"><field name="COMMENT">Eingabe löschen und Versuche hochzählen</field>
                            ! <next><block id="sRw2Xy,4}LO3T4q.5yM" type="debug"><field name="Severity">log</field>
                            ! <value name="TEXT"><shadow id="+cYZRRJa1z=6hGhTLdam" type="text"><field name="TEXT">Zuviele Zeichen</field></shadow></value>
                            ! <next><block id="%D8buHC|kCUU1/KVJB[2" type="variables_set"><field name="VAR">tempCode</field>
                            ! <value name="VALUE"></value>
                            ! <next><block id="T/]?rq:p![ebfuT~k+i/" type="procedures_callnoreturn"><mutation name="chkVersuche"></mutation></block></next></block></next></block></next></block></next></block></statement>
                            ! <value name="IF1"><block id="lDJ@;/jzBi=HTRV]yYn," type="logic_compare"><field name="OP">EQ</field>
                            ! <value name="A"><block id="v]-iY2]3a;Ir}hU9sM" type="variables_get"><field name="VAR">tempCode</field></block></value>
                            ! <value name="B"><block id="FXw/|._t2rtHCxgNR}N{" type="variables_get"><field name="VAR">CodeAnwesend</field></block></value></block></value>
                            ! <statement name="DO1"><block id="l(HPe4p~ikj;pvhZJME," type="comment"><field name="COMMENT">Eingabe korrekt</field>
                            ! <next><block id="U;M412@-[mW58w:2/pDZ" type="debug"><field name="Severity">log</field>
                            ! <value name="TEXT"><shadow id="/6PKtIv;_asj~zH1YFWm" type="text"><field name="TEXT">*Abwesend aktivieren</field></shadow></value>
                            ! <next><block id="JsF#tPrlP((e*D(PKz;" type="variables_set"><field name="VAR">AnzahlVersuche</field> ! <value name="VALUE"><block id="_#wsFg(JuzNqSyCO63UI" type="math_number"><field name="NUM">0</field></block></value></block></next></block></next></block></statement> ! <value name="IF2"><block id="2vFBpg|}LmWTUqhvSPq" type="logic_compare"><field name="OP">EQ</field>
                            ! <value name="A"><block id="h{5A9tIJ[J}[xMy_7AAS" type="variables_get"><field name="VAR">tempCode</field></block></value>
                            ! <value name="B"><block id="P@212xQ;qQPEGyj%ZrM" type="variables_get"><field name="VAR">CodeAbwesend</field></block></value></block></value>
                            ! <statement name="DO2"><block id="I#o7zi#/?,2ybu:rbslY" type="comment"><field name="COMMENT">Eingabe korrekt</field>
                            ! <next><block id="gbMt
                            _LDG5GlZ=~5q;Cp" type="debug"><field name="Severity">log</field>
                            ! <value name="TEXT"><shadow id="ZGUOVYnw5W!20VGJXQ};" type="text"><field name="TEXT">*Anwesend aktivieren</field></shadow></value>
                            ! <next><block id="hK5#^tb~)E9Bgr
                            GFnxt" type="variables_set"><field name="VAR">AnzahlVersuche</field>
                            ! <value name="VALUE"><block id="kZ^Vqv6TF3HNE3Pral(2" type="math_number"><field name="NUM">0</field></block></value></block></next></block></next></block></statement>
                            ! <next><block id=")]FG}!jqa@!^@C404zD" type="timeouts_settimeout"><field name="NAME">timeout</field>
                            ! <field name="DELAY">5000</field>
                            ! <field name="UNIT">ms</field>
                            ! <statement name="STATEMENT"><block id="@87rub
                            L(JD2dLo|Aef" type="comment"><field name="COMMENT">Wenn in 5 Sek. keine weitere Eingabe erfolgt</field> ! <next><block id="/6Z(,/]_}ZhyadfHIgZ5" type="comment"><field name="COMMENT">dann Eingabe löschen und Versuche hochzählen</field> ! <next><block id="a3yX(4)M(27nSsHd.d-_" type="variables_set"><field name="VAR">tempCode</field> ! <value name="VALUE"></value> ! <next><block id="Uqe6b9wNj]Sp(Zb#o#X" type="procedures_callnoreturn"><mutation name="chkVersuche"></mutation></block></next></block></next></block></next></block></statement></block></next></block></next></block></next></block></statement></block>
                            ! <block id="c,ULx]X]~F-z^(
                            +{6vr" type="procedures_defnoreturn" y="1612" x="-87"><field name="NAME">chkVersuche</field>
                            ! <comment w="160" h="80" pinned="false">Fehlerhafte Eingaben zählen und Eingabe sperren wenn maxVersuche erreicht.</comment>
                            ! <statement name="STACK"><block id="+bbjB}N7U3vkk:@%?[V" type="math_change"><field name="VAR">AnzahlVersuche</field> ! <value name="DELTA"><shadow id="P!Tq!OVi/*(ehXZb]uC8" type="math_number"><field name="NUM">1</field></shadow></value> ! <next><block id="V6AzqIh:%+F@oh[M-IQ{" type="controls_if"><value name="IF0"><block id="!CYyilZ1svbcZ]Yf=BXd" type="logic_compare"><field name="OP">EQ</field> ! <value name="A"><block id="@Zmti,3QUsDg5gTF6tjC" type="variables_get"><field name="VAR">AnzahlVersuche</field></block></value> ! <value name="B"><block id="x=cs)@yt;A6[ua*T5FE|" type="variables_get"><field name="VAR">maxVersuche</field></block></value></block></value> ! <statement name="DO0"><block id="[d~Z|qEH+C4%5%A*xBTT" type="debug"><field name="Severity">log</field> ! <value name="TEXT"><shadow id="v.9ViGY:H4?EbA+fzjKV" type="text"><field name="TEXT">*****Eingabe gesperrt*****</field></shadow></value> ! <next><block id="(l|4)g2/(/@5-swvVF@2" type="timeouts_settimeout"><field name="NAME">sperren</field> ! <field name="DELAY">10000</field> ! <field name="UNIT">ms</field> ! <statement name="STATEMENT"><block id="U22mj9gD,9P)FU@4%{K~" type="comment"><field name="COMMENT">Nach 10 Sek. wieder frei</field> ! <next><block id="d)*rJF_51+C|Z3NMW9N+" type="variables_set"><field name="VAR">AnzahlVersuche</field> ! <value name="VALUE"><block id="^)c6!p[y)V0zk(9oMl16" type="math_number"><field name="NUM">0</field></block></value> ! <next><block id="SOZMoZ)Os7:]]y=T3yE" type="debug"><field name="Severity">log</field>
                            ! <value name="TEXT"><shadow id="5.ubt?0E+m)aiIY`J``U" type="text"><field name="TEXT">Eingabe entsperrt</field></shadow></value></block></next></block></next></block></statement></block></next></block></statement></block></next></block></statement></block></xml>
                            Die Daten punkte habe ich auch drin.

                            ! <xml 1999/xmlns="<URL url=" http:/www.w3.org/xhtml"="">http://www.w3.org/1999/xhtml">
                            ! <block id="k45s-D}hiCCfW)QXQ13!" type="create" y="37" x="-312"><field name="NAME">Pincode_0</field>
                            ! <statement name="STATEMENT"><block id="GzGNlOW@(Fd*)A1PQwP+" type="create"><field name="NAME">Pincode_1</field>
                            ! <statement name="STATEMENT"><block id="{KMqqs^U6+Bqefj-e)_H" type="create"><field name="NAME">Pincode_2</field>
                            ! <statement name="STATEMENT"><block id="Bh|7!TU)qCE)NLUQcUox" type="create"><field name="NAME">Pincode_3</field>
                            ! <statement name="STATEMENT"><block id="BEQkl{Dy)uxW;O)Z1eU}" type="create"><field name="NAME">Pincode_4</field>
                            ! <statement name="STATEMENT"><block id="-8S]ZFn8xy]AIG=ypi?V" type="create"><field name="NAME">Pincode_5</field>
                            ! <statement name="STATEMENT"><block id="{e%@W;N!WN6)FFuzjGt%" type="create"><field name="NAME">Pincode_6</field>
                            ! <statement name="STATEMENT"><block id="_H4%;yPLLJgS[UV9a0+s" type="create"><field name="NAME">Pincode_7</field>
                            ! <statement name="STATEMENT"><block id="V5p68}x+,Ch!)qIu?ZlA" type="create"><field name="NAME">Pincode_8</field>
                            ! <statement name="STATEMENT"><block id="e9Ue+P2Wa@=C|FOhYEX4" type="create"><field name="NAME">Pincode_9</field></block></statement></block></statement></block></statement></block></statement></block></statement></block></statement></block></statement></block></statement></block></statement></block></xml>
                            Habe auch die Views schon angepasst.

                            Wenn es an der Tür klingelt wird das Kamera VIEW geöffnet (siehe Bild)

                            Danach möchte ich auf die Tür drücken….

                            dann soll sich das Widget mit dem Nummer Pat öffnen.... (siehe Bild)

                            nach Pin eingabe soll die Tür dann aufgehen.

                            Ich glaube für einen Anfänger zu viel des Guten dadurch hoffe das du mir helfen kannst.
                            4668_k640_unbenannt11.jpg
                            4668_unbenannt12.png

                            Max

                            ioBroker auf einem NUC ,16GB RAM, 120GB SSD) mit Proxmox
                            Cloud Pro, iot, Alexa, Sonos, sonoff, Fronius, Harmony, Doorbird, Shelly, Hue, Loxone, Mihome, …

                            1 Antwort Letzte Antwort
                            0
                            • rantanplanR Offline
                              rantanplanR Offline
                              rantanplan
                              schrieb am zuletzt editiert von
                              #19

                              Das sieht sehr gut aus!

                              In dem Beispiel gibt es zwei lokale Variablen.

                              "CodeAbwesend" und "CodeAnwesend"

                              Die waren dafür gedacht eine "Alarmanlage" scharf/unscharf zu schalten.

                              In der Funktion "Initialisierung" wird der Code vorgegeben, den Du jederzeit ändern kannst.

                              Aber bleiben wir erstmal bei der Vorgabe.

                              Deine Eingabe über VIS wird in der Funktion "getCode" geprüft.

                              Um jetzt keine neue lokale Variable anzulegen, nehmen wir die "CodeAbwesend".

                              Also die Eingabenfolge "321"

                              Wenn also 321 eingegeben wird soll sich Deine Tür öffnen.

                              Dafür schaust Du in die Funktion "getCode".

                              Dort setzt Du einen Baustein "steuere …." mit dem Datenpunkt Deines Türöffners.
                              147_beispiel.png

                              Ob das Blockly die Eingaben richtig nimmt kannst Du im LOG Reiter überprüfen.

                              Dafür sind die "Debug-Bausteine"

                              Wobei ich gerade sehen, dass ich die Ausgabe für "Anwesend" und "Abwesend" vertauscht habe. :oops:

                              Hilft Dir das weiter?

                              Grüße

                              Rantanplan

                              CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                              1 Antwort Letzte Antwort
                              0
                              • SmarthomeMFS Offline
                                SmarthomeMFS Offline
                                SmarthomeMF
                                schrieb am zuletzt editiert von
                                #20

                                Hallo

                                Habe das genau mal so gemacht wie beschrieben.

                                Aber wenn ich das Script starte kommt in Log ein error!

                                ! <xml 1999/xmlns="<URL url=" http:/www.w3.org/xhtml"="">http://www.w3.org/1999/xhtml">
                                ! <block id=".M/Q%KRmxbXWc2P9~MO" type="comment" x="-87" y="162"><field name="COMMENT">Einmalige Initialisierung bei Programmstart</field>
                                ! <next><block id="tjP%K@i{#i,h1Dyax-gY" type="procedures_callnoreturn"><mutation name="Initialisierung"></mutation>
                                ! <next><block id="?bXfiCYH0h;wOsNVLQT1" type="comment"><field name="COMMENT">Hier beginnt das Triggern</field>
                                ! <next><block id="Ox)}[Fr#C.VldaJS5L^k" type="comment"><field name="COMMENT">Beliebig erweiterbar</field>
                                ! <next><block id="7r*}c).]GtkEH)FR.:s." type="on_ext"><mutation items="3"></mutation>
                                ! <field name="CONDITION">true</field>
                                ! <value name="OID0"><shadow id="qW*M98DOf90FmZ?BT;~" type="field_oid"><field name="oid">javascript.0.Pincode_1</field></shadow></value> ! <value name="OID1"><shadow id="db.g;R[uTi-M|khCqfC" type="field_oid"><field name="oid">javascript.0.Pincode_2</field></shadow></value>
                                ! <value name="OID2"><shadow id="xXI+u{uUm0V4mOYK!n]j" type="field_oid"><field name="oid">javascript.0.Pincode_3</field></shadow></value>
                                ! <statement name="STATEMENT"><block id="Yg;,[I7Ex=?rcz#y?kj%" type="comment"><field name="COMMENT">Timer für zu lange Eingabepause stoppen</field>
                                ! <next><block id="#p8Sw}HSQK?cYiU:YHiK" type="timeouts_cleartimeout"><field name="NAME">timeout</field>
                                ! <next><block id="?pNSp?WhqKPHT/B_pJo:" type="comment"><field name="COMMENT">Nur ausführen wenn Eingabe nicht geblockt</field>
                                ! <next><block id="dn-O]h-kTj)k:Hx)Xkz" type="controls_if"><value name="IF0"><block id="aahnsRO!(k,8K;ftiGcN" type="logic_compare"><field name="OP">NEQ</field> ! <value name="A"><block id="~1[*:7k/oGI/ZT1ie-F5" type="variables_get"><field name="VAR">AnzahlVersuche</field></block></value> ! <value name="B"><block id="9EtqToNOpvma_:nUc:I3" type="variables_get"><field name="VAR">maxVersuche</field></block></value></block></value> ! <statement name="DO0"><block id="53won3Q~KRaZW)3F6
                                [" type="controls_if"><mutation elseif="2"></mutation>
                                ! <value name="IF0"><block id="=Vuh)csdD]A:f+;xaY0c" type="logic_compare"><field name="OP">EQ</field>
                                ! <value name="A"><block id="73#D/?hW=+je)pXEOH]" type="get_value"><field name="ATTR">val</field>
                                ! <field name="OID">javascript.0.Pincode_1</field></block></value>
                                ! <value name="B"><block id="-nBqftYopC%u~4,0#S:J" type="logic_boolean"><field name="BOOL">TRUE</field></block></value></block></value>
                                ! <statement name="DO0"><block id="iDWo7Ppf@/PIDOC3,nQg" type="comment"><field name="COMMENT">Die Eingabe an Funktion übergeben</field>
                                ! <next><block id="9ND8^RRRst6JTr1aF:P" type="procedures_callnoreturn" inline="true"><mutation name="getCode"><arg name="TastenWert"></arg></mutation>
                                ! <value name="ARG0"><block id=";{hUhJ|FuWgRnG+Vx/" type="text"><field name="TEXT">1</field></block></value></block></next></block></statement>
                                ! <value name="IF1"><block id="7OCP}UF3YaQ|gs=RDFy" type="logic_compare"><field name="OP">EQ</field> ! <value name="A"><block id="NHZ%eeYxhwr?#M_(BhP/" type="get_value"><field name="ATTR">val</field> ! <field name="OID">javascript.0.Pincode_2</field></block></value> ! <value name="B"><block id="*2NWW1B~r6Z2E}P%j2wg" type="logic_boolean"><field name="BOOL">TRUE</field></block></value></block></value> ! <statement name="DO1"><block id="TUEyn}|x(z36g?T63y*_" type="procedures_callnoreturn" inline="true"><mutation name="getCode"><arg name="TastenWert"></arg></mutation> ! <value name="ARG0"><block id="]Rf6@?xK
                                gplLyQ-bQP" type="text"><field name="TEXT">2</field></block></value></block></statement>
                                ! <value name="IF2"><block id="8oUmv2o%~@wjdNn_2bB}" type="logic_compare"><field name="OP">EQ</field>
                                ! <value name="A"><block id="D5^##Kxmy;bo1B=Nj_?" type="get_value"><field name="ATTR">val</field> ! <field name="OID">javascript.0.Pincode_3</field></block></value> ! <value name="B"><block id="=+FvloDpnlxoQhQt]biY" type="logic_boolean"><field name="BOOL">TRUE</field></block></value></block></value> ! <statement name="DO2"><block id="?}Q)OGY}05Ms(#R@Kycz" type="procedures_callnoreturn" inline="true"><mutation name="getCode"><arg name="TastenWert"></arg></mutation> ! <value name="ARG0"><block id=";dy%FKdEuIq;eorrIp|h" type="text"><field name="TEXT">3</field></block></value></block></statement></block></statement></block></next></block></next></block></next></block></statement></block></next></block></next></block></next></block></next></block> ! <block id="O)q*?M8Hfa5)/}O6ZsZ7" type="procedures_defnoreturn" x="563" y="163"><field name="NAME">Initialisierung</field> ! <comment pinned="false" h="80" w="160">Bei Programmstart Werte vorgeben.</comment> ! <statement name="STACK"><block id="?L69j3%sRmc}([5G2X60" type="variables_set"><field name="VAR">AnzahlVersuche</field> ! <value name="VALUE"><block id="t]h/PX7feEalP-;RDq
                                " type="math_number"><field name="NUM">0</field></block></value>
                                ! <next><block id="wMeGQPHU)@|vwaJP%iqr" type="variables_set"><field name="VAR">tempCode</field>
                                ! <value name="VALUE"></value>
                                ! <next><block id="UZqDvMtW0LHk96L^T8z" type="comment"><field name="COMMENT">Maximale Fehlversuche festlegen</field>
                                ! <next><block id="e663[k*hSCd%o
                                ?sd(XA" type="variables_set"><field name="VAR">maxVersuche</field>
                                ! <value name="VALUE"><block id="{OjuYXvX(;:=T.oag~a#" type="math_number"><field name="NUM">3</field></block></value>
                                ! <next><block id="K(:;y-gihBx_:{%kJ~Oo" type="comment"><field name="COMMENT">Länge der Codes festlegen</field>
                                ! <next><block id="BGt@+4h!d)Kco3]{,)V" type="variables_set"><field name="VAR">maxCodeLaenge</field> ! <value name="VALUE"><block id="|Wm^i:C~o0Bp7;,-yy" type="math_number"><field name="NUM">3</field></block></value> ! <next><block id="ZgOwwPRCnNLM~@tR?DhB" type="comment"><field name="COMMENT">Liste der Codes</field> ! <next><block id="Kp%9#vKhE4,}vS;@yW_0" type="comment"><field name="COMMENT">Beliebig erweiterbar. Auf Länge achten!</field> ! <next><block id=";~}[HtK6:wa8W/1,]j2a" type="variables_set"><field name="VAR">CodeAbwesend</field> ! <value name="VALUE"><block id="/%k9:KVHUC2RVgH.:^v5" type="text"><field name="TEXT">321</field></block></value> ! <next><block id="~g%5m:PVJO18)ZuFgT%Y" type="variables_set"><field name="VAR">CodeAnwesend</field> ! <value name="VALUE"><block id=";ut1,j-D,_I[Y-ibyD-" type="text"><field name="TEXT">123</field></block></value></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></statement></block>
                                ! <block id="t@lDFN#V:FHO31zeMUSV" type="procedures_defnoreturn" x="-87" y="838"><mutation><arg name="TastenWert"></arg></mutation>
                                ! <field name="NAME">getCode</field>
                                ! <comment pinned="false" h="80" w="160">Code pruefen</comment>
                                ! <statement name="STACK"><block id="@0sNv=W?MJzk622W]Q4" type="text_append"><field name="VAR">tempCode</field> ! <value name="TEXT"><shadow id="6q^nqw|R(+L0{n_l/Gc4" type="text"></shadow> ! <block id="LWMvwI0w|bcPvg-n5gGg" type="variables_get"><field name="VAR">TastenWert</field></block></value> ! <next><block id="vjr3FKb9Vi*y+77wJTx," type="debug"><field name="Severity">log</field> ! <value name="TEXT"><shadow id=".0O)AP~8_Z_^cA%~Y=0o" type="text"></shadow> ! <block id=")*fGp8U0U/F=Wcs;KY/|" type="text_join"><mutation items="2"></mutation> ! <value name="ADD0"><block id=").fVwr0of^0wi[*+UipI" type="text"><field name="TEXT">*****Eingabe -></field></block></value> ! <value name="ADD1"><block id="Cw9-Bo9Tle36/K]UpAeB" type="variables_get"><field name="VAR">tempCode</field></block></value></block></value> ! <next><block id="n5A{||l/F/:ozsHSOg4^" type="controls_if"><mutation elseif="2"></mutation> ! <value name="IF0"><block id="T=]omffKe6S+(UpU:6" type="logic_compare"><field name="OP">GT</field>
                                ! <value name="A"><block id=";Xk,nZX;Io@ax2OT=s73" type="text_length"><value name="VALUE"><shadow id="RGYf*(-7S#_3L-Ww7];" type="text"><field name="TEXT">abc</field></shadow> ! <block id="gapi+DOc_=Fi})6b*l7}" type="variables_get"><field name="VAR">tempCode</field></block></value></block></value> ! <value name="B"><block id="j9RTTC,C]+Q)EY2SD}i" type="variables_get"><field name="VAR">maxCodeLaenge</field></block></value></block></value>
                                ! <statement name="DO0"><block id="|Tgo8I~X04G[v8TB8v3" type="comment"><field name="COMMENT">Zuviele Eingaben</field> ! <next><block id="+lM8)EE*fCon1X0.Dw=" type="comment"><field name="COMMENT">Eingabe löschen und Versuche hochzählen</field>
                                ! <next><block id="sRw2Xy,4}LO3T4q.5yM" type="debug"><field name="Severity">log</field>
                                ! <value name="TEXT"><shadow id="+cYZRRJa1z=6hGhTLdam" type="text"><field name="TEXT">Zuviele Zeichen</field></shadow></value>
                                ! <next><block id="%D8buHC|kCUU1/KVJB[2" type="variables_set"><field name="VAR">tempCode</field>
                                ! <value name="VALUE"></value>
                                ! <next><block id="T/]?rq:p![ebfuT~k+i/" type="procedures_callnoreturn"><mutation name="chkVersuche"></mutation></block></next></block></next></block></next></block></next></block></statement>
                                ! <value name="IF1"><block id="lDJ@;/jzBi=HTRV]yYn," type="logic_compare"><field name="OP">EQ</field>
                                ! <value name="A"><block id="v]-iY2]3a;Ir}hU9sM" type="variables_get"><field name="VAR">tempCode</field></block></value>
                                ! <value name="B"><block id="FXw/|._t2rtHCxgNR}N{" type="variables_get"><field name="VAR">CodeAnwesend</field></block></value></block></value>
                                ! <statement name="DO1"><block id="l(HPe4p~ikj;pvhZJME," type="comment"><field name="COMMENT">Eingabe korrekt</field>
                                ! <next><block id="r36-dG%vP|-NxY(}BSJe" type="comment"><field name="COMMENT">zu Testzwecke eine Lampe</field>
                                ! <next><block id="w+5Ue0Hm9)4.e]{AO?{N" type="control"><mutation delay_input="false"></mutation>
                                ! <field name="OID">hue.0.Philips_hue.Hue_Deckenlampe_Büro_EG.on</field>
                                ! <field name="WITH_DELAY">FALSE</field>
                                ! <next><block id="U;M412@-[mW58w:2/pDZ" type="debug"><field name="Severity">log</field>
                                ! <value name="TEXT"><shadow id="/6PKtIv;_asj~zH1YFWm" type="text"><field name="TEXT">*Anwesen aktivieren</field></shadow></value>
                                ! <next><block id="JsF#tPrlP((e*D(PKz;" type="variables_set"><field name="VAR">AnzahlVersuche</field> ! <value name="VALUE"><block id="_#wsFg(JuzNqSyCO63UI" type="math_number"><field name="NUM">0</field></block></value></block></next></block></next></block></next></block></next></block></statement> ! <value name="IF2"><block id="2vFBpg|}LmWTUqhvSPq" type="logic_compare"><field name="OP">EQ</field>
                                ! <value name="A"><block id="h{5A9tIJ[J}[xMy_7AAS" type="variables_get"><field name="VAR">tempCode</field></block></value>
                                ! <value name="B"><block id="P@212xQ;qQPEGyj%ZrM" type="variables_get"><field name="VAR">CodeAbwesend</field></block></value></block></value>
                                ! <statement name="DO2"><block id="I#o7zi#/?,2ybu:rbslY" type="comment"><field name="COMMENT">Eingabe korrekt</field>
                                ! <next><block id="gbMt
                                _LDG5GlZ=~5q;Cp" type="debug"><field name="Severity">log</field>
                                ! <value name="TEXT"><shadow id="ZGUOVYnw5W!20VGJXQ};" type="text"><field name="TEXT">*Abwesend aktivieren</field></shadow></value>
                                ! <next><block id="hK5#^tb~)E9Bgr
                                GFnxt" type="variables_set"><field name="VAR">AnzahlVersuche</field>
                                ! <value name="VALUE"><block id="kZ^Vqv6TF3HNE3Pral(2" type="math_number"><field name="NUM">0</field></block></value></block></next></block></next></block></statement>
                                ! <next><block id=")]FG}!jqa@!^@C404zD" type="timeouts_settimeout"><field name="NAME">timeout</field>
                                ! <field name="DELAY">5000</field>
                                ! <field name="UNIT">ms</field>
                                ! <statement name="STATEMENT"><block id="@87rub
                                L(JD2dLo|Aef" type="comment"><field name="COMMENT">Wenn in 5 Sek. keine weitere Eingabe erfolgt</field> ! <next><block id="/6Z(,/]_}ZhyadfHIgZ5" type="comment"><field name="COMMENT">dann Eingabe löschen und Versuche hochzählen</field> ! <next><block id="a3yX(4)M(27nSsHd.d-_" type="variables_set"><field name="VAR">tempCode</field> ! <value name="VALUE"></value> ! <next><block id="Uqe6b9wNj]Sp(Zb#o#X" type="procedures_callnoreturn"><mutation name="chkVersuche"></mutation></block></next></block></next></block></next></block></statement></block></next></block></next></block></next></block></statement></block>
                                ! <block id="c,ULx]X]~F-z^(
                                +{6vr" type="procedures_defnoreturn" x="-62" y="1763"><field name="NAME">chkVersuche</field>
                                ! <comment pinned="false" h="80" w="160">Fehlerhafte Eingaben zählen und Eingabe sperren wenn maxVersuche erreicht.</comment>
                                ! <statement name="STACK"><block id="+bbjB}N7U3vkk:@%?[V" type="math_change"><field name="VAR">AnzahlVersuche</field> ! <value name="DELTA"><shadow id="P!Tq!OVi/*(ehXZb]uC8" type="math_number"><field name="NUM">1</field></shadow></value> ! <next><block id="V6AzqIh:%+F@oh[M-IQ{" type="controls_if"><value name="IF0"><block id="!CYyilZ1svbcZ]Yf=BXd" type="logic_compare"><field name="OP">EQ</field> ! <value name="A"><block id="@Zmti,3QUsDg5gTF6tjC" type="variables_get"><field name="VAR">AnzahlVersuche</field></block></value> ! <value name="B"><block id="x=cs)@yt;A6[ua*T5FE|" type="variables_get"><field name="VAR">maxVersuche</field></block></value></block></value> ! <statement name="DO0"><block id="[d~Z|qEH+C4%5%A*xBTT" type="debug"><field name="Severity">log</field> ! <value name="TEXT"><shadow id="v.9ViGY:H4?EbA+fzjKV" type="text"><field name="TEXT">*****Eingabe gesperrt*****</field></shadow></value> ! <next><block id="(l|4)g2/(/@5-swvVF@2" type="timeouts_settimeout"><field name="NAME">sperren</field> ! <field name="DELAY">10000</field> ! <field name="UNIT">ms</field> ! <statement name="STATEMENT"><block id="U22mj9gD,9P)FU@4%{K~" type="comment"><field name="COMMENT">Nach 10 Sek. wieder frei</field> ! <next><block id="d)*rJF_51+C|Z3NMW9N+" type="variables_set"><field name="VAR">AnzahlVersuche</field> ! <value name="VALUE"><block id="^)c6!p[y)V0zk(9oMl16" type="math_number"><field name="NUM">0</field></block></value> ! <next><block id="SOZMoZ)Os7:]]y=T3yE" type="debug"><field name="Severity">log</field>
                                ! <value name="TEXT"><shadow id="5.ubt?0E+m)aiIY`J``U" type="text"><field name="TEXT">Eingabe entsperrt</field></shadow></value></block></next></block></next></block></statement></block></next></block></statement></block></next></block></statement></block></xml>
                                was habe ich übersehen?

                                Habe die Datenpunkte alle angelegt und mit den Tastern eingebunden….

                                eine Lampe zum Ansteuern habe ich im Blockly auch hinzugefügt...
                                4668_unbenannt13.png
                                4668_unbenannt14.png

                                Max

                                ioBroker auf einem NUC ,16GB RAM, 120GB SSD) mit Proxmox
                                Cloud Pro, iot, Alexa, Sonos, sonoff, Fronius, Harmony, Doorbird, Shelly, Hue, Loxone, Mihome, …

                                1 Antwort Letzte Antwort
                                0
                                • rantanplanR Offline
                                  rantanplanR Offline
                                  rantanplan
                                  schrieb am zuletzt editiert von
                                  #21

                                  Moin,

                                  Mein Fehler. Hatte ich versäumt zu erwähnen.

                                  In dem Steuere Baustein muss noch der "Wert" rein mit dem Deine Tür geöffnet wird.

                                  Ist das "wahr/true"? Findest Du unter "Logik"

                                  Ist das 0/1 als Zahl? Findest Du unter Mathematik.

                                  Ist das irgendein Text? Findest Du unter "Text"

                                  Grüße

                                  Rantanplan

                                  CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                  1 Antwort Letzte Antwort
                                  0
                                  • SmarthomeMFS Offline
                                    SmarthomeMFS Offline
                                    SmarthomeMF
                                    schrieb am zuletzt editiert von
                                    #22

                                    @rantanplan:

                                    Mein Fehler. Hatte ich versäumt zu erwähnen. `
                                    kein Problem….

                                    habe ich gemacht

                                    wahr bei Anwesend und unwahr bei Abwesend!

                                    Im Log kommt kein Fehler mehr.....

                                    aber es tut sich auch nicht mehr weiter wenn ich die Taster 123 oder 321 betätige.

                                    irgendwo habe ich noch gemurkst!!
                                    4668_unbenannt17.png
                                    4668_unbenannt16.png
                                    4668_unbenannt15.png

                                    Max

                                    ioBroker auf einem NUC ,16GB RAM, 120GB SSD) mit Proxmox
                                    Cloud Pro, iot, Alexa, Sonos, sonoff, Fronius, Harmony, Doorbird, Shelly, Hue, Loxone, Mihome, …

                                    1 Antwort Letzte Antwort
                                    0
                                    • rantanplanR Offline
                                      rantanplanR Offline
                                      rantanplan
                                      schrieb am zuletzt editiert von
                                      #23

                                      Irgendwo habe ich gelesen, dass die HUE über den Datenpunkt "Level" gesteuert werden.

                                      '100' = an '0'=aus

                                      Kannst Du auch direkt unter "Objekte" testen und dort einen Wert eingeben.

                                      Rantanplan

                                      CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                      1 Antwort Letzte Antwort
                                      0
                                      • SmarthomeMFS Offline
                                        SmarthomeMFS Offline
                                        SmarthomeMF
                                        schrieb am zuletzt editiert von
                                        #24

                                        @rantanplan:

                                        Irgendwo habe ich gelesen, dass die HUE über den Datenpunkt "Level" gesteuert werden.'100' = an '0'=aus `
                                        nein der Datenpunkt Level ist der Dimmer….

                                        und das on ist der Datenpunkt für an und aus...

                                        habe ich bei den dem andern View auch so eingestellt.

                                        Nun habe ich eine einfache Lampe genommen die sicher nur ein Datenpunkt hat.

                                        Aber das selbe spiel ...es tut sich nichts....

                                        Da habe ich noch irgendwo ein murks drin?

                                        ich weiß nicht wo!

                                        Max

                                        ioBroker auf einem NUC ,16GB RAM, 120GB SSD) mit Proxmox
                                        Cloud Pro, iot, Alexa, Sonos, sonoff, Fronius, Harmony, Doorbird, Shelly, Hue, Loxone, Mihome, …

                                        1 Antwort Letzte Antwort
                                        0
                                        • SmarthomeMFS Offline
                                          SmarthomeMFS Offline
                                          SmarthomeMF
                                          schrieb am zuletzt editiert von
                                          #25

                                          habe gerade noch gesehen das die Java Datenpunkte rot sind!

                                          ist das so richtig?
                                          4668_unbenannt21.png

                                          Max

                                          ioBroker auf einem NUC ,16GB RAM, 120GB SSD) mit Proxmox
                                          Cloud Pro, iot, Alexa, Sonos, sonoff, Fronius, Harmony, Doorbird, Shelly, Hue, Loxone, Mihome, …

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          341

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe