Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [ungelöst geschlossen] Unerklärliches Ausschalten b. Blockly

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    [ungelöst geschlossen] Unerklärliches Ausschalten b. Blockly

    This topic has been deleted. Only users with topic management privileges can see it.
    • MartinP
      MartinP @Peter c last edited by MartinP

      @peter-c Hast Du es schon mit "aktualisiere" statt "Steuere" für die Fritzdect Dose probiert... ?

      Ansonsten Könntest Du Dir testweise ein Script schreiben, welches als Trigger "state" der fritzdect überwacht, und über "ursprung" schauen, wer den Wert auf False setzt...

      928e7f4d-56af-4d93-a4cc-ca1e1ba1ed55-grafik.png

      EDIT: Gehst Du Direkt auf den Datenpunkt "state" der Fritzbox, oder über ein Alias?

      P haus-automatisierung 2 Replies Last reply Reply Quote 0
      • P
        Peter c @MartinP last edited by

        @martinp Danke für den Tip. Nutze eigentlich immer aktualisiere da das bei anderen Scripts für andere Fritzboxsteckdosen funktioniert hat. Aber ich mach das mal.

        Ja ich gehe über ein Alias.

        MartinP 2 Replies Last reply Reply Quote 0
        • haus-automatisierung
          haus-automatisierung Developer Most Active @MartinP last edited by

          @martinp sagte in Unerklärliches Ausschalten bei einfachem Blockly:

          Hast Du es schon mit "aktualisiere" statt "Steuere" für die Fritzdect Dose probiert... ?

          Warum sollte man direkt bestätigte Werte setzen, wenn eine Instanz (fritzdect.0) damit noch etwas tun soll? Dann wird nichts mehr passieren!

          1 Reply Last reply Reply Quote 0
          • MartinP
            MartinP @Peter c last edited by

            @peter-c Bei meiner Fritzdect ist hat über iobroker/objects ein Setzen von state auch Bestand, wenn der Bestätigt - Haken gesetzt wird ...

            Schaue doch mal, was passiert, wenn Du auch über iobroker/objects des state änderst...

            haus-automatisierung 1 Reply Last reply Reply Quote 0
            • haus-automatisierung
              haus-automatisierung Developer Most Active @MartinP last edited by

              @martinp sagte in Unerklärliches Ausschalten bei einfachem Blockly:

              Bei meiner Fritzdect ist hat über iobroker/objects ein Setzen von state auch Bestand, wenn der Bestätigt - Haken gesetzt wird ...

              • Das wäre gegen das Grundkonzept vom ioBroker
              • und widerspricht dem Code: https://github.com/foxthefox/ioBroker.fritzdect/blob/c285b8acfa0050b5acd49432481b4766428c4f59/main.js#L358
              MartinP 1 Reply Last reply Reply Quote 0
              • Codierknecht
                Codierknecht Developer Most Active last edited by

                @Peter-c
                Du könntest mal mitloggen, wer denn da den Status wieder zurücksetzt.

                6623bd75-0ea5-4139-aac6-b7001e48c079-image.png

                https://forum.iobroker.net/topic/70481/blockly-for-dummies-starthilfe-und-tipps/6

                Ich zitiere mal:

                Steuere
                Diesen Baustein verwendet man, um Datenpunkte zu verändern die einem Adapter "gehören", um z.B. eine Lampe oder einen Schalter zu schalten.
                Im Detail wird damit eine Änderung "ohne Bestätigung" (Ackknowledge) geschrieben. Diese fehlende Bestätigung ist für den Adapter die Veranlassung, etwas zu tun.
                Die allermeisten Adapter reagieren nicht, wenn hier eine Änderung per "Aktualisiere" (mit Bestätigung) geschrieben wird.
                Das gilt im Übrigen auch für Alias-Datenpunkte, die auf den "echten" DP eines Adapters verweisen.

                Aktualisiere
                Dieser Baustein wird zur Änderung eigener Datenpunkte verwendet, die Du unterhalb von 0_userdata.0 selbst angelegt hast.
                Hierbei wird "mit Bestätigung" geschrieben. Damit wird verhindert, dass der Wert im Objektbaum in rot dargestellt wird. In den meisten Fällen also eine lediglich kosmetische Sache.

                P 3 Replies Last reply Reply Quote 1
                • P
                  Peter c @Codierknecht last edited by

                  @codierknecht Ja da mach ich mal.

                  1 Reply Last reply Reply Quote 0
                  • P
                    Peter c @Codierknecht last edited by

                    @codierknecht Ist Ursprung eine selbst generierte Variable?

                    MartinP 1 Reply Last reply Reply Quote 0
                    • MartinP
                      MartinP @haus-automatisierung last edited by MartinP

                      @haus-automatisierung Ich habe es aus dem objects Baum händisch einmal mit "bestätigt", und einmal ohne ausgelöst ...

                      Funktionierte augenscheinlich erstmal beides ...

                      Dem Adapter scheinen die Experimente aber nicht behagt zu haben - aktuell kann ich "state" gar nicht mehr manipulieren.

                      Interessant - auch nach Neustart des Adapters kriege ich den State nicht mehr manipuliert

                      EDIT: Noch ein Experiment

                      Ohne gesetzten "Bestätigt" Haken (false->true)

                      javascript.0
                      	2024-01-11 13:19:38.384	info	script.js.Spielwiese.Test: Ursprung der Änderung: system.adapter.admin.0Status: true
                      fritzdect.0
                      	2024-01-11 13:19:38.384	info	DECT ID: 087610202315 identified for command (state) : true
                      

                      Mit gesetztem "Bestätigt" Haken (true->false) Genau das Verhalten ...

                      javascript.0
                      	2024-01-11 13:22:39.925	info	script.js.Spielwiese.Test: Ursprung der Änderung: system.adapter.admin.0Status: false
                      javascript.0
                      	2024-01-11 13:22:52.171	info	script.js.Spielwiese.Test: Ursprung der Änderung: system.adapter.fritzdect.0Status: true
                      
                      1 Reply Last reply Reply Quote 0
                      • MartinP
                        MartinP @Peter c last edited by

                        @peter-c - nein das Ding holt man sich aus dem Trigger - Menu

                        Erkennt man am kleinen vorangestellten Winkel-Pfeil

                        P 1 Reply Last reply Reply Quote 0
                        • P
                          Peter c @MartinP last edited by

                          @martinp Alles klar, danke

                          1 Reply Last reply Reply Quote 0
                          • P
                            Peter c @Codierknecht last edited by

                            @codierknecht kann ich das so in mein bestehendes Blockly einbauen oder sollte es separat laufen?

                            Bildschirmfoto 2024-01-11 um 13.08.18.png

                            Codierknecht paul53 2 Replies Last reply Reply Quote 0
                            • Codierknecht
                              Codierknecht Developer Most Active @Peter c last edited by

                              @peter-c
                              Kannst Du so einbauen

                              1 Reply Last reply Reply Quote 0
                              • paul53
                                paul53 @Peter c last edited by paul53

                                @peter-c sagte: in mein bestehendes Blockly einbauen oder sollte es separat laufen?

                                Das ist egal. Besser ein ausführliches Debug-Log mit Trigger auf "wurde aktualisiert":

                                Blockly_temp.JPG

                                <xml xmlns="https://developers.google.com/blockly/xml">
                                 <block type="on" id="K?w[nJ7-H).$w5hG{TjO" x="63" y="13">
                                   <field name="OID">Object ID</field>
                                   <field name="CONDITION">any</field>
                                   <field name="ACK_CONDITION"></field>
                                   <statement name="STATEMENT">
                                     <block type="debug" id=":uNfHbO:Ak@AGwBO$.a%">
                                       <field name="Severity">log</field>
                                       <value name="TEXT">
                                         <shadow type="text" id="F.RP`:J`F+FdSdJ%`3R7">
                                           <field name="TEXT">test</field>
                                         </shadow>
                                         <block type="text_join" id="!y)Z97dDfav|eym=(sf,">
                                           <mutation items="6"></mutation>
                                           <value name="ADD0">
                                             <block type="text" id="[G:mzw9qc:L+.`s;o[hG">
                                               <field name="TEXT">Wert: </field>
                                             </block>
                                           </value>
                                           <value name="ADD1">
                                             <block type="on_source" id="5IzLMg(+,h=^*C-{.7*S">
                                               <field name="ATTR">state.val</field>
                                             </block>
                                           </value>
                                           <value name="ADD2">
                                             <block type="text" id="gVzrNes=}@q3ZH:)He0|">
                                               <field name="TEXT">, bestätigt: </field>
                                             </block>
                                           </value>
                                           <value name="ADD3">
                                             <block type="on_source" id="iC6|TD$jP3d~iHAGy2oV">
                                               <field name="ATTR">state.ack</field>
                                             </block>
                                           </value>
                                           <value name="ADD4">
                                             <block type="text" id="0uTw(A0Vo!ai~6mt%SEA">
                                               <field name="TEXT">, Quelle: </field>
                                             </block>
                                           </value>
                                           <value name="ADD5">
                                             <block type="logic_ternary" id="M8IAT/#0dDI%SIxi+$O~">
                                               <value name="IF">
                                                 <block type="logic_compare" id="^,UT6OIYP%}wAAmwlFw)">
                                                   <field name="OP">EQ</field>
                                                   <value name="A">
                                                     <block type="text_indexOf" id="jL3-2]QuZ}XWLVj_j^f8">
                                                       <field name="END">FIRST</field>
                                                       <value name="VALUE">
                                                         <block type="on_source" id="9?:oT|j@KTsZ*?7V-@mY">
                                                           <field name="ATTR">state.from</field>
                                                         </block>
                                                       </value>
                                                       <value name="FIND">
                                                         <shadow type="text" id="4f/|ug#*av0JS:4!G!31">
                                                           <field name="TEXT">abc</field>
                                                         </shadow>
                                                         <block type="text" id="t%_9Ux/$@xkZQTlx(5Is">
                                                           <field name="TEXT">system.adapter.javascript.</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <value name="B">
                                                     <block type="math_number" id="3Bd{vghoqq*m0,6zhSLQ">
                                                       <field name="NUM">1</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <value name="THEN">
                                                 <block type="on_source" id="+}ATb]`g=jCI+rw},2^9">
                                                   <field name="ATTR">state.c</field>
                                                 </block>
                                               </value>
                                               <value name="ELSE">
                                                 <block type="on_source" id=":aPM:=_|!J-zcC-54KmY">
                                                   <field name="ATTR">state.from</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                     </block>
                                   </statement>
                                 </block>
                                </xml>
                                

                                1 Reply Last reply Reply Quote 1
                                • P
                                  Peter c last edited by Peter c

                                  @paul53 Ich gehe mal davon aus das dieses Script die Umwandlung des Blockly darüber ist.
                                  Hab es als neues Script angelegt, den ID Wert des Datenpunktes eingegeben und das Script gestartet.
                                  War das so richtig?
                                  Nur ist alles in dem Script rot.

                                  Bildschirmfoto 2024-01-11 um 13.36.18.png

                                  paul53 haus-automatisierung 3 Replies Last reply Reply Quote 0
                                  • paul53
                                    paul53 @Peter c last edited by

                                    @peter-c sagte: Script die Umwandlung des Blockly darüber ist.

                                    Es ist eine Erweiterung der Log-Ausgabe.

                                    @peter-c sagte in Unerklärliches Ausschalten bei einfachem Blockly:

                                    Hab es als neues Script angelegt, den ID Wert des Datenpunktes eingegeben und das Script gestartet.
                                    War das so richtig?

                                    Ja.

                                    1 Reply Last reply Reply Quote 0
                                    • haus-automatisierung
                                      haus-automatisierung Developer Most Active @Peter c last edited by haus-automatisierung

                                      @peter-c Du musst das als XML in (d)ein Blockly-Script importieren. Du hast das XML in ein neues JavaScript importiert. Das funktioniert so natürlich nicht...

                                      Bitte mit den Grundlagen beschäftigen 🙂

                                      Screenshot 2024-01-11 at 13.38.03.png

                                      1 Reply Last reply Reply Quote 0
                                      • paul53
                                        paul53 @Peter c last edited by paul53

                                        @peter-c sagte: Nur ist alles in dem Script rot.

                                        Du hast es vollständig in Blockly importiert: Exakt den kompletten Text in Code tags?

                                        P 1 Reply Last reply Reply Quote 0
                                        • MartinP
                                          MartinP @Peter c last edited by

                                          @peter-c said in Unerklärliches Ausschalten bei einfachem Blockly:

                                          @martinp Danke für den Tip. Nutze eigentlich immer aktualisiere da das bei anderen Scripts für andere Fritzboxsteckdosen funktioniert hat. Aber ich mach das mal.

                                          Ja ich gehe über ein Alias.

                                          Hier nutzt Du nicht "aktualisiere" ...

                                          88f6afba-2116-46d9-978d-bf75bf7d77d0-grafik.png

                                          haus-automatisierung 1 Reply Last reply Reply Quote 0
                                          • P
                                            Peter c @paul53 last edited by

                                            @paul53 Nein hatte das erst nicht richtig verstanden.
                                            Hatte es als Script geladen. Nun habe ich es als XML in blockly inportiert. Alles gut.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            844
                                            Online

                                            32.0k
                                            Users

                                            80.4k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            89
                                            4270
                                            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