Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly - setStateDelayed mit Fehler in der Umsetzung ?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Blockly - setStateDelayed mit Fehler in der Umsetzung ?

    This topic has been deleted. Only users with topic management privileges can see it.
    • Dutchman
      Dutchman Developer Most Active Administrators last edited by

      @paul53:

      @Dutchman:

      in deinem falls unter debug stehen keine abfrage, falls = value ? `
      Die Abfrage ist korrekt und entspricht

      if(obj.state.val) { // Bewegung erkannt
      ```` `  
      

      ok verstanden danke Paul

      Dan ist der Fehler hier aber das der time nicht resettet wird wen "an" erkannt wurden.

      Anstatt mit Verzögerung müsste man in blockly dan mit einen richtigen timeout / stop time out block arbeiten

      1 Reply Last reply Reply Quote 0
      • rantanplan
        rantanplan last edited by

        @BigWumpus:

        Aktualisiere - die Verzögerung funktioniert, das löschen nicht (immer false).

        Steuere - alles funktioniert. `
        Ich habe keine Ahnung was Du damit sagen willst.

        Kann es sein das Dein BM immer nur "true/wahr" liefert?

        Grüße

        1 Reply Last reply Reply Quote 0
        • BigWumpus
          BigWumpus last edited by

          Buah…

          ich wundere mich hier schon über die versch. Programmier-Exzesse gar nicht mehr ...

          mein BWM meldet "true" bei Bewegung und nach 60 Sekunden wieder "false", wenn Ruhe ist:

          javascript.0	2018-04-15 20:27:12.787	info	script.js.meins.BaZi-Bewegung_folgen(1): BaZi-Bewegung: false
          javascript.0	2018-04-15 20:26:12.854	info	script.js.meins.BaZi-Lampe_schalten: BaZi-Lampe ein
          javascript.0	2018-04-15 20:26:12.736	info	script.js.meins.BaZi-Bewegung_folgen(1): BaZi-Bewegung: true
          

          Die Timer-Konstruktion habe ich versch. ausprobiert, Alles funktionierte nicht.

          Jetzt mit "Steuere" statt "Aktualisiere" läuft es. Da ist ein Fehler im Blockly !

          @Dutchman:

          Die Variable "value" wird im Kopf des Triggers mit dem Wert des abgefragten Datenpunktes gefüllt und kann dann verwendet werden.

          @Dutchman:

          "If true" ist ungeführ so viel wert wie "if true=true".

          @Dutchman:

          Über das Löschen des Timers bei BWM=true können wir streiten, da könnte es ein Problem bei ca. 9 Minuten Stillhalten geben…

          Der Fehler im Blockly bleibt ja, egal was ich schreibe, wenn das "true" für das Setzen des Timers nicht an Javascript übergeben wird.

          1 Reply Last reply Reply Quote 0
          • BigWumpus
            BigWumpus last edited by

            @Dutchman:

            • genau das scenario posten was du erreichen möchtest.

            • dein blockly exportieren und hier posten (nicht den generierten java code sonder den blocky export !) `

            Das Szenario steht oben im Thread.

            Den Blockly könnte ich auch schicken, würde aber nichts bringen, weil man den Fehler nur erkennt, wenn man einfach eine "Aktualisiere"-Anweisung mit Verzögerung und "löschen falls läuft" in Blockly eingibt und auf Code-Anzeige umschaltet. (das hatte ich darum gepostet).

            Dann nmmt man in der Blockly-Anzeige den Haken bei "löschen wenn läuft" raus und schaltet wieder auf die Code-Anzeige um. Das gleiche Ergebnis bei versch. Quelltext - ist schon merkwürdig.

            Und keine Angst, der Script läuft prima mit einem kleinen XIAOMI-Bewegungsmelder hier. Ich hätte noch 2 Philips Hue-BWM anzubieten, die fliegen nämlich raus.

            1 Reply Last reply Reply Quote 0
            • rantanplan
              rantanplan last edited by

              @BigWumpus:

              Buah…

              ich wundere mich hier schon über die versch. Programmier-Exzesse gar nicht mehr ... `
              OK. Ich bin hier raus.

              1 Reply Last reply Reply Quote 0
              • Dutchman
                Dutchman Developer Most Active Administrators last edited by

                Ok…

                Fragen :

                • der Bewegungsmelder gibt einen Wert true (wen Bewegung) und false (wen keine Bewegung) ?

                • diese Daten kommen auch Life rein ohne Verzögerung ?

                • wen Bewegung Dan Licht an ?

                • wen keine Bewegung mehr nach 10 min aus ?

                Hab ich das so richtig verstanden ?!?


                Send from mobile device

                Das schöne ios hat Auto Korrektur zum k****

                Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community

                1 Reply Last reply Reply Quote 0
                • BigWumpus
                  BigWumpus last edited by

                  @Dutchman:

                  • der Bewegungsmelder gibt einen Wert true (wen Bewegung) und false (wen keine Bewegung) ?

                  • diese Daten kommen auch Life rein ohne Verzögerung ?

                  • wen Bewegung Dan Licht an ?

                  • wen keine Bewegung mehr nach 10 min aus ? `

                  Ja (Timeout 60 Sekunden)

                  Ja

                  Ja

                  Ja (jetzt)

                  1 Reply Last reply Reply Quote 0
                  • Dutchman
                    Dutchman Developer Most Active Administrators last edited by

                    Das scenarion klinkt nicht kompliziert und ich würde es auf diese weise lösen.

                    Hierin fragen ich den BMW ab auf Änderungen,

                    ist Bewegung wahr

                    • sollte die Lampe aus sein geht sie an und stopt eventuelle timer

                    • sollte die Lampe bereits an sein stoppt nur der time (um doppeltes schalten zu vermeiden

                    ist Bewegung unwahr

                    • aktiviere timer für 10 Minuten

                    • schalte nach Ablauf die Lampe aus

                    979_screen_shot_2018-04-15_at_22.08.24.png

                    blocky export:

                     <xml xmlns="http://www.w3.org/1999/xhtml"><block type="on" id="*?Q;v#g,}Q[X1V;Up{fp" x="-188" y="12"><field name="OID">javascript.2.BWM</field>
                        <field name="CONDITION">ne</field>
                    
                        <statement name="STATEMENT"><block type="controls_if" id="E!w;6q:m.x1q)rPRp*of"><mutation elseif="2"></mutation>
                            <value name="IF0"><block type="logic_operation" id="mp4EeT(Q++deK(RwU0DD" inline="false"><field name="OP">AND</field>
                                <value name="A"><block type="logic_compare" id="MUno8@nbg0a7JhWW~vKl"><field name="OP">EQ</field>
                                    <value name="A"><block type="get_value" id="_@f+8i`+Vr.|MhM}cZ?C"><field name="ATTR">val</field>
                                        <field name="OID">javascript.2.BWM</field></block></value> 
                                    <value name="B"><block type="logic_boolean" id="V=P|BryQwCL-N(dCkmo0"><field name="BOOL">TRUE</field></block></value></block></value> 
                                <value name="B"><block type="logic_compare" id="/YewW0C+po|9+dV4NViz"><field name="OP">EQ</field>
                                    <value name="A"><block type="get_value" id="SeOT|8nH7J?].z;uaqCR"><field name="ATTR">val</field>
                                        <field name="OID">javascript.2.LAMPE</field></block></value> 
                                    <value name="B"><block type="logic_boolean" id="rUp5NU#KC.hMl;5;@)e="><field name="BOOL">FALSE</field></block></value></block></value></block></value> 
                            <statement name="DO0"><block type="timeouts_cleartimeout" id="Uv4pkl%j=q.iF?C}CcgH"><field name="NAME">timeout</field>
                                <next><block type="control" id="x=RRVZLmnUU8cb]bMHaI"><mutation delay_input="false"></mutation>
                                    <field name="OID">javascript.2.LAMPE</field>
                                    <field name="WITH_DELAY">FALSE</field>
                                    <value name="VALUE"><block type="logic_boolean" id="i[`LOwIbi0zu.VY.*VdM"><field name="BOOL">TRUE</field></block></value></block></next></block></statement> 
                            <value name="IF1"><block type="logic_operation" id=",o-p]ifAXEA)8nGpc]~a" inline="false"><field name="OP">AND</field>
                                <value name="A"><block type="logic_compare" id="CoiXrUHg|GH7!,7KZK9V"><field name="OP">EQ</field>
                                    <value name="A"><block type="get_value" id="K.Y]V2XQZ4Yl4.fQe2B("><field name="ATTR">val</field>
                                        <field name="OID">javascript.2.BWM</field></block></value> 
                                    <value name="B"><block type="logic_boolean" id="20A1FNRX!m?_PaKsDX{P"><field name="BOOL">TRUE</field></block></value></block></value> 
                                <value name="B"><block type="logic_compare" id="WP@E:n:2Vv//n{n)K:Fa"><field name="OP">EQ</field>
                                    <value name="A"><block type="get_value" id="eN%-(/T*3^BsJ=ZUh^64"><field name="ATTR">val</field>
                                        <field name="OID">javascript.2.LAMPE</field></block></value> 
                                    <value name="B"><block type="logic_boolean" id="|(OxGxW[]_EdVe%Oj9Z8"><field name="BOOL">TRUE</field></block></value></block></value></block></value> 
                            <statement name="DO1"><block type="timeouts_cleartimeout" id="%`Vm_V8lA1B7@sy=5JmR"><field name="NAME">timeout</field></block></statement> 
                            <value name="IF2"><block type="logic_operation" id="*A%PX0#.v/_wK}#:w*bW" inline="false"><field name="OP">AND</field>
                                <value name="A"><block type="logic_compare" id="_/6@/O}u7j,__%#_?k(0"><field name="OP">EQ</field>
                                    <value name="A"><block type="get_value" id="0x4Wp?QlR^mSKqN%OTI("><field name="ATTR">val</field>
                                        <field name="OID">javascript.2.BWM</field></block></value> 
                                    <value name="B"><block type="logic_boolean" id="{NrFe@@PVeBUT@bLb)Jf"><field name="BOOL">FALSE</field></block></value></block></value> 
                                <value name="B"><block type="logic_compare" id="bz(zT+z-VKVy{Y,hXc;M"><field name="OP">EQ</field>
                                    <value name="A"><block type="get_value" id="_,sN(+*m1L{[DU;GknTH"><field name="ATTR">val</field>
                                        <field name="OID">javascript.2.LAMPE</field></block></value> 
                                    <value name="B"><block type="logic_boolean" id="j,5pa`k4D:dSp)4~aWIu"><field name="BOOL">TRUE</field></block></value></block></value></block></value> 
                            <statement name="DO2"><block type="timeouts_settimeout" id="J)PH}h)awJQsRU=3j(x*"><field name="NAME">timeout</field>
                                <field name="DELAY">10</field>
                                <field name="UNIT">min</field>
                                <statement name="STATEMENT"><block type="control" id="!UE9O,@qJU^9Dz`~M,))"><mutation delay_input="false"></mutation>
                                    <field name="OID">javascript.2.LAMPE</field>
                                    <field name="WITH_DELAY">FALSE</field>
                                    <value name="VALUE"><block type="logic_boolean" id="dkeuXbFXEikmQ(#*W.,{"><field name="BOOL">FALSE</field></block></value></block></statement></block></statement></block></statement></block></xml> 
                    
                    

                    im unterschied zu deiner ansehensweise setze ich bewusste timer ein und stoppe diese anstatt die Blöcke im Steuerblock

                    ~Dutch

                    1 Reply Last reply Reply Quote 0
                    • BigWumpus
                      BigWumpus last edited by

                      Ja prima !!!

                      Fakt ist aber, dass ich soviel Blockly programmieren kann, wie ich will, die Umsetzung in Javascript ist buggy!

                      Alle beschäftigen sich hier mit Blockly und den tollsten Scripts, niemand sieht den Fehler.

                      1 Reply Last reply Reply Quote 0
                      • AlCalzone
                        AlCalzone Developer last edited by

                        @BigWumpus:

                        Fakt ist aber, dass ich soviel Blockly programmieren kann, wie ich will, die Umsetzung in Javascript ist buggy!

                        Alle beschäftigen sich hier mit Blockly und den tollsten Scripts, niemand sieht den Fehler. `
                        Wo du Recht hast…

                        Hab mal ein Issue erstellt: https://github.com/ioBroker/ioBroker.ja ... issues/105

                        1 Reply Last reply Reply Quote 0
                        • rantanplan
                          rantanplan last edited by

                          @BigWumpus:

                          Ja prima !!!

                          Fakt ist aber, dass ich soviel Blockly programmieren kann, wie ich will, die Umsetzung in Javascript ist buggy!

                          Alle beschäftigen sich hier mit Blockly und den tollsten Scripts, niemand sieht den Fehler. `
                          Bin zwar schon raus…..Aber....welchen Fehler?

                          Bis jetzt sehe ich nur einen Fehler :roll:

                          Sorry, ist sonst nicht meine Art.

                          1 Reply Last reply Reply Quote 0
                          • Dutchman
                            Dutchman Developer Most Active Administrators last edited by

                            @BigWumpus:

                            Ja prima !!!

                            Fakt ist aber, dass ich soviel Blockly programmieren kann, wie ich will, die Umsetzung in Javascript ist buggy!

                            Alle beschäftigen sich hier mit Blockly und den tollsten Scripts, niemand sieht den Fehler. `

                            Bin dann wohl zu doof den Fehler zu sehen oder umgehen ihn halt auf meine Weise.

                            Bin dann auch raus

                            –-----------------------

                            Send from mobile device

                            Das schöne ios hat Auto Korrektur zum k****

                            Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community

                            1 Reply Last reply Reply Quote 0
                            • rantanplan
                              rantanplan last edited by

                              @AlCalzone:

                              Hab mal ein Issue erstellt: https://github.com/ioBroker/ioBroker.ja … issues/105 `
                              Das wird ja her immer interessanter :?

                              Ab welchem Status/Level kann man sich hier zeitlich "vormogeln".

                              Ich verliere hier immer mehr die Lust 😢

                              Grüße

                              1 Reply Last reply Reply Quote 0
                              • R
                                RappiRN Most Active last edited by

                                Dein Datenpunkt für die Lampe liegt unter admin.0, dort (und auch unter allen anderen, außer javascript.0 und selbst angelegten Objekten) sollten keine eigenen Objekte angelegt werden, das hat auch schon zu Fehlern in der Ausführung von Scripten geführt!

                                Enrico

                                1 Reply Last reply Reply Quote 0
                                • AlCalzone
                                  AlCalzone Developer last edited by

                                  @rantanplan:

                                  Ab welchem Status/Level kann man sich hier zeitlich "vormogeln".

                                  Ich verliere hier immer mehr die Lust 😢 `
                                  Hö, was meinst du?

                                  1 Reply Last reply Reply Quote 0
                                  • BuZZy
                                    BuZZy last edited by

                                    @BigWumpus:

                                    Ich verwendete im Blockly "aktualisiere <id>mit <unwahr>, verzögert 10 Min und lösche falls läuft.

                                    Blockly erzeugt dann einen Code:

                                    ….

                                    Für mich ist das ein Fehler...</unwahr></id> ` Korrekt erkannt! 🙂

                                    Ich habe den Fehler im Blockly behoben.

                                    Neueste Version vom Javascript Adapter über Github installieren - danach die Javascript Instanz neu starten. 😉

                                    @rantanplan:

                                    @AlCalzone:

                                    Hab mal ein Issue erstellt: https://github.com/ioBroker/ioBroker.ja … issues/105 `
                                    Das wird ja her immer interessanter :?

                                    Ab welchem Status/Level kann man sich hier zeitlich "vormogeln".

                                    Ich verliere hier immer mehr die Lust 😢 `
                                    Was genau meinst du damit?

                                    Du kannst dich gerne auf Github registrieren und selber die Issues öffnen.

                                    Da sehen wir Entwickler die Fehler schneller als hier im Forum - weil wir da eine eMail erhalten:

                                    "Ein neuer Fehler wurde gemeldet..".. 😉

                                    Gruß

                                    1 Reply Last reply Reply Quote 0
                                    • BigWumpus
                                      BigWumpus last edited by

                                      @AlCalzone:

                                      Hab mal ein Issue erstellt: https://github.com/ioBroker/ioBroker.ja … issues/105 `

                                      DANKE!

                                      1 Reply Last reply Reply Quote 0
                                      • F
                                        Fabian last edited by

                                        Mit iobroker-javascript 3.6.4 ist der Fehler wieder da. Eventuell auch schon in einer früheren Version.

                                        https://github.com/ioBroker/ioBroker.ja … issues/277

                                        1 Reply Last reply Reply Quote 0
                                        • First post
                                          Last post

                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        474
                                        Online

                                        31.8k
                                        Users

                                        79.9k
                                        Topics

                                        1.3m
                                        Posts

                                        8
                                        23
                                        1922
                                        Loading More Posts
                                        • Oldest to Newest
                                        • Newest to Oldest
                                        • Most Votes
                                        Reply
                                        • Reply as topic
                                        Log in to reply
                                        Community
                                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                        The ioBroker Community 2014-2023
                                        logo