Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Blockly
  5. HILFE: Alle Fenster geschlossen ? Datenpunkte auf true

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    786

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    6.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

HILFE: Alle Fenster geschlossen ? Datenpunkte auf true

Geplant Angeheftet Gesperrt Verschoben Blockly
46 Beiträge 5 Kommentatoren 4.3k Aufrufe 3 Beobachtet
  • Ä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.
  • D Dellishelly

    @mickym

    Der DP ist eine JSON
    und egal was ich mache, in der Debug bekomme ich immer angezeigt, dass er das Object nicht findet und auch steht nur weiterhin nur ein Wert drin.
    Immer der, der als letztes getriggert wurde.

    94c98f7e-ffc9-419d-9069-57d636cb1a62-image.png

    2023-09-19 15:50:15.066	info	script.js.Lichterprüfen: {"Couchbeleuchtung":false}
    
    javascript.0
    2023-09-19 15:50:15.064	warn	at Object.<anonymous> (script.js.Lichterprüfen:9:142)
    
    javascript.0
    2023-09-19 15:50:15.063	warn	at script.js.Lichterprüfen:9:52
    
    javascript.0
    2023-09-19 15:50:15.062	warn	getState "[object Object]" not found (3)
    
    mickymM Offline
    mickymM Offline
    mickym
    Most Active
    schrieb am zuletzt editiert von mickym
    #34

    @dellishelly Ok - ich verstehe es im Moment nicht - da es bei mir funktioniert. Nachdem Du jetzt schon was in Deinem Datenpunkt stehen hast, schau mal wenn Du die Objektprüfung wieder rausnimmst, ob sich dann das Objekt erweitert:

    Also beim Datenpunkt schreiben:

    3f4e0a7f-aa53-4a7f-8692-d693b8458a8b-image.png

    nur

    $merge($)
    

    Was hast Du denn für eine Version des Javascript Adapters - denn ich hab diese Probleme ja nicht. Ich habe:
    436eddea-a54b-4bc9-9f8a-7f7457c2fd88-image.png

    Alle Statusänderungen kommen nacheinander an und modifizieren das Objekt korrekt:

    96f54b31-d35e-441d-93aa-c124629ae68f-image.png

    Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

    D 1 Antwort Letzte Antwort
    0
    • mickymM mickym

      @dellishelly Ok - ich verstehe es im Moment nicht - da es bei mir funktioniert. Nachdem Du jetzt schon was in Deinem Datenpunkt stehen hast, schau mal wenn Du die Objektprüfung wieder rausnimmst, ob sich dann das Objekt erweitert:

      Also beim Datenpunkt schreiben:

      3f4e0a7f-aa53-4a7f-8692-d693b8458a8b-image.png

      nur

      $merge($)
      

      Was hast Du denn für eine Version des Javascript Adapters - denn ich hab diese Probleme ja nicht. Ich habe:
      436eddea-a54b-4bc9-9f8a-7f7457c2fd88-image.png

      Alle Statusänderungen kommen nacheinander an und modifizieren das Objekt korrekt:

      96f54b31-d35e-441d-93aa-c124629ae68f-image.png

      D Offline
      D Offline
      Dellishelly
      schrieb am zuletzt editiert von
      #35

      @mickym
      sobald ich die raus nehme, läuft nur noch der debug für topic.

      37c01964-0f45-4de7-92a6-8e631f5fccf1-image.png

      2023-09-19 16:12:21.655	error	at Object.<anonymous> (script.js.Lichterprüfen:10:31)
      
      javascript.0
      2023-09-19 16:12:21.655	error	at Object.evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:5558:26)
      
      javascript.0
      2023-09-19 16:12:21.655	error	at evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:3525:26)
      
      javascript.0
      2023-09-19 16:12:21.655	error	at evaluateFunction (/opt/iobroker/node_modules/jsonata/jsonata.js:4871:28)
      
      javascript.0
      2023-09-19 16:12:21.655	error	at apply (/opt/iobroker/node_modules/jsonata/jsonata.js:4896:24)
      
      javascript.0
      2023-09-19 16:12:21.654	error	at applyInner (/opt/iobroker/node_modules/jsonata/jsonata.js:4929:33)
      
      javascript.0
      2023-09-19 16:12:21.654	error	at validateArguments (/opt/iobroker/node_modules/jsonata/jsonata.js:5062:39)
      
      javascript.0
      2023-09-19 16:12:21.654	error	at Object.validate (/opt/iobroker/node_modules/jsonata/jsonata.js:7215:28)
      
      javascript.0
      2023-09-19 16:12:21.654	error	at Array.forEach (<anonymous>)
      
      javascript.0
      2023-09-19 16:12:21.654	error	at /opt/iobroker/node_modules/jsonata/jsonata.js:7242:45
      
      javascript.0
      2023-09-19 16:12:21.653	error	at Array.forEach (<anonymous>)
      
      javascript.0
      2023-09-19 16:12:21.653	error	at /opt/iobroker/node_modules/jsonata/jsonata.js:7272:57
      
      javascript.0
      2023-09-19 16:12:21.653	error	script.js.Lichterprüfen: Error:
      
      javascript.0
      2023-09-19 16:12:21.646	warn	at Object.<anonymous> (script.js.Lichterprüfen:9:142)
      
      javascript.0
      2023-09-19 16:12:21.645	warn	at script.js.Lichterprüfen:9:52
      
      javascript.0
      2023-09-19 16:12:21.639	warn	getState "[object Object]" not found (3)
      
      javascript.0
      2023-09-19 16:12:21.638	info	script.js.Lichterprüfen: Couchbeleuchtung
      
      mickymM 1 Antwort Letzte Antwort
      0
      • D Dellishelly

        @mickym
        sobald ich die raus nehme, läuft nur noch der debug für topic.

        37c01964-0f45-4de7-92a6-8e631f5fccf1-image.png

        2023-09-19 16:12:21.655	error	at Object.<anonymous> (script.js.Lichterprüfen:10:31)
        
        javascript.0
        2023-09-19 16:12:21.655	error	at Object.evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:5558:26)
        
        javascript.0
        2023-09-19 16:12:21.655	error	at evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:3525:26)
        
        javascript.0
        2023-09-19 16:12:21.655	error	at evaluateFunction (/opt/iobroker/node_modules/jsonata/jsonata.js:4871:28)
        
        javascript.0
        2023-09-19 16:12:21.655	error	at apply (/opt/iobroker/node_modules/jsonata/jsonata.js:4896:24)
        
        javascript.0
        2023-09-19 16:12:21.654	error	at applyInner (/opt/iobroker/node_modules/jsonata/jsonata.js:4929:33)
        
        javascript.0
        2023-09-19 16:12:21.654	error	at validateArguments (/opt/iobroker/node_modules/jsonata/jsonata.js:5062:39)
        
        javascript.0
        2023-09-19 16:12:21.654	error	at Object.validate (/opt/iobroker/node_modules/jsonata/jsonata.js:7215:28)
        
        javascript.0
        2023-09-19 16:12:21.654	error	at Array.forEach (<anonymous>)
        
        javascript.0
        2023-09-19 16:12:21.654	error	at /opt/iobroker/node_modules/jsonata/jsonata.js:7242:45
        
        javascript.0
        2023-09-19 16:12:21.653	error	at Array.forEach (<anonymous>)
        
        javascript.0
        2023-09-19 16:12:21.653	error	at /opt/iobroker/node_modules/jsonata/jsonata.js:7272:57
        
        javascript.0
        2023-09-19 16:12:21.653	error	script.js.Lichterprüfen: Error:
        
        javascript.0
        2023-09-19 16:12:21.646	warn	at Object.<anonymous> (script.js.Lichterprüfen:9:142)
        
        javascript.0
        2023-09-19 16:12:21.645	warn	at script.js.Lichterprüfen:9:52
        
        javascript.0
        2023-09-19 16:12:21.639	warn	getState "[object Object]" not found (3)
        
        javascript.0
        2023-09-19 16:12:21.638	info	script.js.Lichterprüfen: Couchbeleuchtung
        
        mickymM Offline
        mickymM Offline
        mickym
        Most Active
        schrieb am zuletzt editiert von
        #36

        @dellishelly Nee schon wieder aktivieren - wie gesagt diese Fehlermeldungen habe ich nicht.

        diese Warnung dass er was nicht findet - das macht mich stutzig

        8649ffa0-9a7d-415b-a048-bfef33dc9ae3-image.png

        Das muss bei Dir am System liegen.

        Prüfe ob Du beim Einlesen des Wertes diese Fehler bekommst. Das ist der Grund warum das Objekt nicht erweitert wird, weil der Datenpunkt bei DIR NICHT EINGELESEN wird.
        e495c26e-c2c4-4f78-9e62-1becd6ff7bc7-image.png

        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

        D 1 Antwort Letzte Antwort
        0
        • mickymM mickym

          @dellishelly Nee schon wieder aktivieren - wie gesagt diese Fehlermeldungen habe ich nicht.

          diese Warnung dass er was nicht findet - das macht mich stutzig

          8649ffa0-9a7d-415b-a048-bfef33dc9ae3-image.png

          Das muss bei Dir am System liegen.

          Prüfe ob Du beim Einlesen des Wertes diese Fehler bekommst. Das ist der Grund warum das Objekt nicht erweitert wird, weil der Datenpunkt bei DIR NICHT EINGELESEN wird.
          e495c26e-c2c4-4f78-9e62-1becd6ff7bc7-image.png

          D Offline
          D Offline
          Dellishelly
          schrieb am zuletzt editiert von
          #37

          @mickym

          ich hab die debug Blöcke mal raus genommen.
          Jetzt läufts und er schreibt auch die einmal getriggert wurden in die Liste.

          Nur die Prüfung am Ende läuft wohl noch nicht.
          debug im Admin zeigt keine Warnungen oder Fehler

          c016d68f-daf8-4c8f-bf7d-16a0ac17d893-image.png
          9c89f62e-b118-49e5-926f-b9586a93d4f6-image.png

          mickymM 1 Antwort Letzte Antwort
          0
          • D Dellishelly

            @mickym

            ich hab die debug Blöcke mal raus genommen.
            Jetzt läufts und er schreibt auch die einmal getriggert wurden in die Liste.

            Nur die Prüfung am Ende läuft wohl noch nicht.
            debug im Admin zeigt keine Warnungen oder Fehler

            c016d68f-daf8-4c8f-bf7d-16a0ac17d893-image.png
            9c89f62e-b118-49e5-926f-b9586a93d4f6-image.png

            mickymM Offline
            mickymM Offline
            mickym
            Most Active
            schrieb am zuletzt editiert von mickym
            #38

            @dellishelly Na Dein Objektbezeichnungen sind zwar kryptisch - aber gut.

            Für die Lichter musst Du ja die Logik etwas anders machen.

            Die Lichter sind aus, wenn alles aus ist. Also musst Du mit OR verknüfen.

            $reduce($.*,function($i, $j){$i or $j})
            

            und das Ergebnis verneinen:
            ac79b1ed-eeee-4c93-84e5-02e2c6357869-image.png

            lampen_aus wird also von JSONATA nur dann false sein, wenn alle Eigenschaften des Objektes falsch sind. lampen_aus wird true sein, wenn NUR eine Eigenschaft true ist.

            Um also postiv abzufragen, ob Lampen aus wahr ist, musst Du das Ergebnis verneinen.

            Somit wird es true, sobald alle Eigenschaften false ist und false, falls eine Eigenschaft true ist.

            Unten musst Du dann, um die Lampen rauszufischen die true sind - die Verneinung aufheben:

            statt

            $each($, function($v, $k) {$not($v) ? $k})~>$join(", ")
            

            dann

            $each($, function($v, $k) {$v ? $k})~>$join(", ")
            

            Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

            D mickymM 2 Antworten Letzte Antwort
            0
            • mickymM mickym

              @dellishelly Na Dein Objektbezeichnungen sind zwar kryptisch - aber gut.

              Für die Lichter musst Du ja die Logik etwas anders machen.

              Die Lichter sind aus, wenn alles aus ist. Also musst Du mit OR verknüfen.

              $reduce($.*,function($i, $j){$i or $j})
              

              und das Ergebnis verneinen:
              ac79b1ed-eeee-4c93-84e5-02e2c6357869-image.png

              lampen_aus wird also von JSONATA nur dann false sein, wenn alle Eigenschaften des Objektes falsch sind. lampen_aus wird true sein, wenn NUR eine Eigenschaft true ist.

              Um also postiv abzufragen, ob Lampen aus wahr ist, musst Du das Ergebnis verneinen.

              Somit wird es true, sobald alle Eigenschaften false ist und false, falls eine Eigenschaft true ist.

              Unten musst Du dann, um die Lampen rauszufischen die true sind - die Verneinung aufheben:

              statt

              $each($, function($v, $k) {$not($v) ? $k})~>$join(", ")
              

              dann

              $each($, function($v, $k) {$v ? $k})~>$join(", ")
              
              D Offline
              D Offline
              Dellishelly
              schrieb am zuletzt editiert von Dellishelly
              #39

              @mickym said in HILFE: Alle Fenster geschlossen ? Datenpunkte auf true:

              Ich muss hier noch die richtigen Namen hinterlegen. Die Object ID sind in Mehreren Ordnern mehrfach gleich vergeben.

              Aber das mach ich hinterher.
              Habe die Logik nun geändert, aber er gibt mir unten trotzdem keine Ausgabe.

              Habe mal nen debug direkt hinter den trigger der Listenprüfung gesetzt. - der gibt auch nichts aus, obwohl sich der Wert der Liste ändert

              0ffc2401-9282-449b-ad7d-de11bde230ef-image.png

              1 Antwort Letzte Antwort
              0
              • mickymM mickym

                @dellishelly Na Dein Objektbezeichnungen sind zwar kryptisch - aber gut.

                Für die Lichter musst Du ja die Logik etwas anders machen.

                Die Lichter sind aus, wenn alles aus ist. Also musst Du mit OR verknüfen.

                $reduce($.*,function($i, $j){$i or $j})
                

                und das Ergebnis verneinen:
                ac79b1ed-eeee-4c93-84e5-02e2c6357869-image.png

                lampen_aus wird also von JSONATA nur dann false sein, wenn alle Eigenschaften des Objektes falsch sind. lampen_aus wird true sein, wenn NUR eine Eigenschaft true ist.

                Um also postiv abzufragen, ob Lampen aus wahr ist, musst Du das Ergebnis verneinen.

                Somit wird es true, sobald alle Eigenschaften false ist und false, falls eine Eigenschaft true ist.

                Unten musst Du dann, um die Lampen rauszufischen die true sind - die Verneinung aufheben:

                statt

                $each($, function($v, $k) {$not($v) ? $k})~>$join(", ")
                

                dann

                $each($, function($v, $k) {$v ? $k})~>$join(", ")
                
                mickymM Offline
                mickymM Offline
                mickym
                Most Active
                schrieb am zuletzt editiert von
                #40

                @mickym Nun dann prüfe halt erst mal ob der untere Teil getriggert wird (siehst Du ja mit Test) und dann lass Dir mal den Wert mit debug ausgeben, um zu sehen, dass er auch das Objekt einliest.

                Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                D 1 Antwort Letzte Antwort
                0
                • mickymM mickym

                  @mickym Nun dann prüfe halt erst mal ob der untere Teil getriggert wird (siehst Du ja mit Test) und dann lass Dir mal den Wert mit debug ausgeben, um zu sehen, dass er auch das Objekt einliest.

                  D Offline
                  D Offline
                  Dellishelly
                  schrieb am zuletzt editiert von
                  #41

                  @mickym

                  genau das scheint er ja nicht zu machen.
                  sieht so aus als würde er keine Änderung in der Liste_Lampen feststellen

                  mickymM 1 Antwort Letzte Antwort
                  0
                  • D Dellishelly

                    @mickym

                    genau das scheint er ja nicht zu machen.
                    sieht so aus als würde er keine Änderung in der Liste_Lampen feststellen

                    mickymM Offline
                    mickymM Offline
                    mickym
                    Most Active
                    schrieb am zuletzt editiert von
                    #42

                    @dellishelly Verstehe ich zwar nicht aber dann ändere den Trigger halt mal auf wurde aktualisiert.
                    f17b6849-81fe-4a11-90bb-a71e5004bf1e-image.png

                    schon alles eigenartig - wie gesagt ich mach parallel das Gleiche mit Lichtern und gibt keine Probleme

                    Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                    1 Antwort Letzte Antwort
                    0
                    • mickymM Offline
                      mickymM Offline
                      mickym
                      Most Active
                      schrieb am zuletzt editiert von mickym
                      #43

                      So ich habe nochmal alles auf das Prüfen ob alle Lichter aus sind umgeschrieben:

                      bfbcb13e-ec95-41a4-8788-1c4269140888-image.png

                      Warum das bei Dir nicht will - ist mir ehrlich gesagt schleierhaft.

                      <xml xmlns="https://developers.google.com/blockly/xml">
                       <variables>
                         <variable id="+%%%So3UD{{[Gk^OhpLZ">topic</variable>
                         <variable id=".=3t38Q=oAvQA=GJrCIT">LichterAus</variable>
                         <variable id="1BU(([$^W;WIow$X5_ol">licht</variable>
                       </variables>
                       <block type="on_ext" id="HZfKRocr8=CFq}R$552t" x="63" y="-608">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                         <field name="CONDITION">ne</field>
                         <field name="ACK_CONDITION"></field>
                         <value name="OID0">
                           <shadow type="field_oid" id="d1@K!NJ=}R5S^u`KaX3C">
                             <field name="oid">mqtt.1.logic.states.fensterOffen.buero.balkon</field>
                           </shadow>
                           <block type="selector" id="|jdl_QBFs~eJ0k/*U={w">
                             <field name="TEXT">(functions=light)</field>
                           </block>
                         </value>
                         <statement name="STATEMENT">
                           <block type="debug" id=":^Pgr3}|:]7+:?{a4x(d">
                             <field name="Severity">log</field>
                             <value name="TEXT">
                               <shadow type="text" id=")36vYh5%pY-%.Zp`EM1~">
                                 <field name="TEXT">Lichter getriggert</field>
                               </shadow>
                             </value>
                             <next>
                               <block type="variables_set" id="GVAg8+xcAz[|GsBc1,da">
                                 <field name="VAR" id="+%%%So3UD{{[Gk^OhpLZ">topic</field>
                                 <value name="VALUE">
                                   <block type="convert_jsonata" id="N?`{C9J4GFRAb`H7?Cwa">
                                     <value name="EXPRESSION">
                                       <shadow type="text" id="B6d=(wWf2W4nVTTc~Ck4">
                                         <field name="TEXT">$match($,/.*\.(.*)\.(.*)/).groups[0]</field>
                                       </shadow>
                                     </value>
                                     <value name="TARGET">
                                       <block type="on_source" id="f5bg({v-?(kFenn6!sOp">
                                         <field name="ATTR">id</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="controls_if" id="pp95*^^[[jJ^?TuXzl[Y">
                                     <value name="IF0">
                                       <block type="logic_compare" id="[3O8l^kLNbNPR.(QA3PK">
                                         <field name="OP">EQ</field>
                                         <value name="A">
                                           <block type="convert_jsonata" id="8DEA9GAj00wS`ak3:LzH">
                                             <value name="EXPRESSION">
                                               <shadow type="text" id="}n4Gp;Apcafj+v!O#qC1">
                                                 <field name="TEXT">$match($,/.*\.(.*)\.(.*)/).groups[1]</field>
                                               </shadow>
                                             </value>
                                             <value name="TARGET">
                                               <block type="on_source" id="_)oOMZwT)AFE/M3KSD#a">
                                                 <field name="ATTR">id</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                         <value name="B">
                                           <block type="text" id="RQ9L!U5iM20*h%Ms_tuL">
                                             <field name="TEXT">On</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <statement name="DO0">
                                       <block type="variables_set" id="FOrMgkW57jj@G6{=YVmo">
                                         <field name="VAR" id="1BU(([$^W;WIow$X5_ol">licht</field>
                                         <value name="VALUE">
                                           <block type="lists_create_with" id="}3Pu2NVfy`*~L*A.Uk(s">
                                             <mutation items="2"></mutation>
                                             <value name="ADD0">
                                               <block type="convert_json2object" id="%Y[TZ2`PQ_$?|57$wY_[">
                                                 <value name="VALUE">
                                                   <block type="get_value" id="^St9z9H8%ItA9C_vXAO{">
                                                     <field name="ATTR">val</field>
                                                     <field name="OID">0_userdata.0.Test.JSON-Lichter</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                             <value name="ADD1">
                                               <block type="convert_jsonata" id="`pxk8qoF*:@/_PH_8^.Z">
                                                 <value name="EXPRESSION">
                                                   <shadow type="text" id="BG^WMHe-q@wGRNa4O#{5">
                                                     <field name="TEXT">{$[0]:$[1]}</field>
                                                   </shadow>
                                                 </value>
                                                 <value name="TARGET">
                                                   <block type="lists_create_with" id="l?wk:~pb$uIfcN6@.%M6">
                                                     <mutation items="2"></mutation>
                                                     <value name="ADD0">
                                                       <block type="variables_get" id="v(JDqPD7Pfzl3ar}[U?I">
                                                         <field name="VAR" id="+%%%So3UD{{[Gk^OhpLZ">topic</field>
                                                       </block>
                                                     </value>
                                                     <value name="ADD1">
                                                       <block type="on_source" id=";d-Ch$rON[Q^dstG2J,J">
                                                         <field name="ATTR">state.val</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                         <next>
                                           <block type="debug" id="ocxE8(:ynLCu;uv0I/(7">
                                             <field name="Severity">log</field>
                                             <value name="TEXT">
                                               <shadow type="text" id="_;*!{#=32F*17-Iy@dhi">
                                                 <field name="TEXT">test</field>
                                               </shadow>
                                               <block type="convert_object2json" id="{n]Gq05EuK4;laxtsYlF">
                                                 <field name="PRETTIFY">FALSE</field>
                                                 <value name="VALUE">
                                                   <block type="convert_jsonata" id="rA|;dyBdh+.#(a47xrM~">
                                                     <value name="EXPRESSION">
                                                       <shadow type="text" id="]^zcbOX^zi9oT]J4XL5=">
                                                         <field name="TEXT">$type($[0]) = "object" ? $merge($) : $[1]</field>
                                                       </shadow>
                                                     </value>
                                                     <value name="TARGET">
                                                       <block type="variables_get" id="4$.?5]j#%WQSn;Tz4%+%">
                                                         <field name="VAR" id="1BU(([$^W;WIow$X5_ol">licht</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                             <next>
                                               <block type="update" id="p^{l*YUMc,}okFib%^V9">
                                                 <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                 <field name="OID">0_userdata.0.Test.JSON-Lichter</field>
                                                 <field name="WITH_DELAY">FALSE</field>
                                                 <value name="VALUE">
                                                   <block type="convert_object2json" id="fIBSCL[;SP5Vx,B;dmOY">
                                                     <field name="PRETTIFY">FALSE</field>
                                                     <value name="VALUE">
                                                       <block type="convert_jsonata" id="y1yJD0IPpTHA[;_AVYDi">
                                                         <value name="EXPRESSION">
                                                           <shadow type="text" id="FPDz#qB5jn$E*aUcyXku">
                                                             <field name="TEXT">$type($[0]) = "object" ? $merge($) : $[1]</field>
                                                           </shadow>
                                                         </value>
                                                         <value name="TARGET">
                                                           <block type="variables_get" id="N)[-x}gD*RfBEk2.hY:z">
                                                             <field name="VAR" id="1BU(([$^W;WIow$X5_ol">licht</field>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                               </block>
                                             </next>
                                           </block>
                                         </next>
                                       </block>
                                     </statement>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </statement>
                         <next>
                           <block type="on_ext" id="lIpLyP^NqU!AEK@Zmf3O">
                             <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                             <field name="CONDITION">ne</field>
                             <field name="ACK_CONDITION"></field>
                             <value name="OID0">
                               <shadow type="field_oid" id="8FR,J3q0sg3NZSiJGQ;%">
                                 <field name="oid">0_userdata.0.Test.JSON-Lichter</field>
                               </shadow>
                             </value>
                             <statement name="STATEMENT">
                               <block type="variables_set" id=";;jER2B+iYQJi*8$1EU7">
                                 <field name="VAR" id=".=3t38Q=oAvQA=GJrCIT">LichterAus</field>
                                 <value name="VALUE">
                                   <block type="convert_jsonata" id="R2K@HY,wF{SE{+6q~Ly(">
                                     <value name="EXPRESSION">
                                       <shadow type="text" id="MptWY~HPUv*#uY0JVmn%">
                                         <field name="TEXT">$not($reduce($.*,function($i, $j){$i or $j}))</field>
                                       </shadow>
                                     </value>
                                     <value name="TARGET">
                                       <block type="convert_json2object" id="y`O;-_$VJibyz*b3p)%l">
                                         <value name="VALUE">
                                           <block type="on_source" id="mX#k_*7P(/6$8T]QzQRi">
                                             <field name="ATTR">state.val</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="controls_if" id="40P}^7e-qYf5[R?KVPED">
                                     <mutation else="1"></mutation>
                                     <value name="IF0">
                                       <block type="variables_get" id="Kd`cwF*iVL/zvIB.N)~Z">
                                         <field name="VAR" id=".=3t38Q=oAvQA=GJrCIT">LichterAus</field>
                                       </block>
                                     </value>
                                     <statement name="DO0">
                                       <block type="debug" id="n9DnT.[S*bI12V+C?Bfa">
                                         <field name="Severity">log</field>
                                         <value name="TEXT">
                                           <shadow type="text" id="6jUCi;2nzqc#z9a2ZM*2">
                                             <field name="TEXT">Alle Lichter aus</field>
                                           </shadow>
                                         </value>
                                       </block>
                                     </statement>
                                     <statement name="ELSE">
                                       <block type="debug" id="sv:o[##||Qa${QL@84eX">
                                         <field name="Severity">log</field>
                                         <value name="TEXT">
                                           <shadow type="text" id="t[klq_fe3}rg#`-x%_tK">
                                             <field name="TEXT">Mindestens ein Fenster ist offen</field>
                                           </shadow>
                                           <block type="text_join" id="1.VR-sz?IMc4/%CPn2iT">
                                             <mutation items="2"></mutation>
                                             <value name="ADD0">
                                               <block type="text" id="BD-zZA^}qq{|Lf*mSFuW">
                                                 <field name="TEXT">Folgende Lichter sind an: </field>
                                               </block>
                                             </value>
                                             <value name="ADD1">
                                               <block type="convert_jsonata" id="ON4]E+%)z@RZzf6Tft]$">
                                                 <value name="EXPRESSION">
                                                   <shadow type="text" id="1q9+4?m/0O5o(~sU?a}U">
                                                     <field name="TEXT">$each($, function($v, $k) {$v ? $k})~&gt;$join(", ")</field>
                                                   </shadow>
                                                 </value>
                                                 <value name="TARGET">
                                                   <block type="convert_json2object" id="+q~:K,vqzXj1{[-95bAi">
                                                     <value name="VALUE">
                                                       <block type="on_source" id="R7c1@EgSen?{)xy5ACvp">
                                                         <field name="ATTR">state.val</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                       </block>
                                     </statement>
                                   </block>
                                 </next>
                               </block>
                             </statement>
                           </block>
                         </next>
                       </block>
                      </xml>
                      


                      Die Datenpunkte lassen sich ohne weiteres lesen und beschreiben und triggern auch:

                      297a8408-9a50-4cf9-b527-6c63b7d7566d-image.png

                      Vielleicht ist es doch besser die Array Funktionen zu benutzen, wie @paul53 und @Codierknecht hier vorgeschlagen hat, da Blockly eben mit Objekten nicht gut umgehen kann.

                      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                      sigi234S D 2 Antworten Letzte Antwort
                      0
                      • mickymM mickym

                        So ich habe nochmal alles auf das Prüfen ob alle Lichter aus sind umgeschrieben:

                        bfbcb13e-ec95-41a4-8788-1c4269140888-image.png

                        Warum das bei Dir nicht will - ist mir ehrlich gesagt schleierhaft.

                        <xml xmlns="https://developers.google.com/blockly/xml">
                         <variables>
                           <variable id="+%%%So3UD{{[Gk^OhpLZ">topic</variable>
                           <variable id=".=3t38Q=oAvQA=GJrCIT">LichterAus</variable>
                           <variable id="1BU(([$^W;WIow$X5_ol">licht</variable>
                         </variables>
                         <block type="on_ext" id="HZfKRocr8=CFq}R$552t" x="63" y="-608">
                           <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                           <field name="CONDITION">ne</field>
                           <field name="ACK_CONDITION"></field>
                           <value name="OID0">
                             <shadow type="field_oid" id="d1@K!NJ=}R5S^u`KaX3C">
                               <field name="oid">mqtt.1.logic.states.fensterOffen.buero.balkon</field>
                             </shadow>
                             <block type="selector" id="|jdl_QBFs~eJ0k/*U={w">
                               <field name="TEXT">(functions=light)</field>
                             </block>
                           </value>
                           <statement name="STATEMENT">
                             <block type="debug" id=":^Pgr3}|:]7+:?{a4x(d">
                               <field name="Severity">log</field>
                               <value name="TEXT">
                                 <shadow type="text" id=")36vYh5%pY-%.Zp`EM1~">
                                   <field name="TEXT">Lichter getriggert</field>
                                 </shadow>
                               </value>
                               <next>
                                 <block type="variables_set" id="GVAg8+xcAz[|GsBc1,da">
                                   <field name="VAR" id="+%%%So3UD{{[Gk^OhpLZ">topic</field>
                                   <value name="VALUE">
                                     <block type="convert_jsonata" id="N?`{C9J4GFRAb`H7?Cwa">
                                       <value name="EXPRESSION">
                                         <shadow type="text" id="B6d=(wWf2W4nVTTc~Ck4">
                                           <field name="TEXT">$match($,/.*\.(.*)\.(.*)/).groups[0]</field>
                                         </shadow>
                                       </value>
                                       <value name="TARGET">
                                         <block type="on_source" id="f5bg({v-?(kFenn6!sOp">
                                           <field name="ATTR">id</field>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="controls_if" id="pp95*^^[[jJ^?TuXzl[Y">
                                       <value name="IF0">
                                         <block type="logic_compare" id="[3O8l^kLNbNPR.(QA3PK">
                                           <field name="OP">EQ</field>
                                           <value name="A">
                                             <block type="convert_jsonata" id="8DEA9GAj00wS`ak3:LzH">
                                               <value name="EXPRESSION">
                                                 <shadow type="text" id="}n4Gp;Apcafj+v!O#qC1">
                                                   <field name="TEXT">$match($,/.*\.(.*)\.(.*)/).groups[1]</field>
                                                 </shadow>
                                               </value>
                                               <value name="TARGET">
                                                 <block type="on_source" id="_)oOMZwT)AFE/M3KSD#a">
                                                   <field name="ATTR">id</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <value name="B">
                                             <block type="text" id="RQ9L!U5iM20*h%Ms_tuL">
                                               <field name="TEXT">On</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <statement name="DO0">
                                         <block type="variables_set" id="FOrMgkW57jj@G6{=YVmo">
                                           <field name="VAR" id="1BU(([$^W;WIow$X5_ol">licht</field>
                                           <value name="VALUE">
                                             <block type="lists_create_with" id="}3Pu2NVfy`*~L*A.Uk(s">
                                               <mutation items="2"></mutation>
                                               <value name="ADD0">
                                                 <block type="convert_json2object" id="%Y[TZ2`PQ_$?|57$wY_[">
                                                   <value name="VALUE">
                                                     <block type="get_value" id="^St9z9H8%ItA9C_vXAO{">
                                                       <field name="ATTR">val</field>
                                                       <field name="OID">0_userdata.0.Test.JSON-Lichter</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <value name="ADD1">
                                                 <block type="convert_jsonata" id="`pxk8qoF*:@/_PH_8^.Z">
                                                   <value name="EXPRESSION">
                                                     <shadow type="text" id="BG^WMHe-q@wGRNa4O#{5">
                                                       <field name="TEXT">{$[0]:$[1]}</field>
                                                     </shadow>
                                                   </value>
                                                   <value name="TARGET">
                                                     <block type="lists_create_with" id="l?wk:~pb$uIfcN6@.%M6">
                                                       <mutation items="2"></mutation>
                                                       <value name="ADD0">
                                                         <block type="variables_get" id="v(JDqPD7Pfzl3ar}[U?I">
                                                           <field name="VAR" id="+%%%So3UD{{[Gk^OhpLZ">topic</field>
                                                         </block>
                                                       </value>
                                                       <value name="ADD1">
                                                         <block type="on_source" id=";d-Ch$rON[Q^dstG2J,J">
                                                           <field name="ATTR">state.val</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <next>
                                             <block type="debug" id="ocxE8(:ynLCu;uv0I/(7">
                                               <field name="Severity">log</field>
                                               <value name="TEXT">
                                                 <shadow type="text" id="_;*!{#=32F*17-Iy@dhi">
                                                   <field name="TEXT">test</field>
                                                 </shadow>
                                                 <block type="convert_object2json" id="{n]Gq05EuK4;laxtsYlF">
                                                   <field name="PRETTIFY">FALSE</field>
                                                   <value name="VALUE">
                                                     <block type="convert_jsonata" id="rA|;dyBdh+.#(a47xrM~">
                                                       <value name="EXPRESSION">
                                                         <shadow type="text" id="]^zcbOX^zi9oT]J4XL5=">
                                                           <field name="TEXT">$type($[0]) = "object" ? $merge($) : $[1]</field>
                                                         </shadow>
                                                       </value>
                                                       <value name="TARGET">
                                                         <block type="variables_get" id="4$.?5]j#%WQSn;Tz4%+%">
                                                           <field name="VAR" id="1BU(([$^W;WIow$X5_ol">licht</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="update" id="p^{l*YUMc,}okFib%^V9">
                                                   <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                   <field name="OID">0_userdata.0.Test.JSON-Lichter</field>
                                                   <field name="WITH_DELAY">FALSE</field>
                                                   <value name="VALUE">
                                                     <block type="convert_object2json" id="fIBSCL[;SP5Vx,B;dmOY">
                                                       <field name="PRETTIFY">FALSE</field>
                                                       <value name="VALUE">
                                                         <block type="convert_jsonata" id="y1yJD0IPpTHA[;_AVYDi">
                                                           <value name="EXPRESSION">
                                                             <shadow type="text" id="FPDz#qB5jn$E*aUcyXku">
                                                               <field name="TEXT">$type($[0]) = "object" ? $merge($) : $[1]</field>
                                                             </shadow>
                                                           </value>
                                                           <value name="TARGET">
                                                             <block type="variables_get" id="N)[-x}gD*RfBEk2.hY:z">
                                                               <field name="VAR" id="1BU(([$^W;WIow$X5_ol">licht</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </next>
                                             </block>
                                           </next>
                                         </block>
                                       </statement>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                           </statement>
                           <next>
                             <block type="on_ext" id="lIpLyP^NqU!AEK@Zmf3O">
                               <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                               <field name="CONDITION">ne</field>
                               <field name="ACK_CONDITION"></field>
                               <value name="OID0">
                                 <shadow type="field_oid" id="8FR,J3q0sg3NZSiJGQ;%">
                                   <field name="oid">0_userdata.0.Test.JSON-Lichter</field>
                                 </shadow>
                               </value>
                               <statement name="STATEMENT">
                                 <block type="variables_set" id=";;jER2B+iYQJi*8$1EU7">
                                   <field name="VAR" id=".=3t38Q=oAvQA=GJrCIT">LichterAus</field>
                                   <value name="VALUE">
                                     <block type="convert_jsonata" id="R2K@HY,wF{SE{+6q~Ly(">
                                       <value name="EXPRESSION">
                                         <shadow type="text" id="MptWY~HPUv*#uY0JVmn%">
                                           <field name="TEXT">$not($reduce($.*,function($i, $j){$i or $j}))</field>
                                         </shadow>
                                       </value>
                                       <value name="TARGET">
                                         <block type="convert_json2object" id="y`O;-_$VJibyz*b3p)%l">
                                           <value name="VALUE">
                                             <block type="on_source" id="mX#k_*7P(/6$8T]QzQRi">
                                               <field name="ATTR">state.val</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="controls_if" id="40P}^7e-qYf5[R?KVPED">
                                       <mutation else="1"></mutation>
                                       <value name="IF0">
                                         <block type="variables_get" id="Kd`cwF*iVL/zvIB.N)~Z">
                                           <field name="VAR" id=".=3t38Q=oAvQA=GJrCIT">LichterAus</field>
                                         </block>
                                       </value>
                                       <statement name="DO0">
                                         <block type="debug" id="n9DnT.[S*bI12V+C?Bfa">
                                           <field name="Severity">log</field>
                                           <value name="TEXT">
                                             <shadow type="text" id="6jUCi;2nzqc#z9a2ZM*2">
                                               <field name="TEXT">Alle Lichter aus</field>
                                             </shadow>
                                           </value>
                                         </block>
                                       </statement>
                                       <statement name="ELSE">
                                         <block type="debug" id="sv:o[##||Qa${QL@84eX">
                                           <field name="Severity">log</field>
                                           <value name="TEXT">
                                             <shadow type="text" id="t[klq_fe3}rg#`-x%_tK">
                                               <field name="TEXT">Mindestens ein Fenster ist offen</field>
                                             </shadow>
                                             <block type="text_join" id="1.VR-sz?IMc4/%CPn2iT">
                                               <mutation items="2"></mutation>
                                               <value name="ADD0">
                                                 <block type="text" id="BD-zZA^}qq{|Lf*mSFuW">
                                                   <field name="TEXT">Folgende Lichter sind an: </field>
                                                 </block>
                                               </value>
                                               <value name="ADD1">
                                                 <block type="convert_jsonata" id="ON4]E+%)z@RZzf6Tft]$">
                                                   <value name="EXPRESSION">
                                                     <shadow type="text" id="1q9+4?m/0O5o(~sU?a}U">
                                                       <field name="TEXT">$each($, function($v, $k) {$v ? $k})~&gt;$join(", ")</field>
                                                     </shadow>
                                                   </value>
                                                   <value name="TARGET">
                                                     <block type="convert_json2object" id="+q~:K,vqzXj1{[-95bAi">
                                                       <value name="VALUE">
                                                         <block type="on_source" id="R7c1@EgSen?{)xy5ACvp">
                                                           <field name="ATTR">state.val</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                         </block>
                                       </statement>
                                     </block>
                                   </next>
                                 </block>
                               </statement>
                             </block>
                           </next>
                         </block>
                        </xml>
                        


                        Die Datenpunkte lassen sich ohne weiteres lesen und beschreiben und triggern auch:

                        297a8408-9a50-4cf9-b527-6c63b7d7566d-image.png

                        Vielleicht ist es doch besser die Array Funktionen zu benutzen, wie @paul53 und @Codierknecht hier vorgeschlagen hat, da Blockly eben mit Objekten nicht gut umgehen kann.

                        sigi234S Online
                        sigi234S Online
                        sigi234
                        Forum Testing Most Active
                        schrieb am zuletzt editiert von
                        #44

                        @mickym sagte in HILFE: Alle Fenster geschlossen ? Datenpunkte auf true:

                        Vielleicht ist es doch besser die Array Funktionen zu benutzen

                        oder das:

                        https://forum.iobroker.net/topic/31674/vorlage-generisches-fensteroffenskript-vis?_=1695137930357

                        Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                        Immer Daten sichern!

                        1 Antwort Letzte Antwort
                        0
                        • CodierknechtC Codierknecht

                          @dellishelly
                          Ich habe das wie folgt gelöst:

                          Zuerst habe ich eine Aufzählung erzeugt, die alle relevanten Datenpunkte enthält.
                          764b8e47-e789-4fc7-a36b-83dfcf3b8849-image.png

                          Damit kann man einen Trigger einrichten, der bei jeder Änderung an einem der Sensoren feuert und die offenen Fenster zählt. Die Zahl der offenen Fenster wird dann in einem eigenen DP gespeichert.
                          Ich habe das hier mal für Deine Zwecke etwas abgewandelt.
                          73b4b4bd-52ba-4a6d-9558-5bce24b856e4-image.png

                          Nur der Vollständigkeit halber: Ich mache das (Zählen der offenen Fenster) mittlerweile direkt in JS. Das ist noch übersichtlicher.

                          on({id: Array.prototype.slice.apply($("(functions=window)")), change: "ne"}, async function (obj) {
                            var count = 0;
                            var states = Array.prototype.slice.apply($("(functions=window)"));
                            for (var index in states) {
                              if (getState(states[index]).val) count++;
                            }
                            setState("0_userdata.0.Vis.fenster", count, true);
                          });
                          
                          paul53P Offline
                          paul53P Offline
                          paul53
                          schrieb am zuletzt editiert von
                          #45

                          @codierknecht sagte: direkt in JS. Das ist noch übersichtlicher.

                          Meine Version wäre:

                          const ids = Array.prototype.slice.apply($("(functions=window)"));
                          
                          on(ids, function () {
                            let count = 0;
                            for (let id of ids) {
                              if (getState(id).val) count++;
                            }
                            setState("0_userdata.0.Vis.fenster", count, true);
                          });
                          

                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                          1 Antwort Letzte Antwort
                          1
                          • mickymM mickym

                            So ich habe nochmal alles auf das Prüfen ob alle Lichter aus sind umgeschrieben:

                            bfbcb13e-ec95-41a4-8788-1c4269140888-image.png

                            Warum das bei Dir nicht will - ist mir ehrlich gesagt schleierhaft.

                            <xml xmlns="https://developers.google.com/blockly/xml">
                             <variables>
                               <variable id="+%%%So3UD{{[Gk^OhpLZ">topic</variable>
                               <variable id=".=3t38Q=oAvQA=GJrCIT">LichterAus</variable>
                               <variable id="1BU(([$^W;WIow$X5_ol">licht</variable>
                             </variables>
                             <block type="on_ext" id="HZfKRocr8=CFq}R$552t" x="63" y="-608">
                               <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                               <field name="CONDITION">ne</field>
                               <field name="ACK_CONDITION"></field>
                               <value name="OID0">
                                 <shadow type="field_oid" id="d1@K!NJ=}R5S^u`KaX3C">
                                   <field name="oid">mqtt.1.logic.states.fensterOffen.buero.balkon</field>
                                 </shadow>
                                 <block type="selector" id="|jdl_QBFs~eJ0k/*U={w">
                                   <field name="TEXT">(functions=light)</field>
                                 </block>
                               </value>
                               <statement name="STATEMENT">
                                 <block type="debug" id=":^Pgr3}|:]7+:?{a4x(d">
                                   <field name="Severity">log</field>
                                   <value name="TEXT">
                                     <shadow type="text" id=")36vYh5%pY-%.Zp`EM1~">
                                       <field name="TEXT">Lichter getriggert</field>
                                     </shadow>
                                   </value>
                                   <next>
                                     <block type="variables_set" id="GVAg8+xcAz[|GsBc1,da">
                                       <field name="VAR" id="+%%%So3UD{{[Gk^OhpLZ">topic</field>
                                       <value name="VALUE">
                                         <block type="convert_jsonata" id="N?`{C9J4GFRAb`H7?Cwa">
                                           <value name="EXPRESSION">
                                             <shadow type="text" id="B6d=(wWf2W4nVTTc~Ck4">
                                               <field name="TEXT">$match($,/.*\.(.*)\.(.*)/).groups[0]</field>
                                             </shadow>
                                           </value>
                                           <value name="TARGET">
                                             <block type="on_source" id="f5bg({v-?(kFenn6!sOp">
                                               <field name="ATTR">id</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="controls_if" id="pp95*^^[[jJ^?TuXzl[Y">
                                           <value name="IF0">
                                             <block type="logic_compare" id="[3O8l^kLNbNPR.(QA3PK">
                                               <field name="OP">EQ</field>
                                               <value name="A">
                                                 <block type="convert_jsonata" id="8DEA9GAj00wS`ak3:LzH">
                                                   <value name="EXPRESSION">
                                                     <shadow type="text" id="}n4Gp;Apcafj+v!O#qC1">
                                                       <field name="TEXT">$match($,/.*\.(.*)\.(.*)/).groups[1]</field>
                                                     </shadow>
                                                   </value>
                                                   <value name="TARGET">
                                                     <block type="on_source" id="_)oOMZwT)AFE/M3KSD#a">
                                                       <field name="ATTR">id</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <value name="B">
                                                 <block type="text" id="RQ9L!U5iM20*h%Ms_tuL">
                                                   <field name="TEXT">On</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <statement name="DO0">
                                             <block type="variables_set" id="FOrMgkW57jj@G6{=YVmo">
                                               <field name="VAR" id="1BU(([$^W;WIow$X5_ol">licht</field>
                                               <value name="VALUE">
                                                 <block type="lists_create_with" id="}3Pu2NVfy`*~L*A.Uk(s">
                                                   <mutation items="2"></mutation>
                                                   <value name="ADD0">
                                                     <block type="convert_json2object" id="%Y[TZ2`PQ_$?|57$wY_[">
                                                       <value name="VALUE">
                                                         <block type="get_value" id="^St9z9H8%ItA9C_vXAO{">
                                                           <field name="ATTR">val</field>
                                                           <field name="OID">0_userdata.0.Test.JSON-Lichter</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <value name="ADD1">
                                                     <block type="convert_jsonata" id="`pxk8qoF*:@/_PH_8^.Z">
                                                       <value name="EXPRESSION">
                                                         <shadow type="text" id="BG^WMHe-q@wGRNa4O#{5">
                                                           <field name="TEXT">{$[0]:$[1]}</field>
                                                         </shadow>
                                                       </value>
                                                       <value name="TARGET">
                                                         <block type="lists_create_with" id="l?wk:~pb$uIfcN6@.%M6">
                                                           <mutation items="2"></mutation>
                                                           <value name="ADD0">
                                                             <block type="variables_get" id="v(JDqPD7Pfzl3ar}[U?I">
                                                               <field name="VAR" id="+%%%So3UD{{[Gk^OhpLZ">topic</field>
                                                             </block>
                                                           </value>
                                                           <value name="ADD1">
                                                             <block type="on_source" id=";d-Ch$rON[Q^dstG2J,J">
                                                               <field name="ATTR">state.val</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="debug" id="ocxE8(:ynLCu;uv0I/(7">
                                                   <field name="Severity">log</field>
                                                   <value name="TEXT">
                                                     <shadow type="text" id="_;*!{#=32F*17-Iy@dhi">
                                                       <field name="TEXT">test</field>
                                                     </shadow>
                                                     <block type="convert_object2json" id="{n]Gq05EuK4;laxtsYlF">
                                                       <field name="PRETTIFY">FALSE</field>
                                                       <value name="VALUE">
                                                         <block type="convert_jsonata" id="rA|;dyBdh+.#(a47xrM~">
                                                           <value name="EXPRESSION">
                                                             <shadow type="text" id="]^zcbOX^zi9oT]J4XL5=">
                                                               <field name="TEXT">$type($[0]) = "object" ? $merge($) : $[1]</field>
                                                             </shadow>
                                                           </value>
                                                           <value name="TARGET">
                                                             <block type="variables_get" id="4$.?5]j#%WQSn;Tz4%+%">
                                                               <field name="VAR" id="1BU(([$^W;WIow$X5_ol">licht</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <next>
                                                     <block type="update" id="p^{l*YUMc,}okFib%^V9">
                                                       <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                       <field name="OID">0_userdata.0.Test.JSON-Lichter</field>
                                                       <field name="WITH_DELAY">FALSE</field>
                                                       <value name="VALUE">
                                                         <block type="convert_object2json" id="fIBSCL[;SP5Vx,B;dmOY">
                                                           <field name="PRETTIFY">FALSE</field>
                                                           <value name="VALUE">
                                                             <block type="convert_jsonata" id="y1yJD0IPpTHA[;_AVYDi">
                                                               <value name="EXPRESSION">
                                                                 <shadow type="text" id="FPDz#qB5jn$E*aUcyXku">
                                                                   <field name="TEXT">$type($[0]) = "object" ? $merge($) : $[1]</field>
                                                                 </shadow>
                                                               </value>
                                                               <value name="TARGET">
                                                                 <block type="variables_get" id="N)[-x}gD*RfBEk2.hY:z">
                                                                   <field name="VAR" id="1BU(([$^W;WIow$X5_ol">licht</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </next>
                                                 </block>
                                               </next>
                                             </block>
                                           </statement>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </statement>
                               <next>
                                 <block type="on_ext" id="lIpLyP^NqU!AEK@Zmf3O">
                                   <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                   <field name="CONDITION">ne</field>
                                   <field name="ACK_CONDITION"></field>
                                   <value name="OID0">
                                     <shadow type="field_oid" id="8FR,J3q0sg3NZSiJGQ;%">
                                       <field name="oid">0_userdata.0.Test.JSON-Lichter</field>
                                     </shadow>
                                   </value>
                                   <statement name="STATEMENT">
                                     <block type="variables_set" id=";;jER2B+iYQJi*8$1EU7">
                                       <field name="VAR" id=".=3t38Q=oAvQA=GJrCIT">LichterAus</field>
                                       <value name="VALUE">
                                         <block type="convert_jsonata" id="R2K@HY,wF{SE{+6q~Ly(">
                                           <value name="EXPRESSION">
                                             <shadow type="text" id="MptWY~HPUv*#uY0JVmn%">
                                               <field name="TEXT">$not($reduce($.*,function($i, $j){$i or $j}))</field>
                                             </shadow>
                                           </value>
                                           <value name="TARGET">
                                             <block type="convert_json2object" id="y`O;-_$VJibyz*b3p)%l">
                                               <value name="VALUE">
                                                 <block type="on_source" id="mX#k_*7P(/6$8T]QzQRi">
                                                   <field name="ATTR">state.val</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="controls_if" id="40P}^7e-qYf5[R?KVPED">
                                           <mutation else="1"></mutation>
                                           <value name="IF0">
                                             <block type="variables_get" id="Kd`cwF*iVL/zvIB.N)~Z">
                                               <field name="VAR" id=".=3t38Q=oAvQA=GJrCIT">LichterAus</field>
                                             </block>
                                           </value>
                                           <statement name="DO0">
                                             <block type="debug" id="n9DnT.[S*bI12V+C?Bfa">
                                               <field name="Severity">log</field>
                                               <value name="TEXT">
                                                 <shadow type="text" id="6jUCi;2nzqc#z9a2ZM*2">
                                                   <field name="TEXT">Alle Lichter aus</field>
                                                 </shadow>
                                               </value>
                                             </block>
                                           </statement>
                                           <statement name="ELSE">
                                             <block type="debug" id="sv:o[##||Qa${QL@84eX">
                                               <field name="Severity">log</field>
                                               <value name="TEXT">
                                                 <shadow type="text" id="t[klq_fe3}rg#`-x%_tK">
                                                   <field name="TEXT">Mindestens ein Fenster ist offen</field>
                                                 </shadow>
                                                 <block type="text_join" id="1.VR-sz?IMc4/%CPn2iT">
                                                   <mutation items="2"></mutation>
                                                   <value name="ADD0">
                                                     <block type="text" id="BD-zZA^}qq{|Lf*mSFuW">
                                                       <field name="TEXT">Folgende Lichter sind an: </field>
                                                     </block>
                                                   </value>
                                                   <value name="ADD1">
                                                     <block type="convert_jsonata" id="ON4]E+%)z@RZzf6Tft]$">
                                                       <value name="EXPRESSION">
                                                         <shadow type="text" id="1q9+4?m/0O5o(~sU?a}U">
                                                           <field name="TEXT">$each($, function($v, $k) {$v ? $k})~&gt;$join(", ")</field>
                                                         </shadow>
                                                       </value>
                                                       <value name="TARGET">
                                                         <block type="convert_json2object" id="+q~:K,vqzXj1{[-95bAi">
                                                           <value name="VALUE">
                                                             <block type="on_source" id="R7c1@EgSen?{)xy5ACvp">
                                                               <field name="ATTR">state.val</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                             </block>
                                           </statement>
                                         </block>
                                       </next>
                                     </block>
                                   </statement>
                                 </block>
                               </next>
                             </block>
                            </xml>
                            


                            Die Datenpunkte lassen sich ohne weiteres lesen und beschreiben und triggern auch:

                            297a8408-9a50-4cf9-b527-6c63b7d7566d-image.png

                            Vielleicht ist es doch besser die Array Funktionen zu benutzen, wie @paul53 und @Codierknecht hier vorgeschlagen hat, da Blockly eben mit Objekten nicht gut umgehen kann.

                            D Offline
                            D Offline
                            Dellishelly
                            schrieb am zuletzt editiert von Dellishelly
                            #46

                            @mickym

                            Ich habe jetzt das blockly nochmal einmal komplett neu zusammengebastelt.

                            und es läuft.

                            Ich kann dir leider nicht sagen woran es nun gelegen hat.....

                            KEINE AHNUNG!
                            ABER:

                            VIEEEELEN VIELEN DANKE für deine Ausdauer und Hilfe!

                            Hast ja quasi fast den ganzen Tag mit mir verbracht :-D

                            Hab heute echt viel dazugelernt!

                            1 Antwort Letzte Antwort
                            1

                            Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                            Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                            Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                            Registrieren Anmelden
                            Antworten
                            • In einem neuen Thema antworten
                            Anmelden zum Antworten
                            • Älteste zuerst
                            • Neuste zuerst
                            • Meiste Stimmen


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            560

                            Online

                            32.8k

                            Benutzer

                            82.7k

                            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