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
    782

  • 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
    Mit NodeRed kann ich leider nicht umgehen.
    Die Frage ist ja wie ich die Prüfung der 15 Datenpunkte in Blockly realisiere.

    Danke und Lg
    Delli

    CodierknechtC Online
    CodierknechtC Online
    Codierknecht
    Developer Most Active
    schrieb am zuletzt editiert von
    #5

    @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);
    });
    

    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

    Proxmox 9.1.1 LXC|8 GB|Core i7-6700
    HmIP|ZigBee|Tasmota|Unifi
    Zabbix Certified Specialist
    Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

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

      Ok dank der Verbesserung von Codierknecht habe ich auch den Selektor genommen. Damit kann man die Fenster genauso selektieren:

      Also entweder über

      (functions=window)
      

      um die Aufzählung zu verwenden. Oder ich hab es jetzt für meine Struktur nochmal angepasst:

      7123d6ae-2091-468f-8143-200078652b42-image.png

      kann man bei passender Struktur auch mit Wildcards arbeiten:

      f39c73e9-c703-4f19-bf0b-c4ce3526faaf-image.png

      den unteren Teil habe ich soweit verbessert, dass bei geöffneten Fenstern, diese dann auch ausgegeben werden:

      3d8fdfd4-e483-4437-a886-9097e3ea215b-image.png

      <xml xmlns="https://developers.google.com/blockly/xml">
       <variables>
         <variable id="+%%%So3UD{{[Gk^OhpLZ">topic</variable>
         <variable id="1BU(([$^W;WIow$X5_ol">windows</variable>
         <variable id=".=3t38Q=oAvQA=GJrCIT">windowsClosed</variable>
       </variables>
       <block type="on_ext" id="HZfKRocr8=CFq}R$552t" x="42" y="-590">
         <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">mqtt.1.logic.states.fensterOffen.*</field>
           </block>
         </value>
         <statement name="STATEMENT">
           <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~&gt;$join("-")</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="variables_set" id="FOrMgkW57jj@G6{=YVmo">
                 <field name="VAR" id="1BU(([$^W;WIow$X5_ol">windows</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</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="logic_negate" id="X1C#Z]zmw0e6IB@B0IHN">
                                 <value name="BOOL">
                                   <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>
                   </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</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">$merge($)</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">windows</field>
                               </block>
                             </value>
                           </block>
                         </value>
                       </block>
                     </value>
                   </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</field>
               </shadow>
             </value>
             <statement name="STATEMENT">
               <block type="variables_set" id=";;jER2B+iYQJi*8$1EU7">
                 <field name="VAR" id=".=3t38Q=oAvQA=GJrCIT">windowsClosed</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">$reduce($.*,function($i, $j){$i and $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">windowsClosed</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 Fenster sind geschlossen</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 Fenster sind geöffnet: </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) {$not($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>
      

      Der Unterschied ist insofern, dass man halt nicht zählt, sondern entsprechende Statusmeldungen generiert, wo man hinlaufen muss.

      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

        Ok dank der Verbesserung von Codierknecht habe ich auch den Selektor genommen. Damit kann man die Fenster genauso selektieren:

        Also entweder über

        (functions=window)
        

        um die Aufzählung zu verwenden. Oder ich hab es jetzt für meine Struktur nochmal angepasst:

        7123d6ae-2091-468f-8143-200078652b42-image.png

        kann man bei passender Struktur auch mit Wildcards arbeiten:

        f39c73e9-c703-4f19-bf0b-c4ce3526faaf-image.png

        den unteren Teil habe ich soweit verbessert, dass bei geöffneten Fenstern, diese dann auch ausgegeben werden:

        3d8fdfd4-e483-4437-a886-9097e3ea215b-image.png

        <xml xmlns="https://developers.google.com/blockly/xml">
         <variables>
           <variable id="+%%%So3UD{{[Gk^OhpLZ">topic</variable>
           <variable id="1BU(([$^W;WIow$X5_ol">windows</variable>
           <variable id=".=3t38Q=oAvQA=GJrCIT">windowsClosed</variable>
         </variables>
         <block type="on_ext" id="HZfKRocr8=CFq}R$552t" x="42" y="-590">
           <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">mqtt.1.logic.states.fensterOffen.*</field>
             </block>
           </value>
           <statement name="STATEMENT">
             <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~&gt;$join("-")</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="variables_set" id="FOrMgkW57jj@G6{=YVmo">
                   <field name="VAR" id="1BU(([$^W;WIow$X5_ol">windows</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</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="logic_negate" id="X1C#Z]zmw0e6IB@B0IHN">
                                   <value name="BOOL">
                                     <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>
                     </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</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">$merge($)</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">windows</field>
                                 </block>
                               </value>
                             </block>
                           </value>
                         </block>
                       </value>
                     </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</field>
                 </shadow>
               </value>
               <statement name="STATEMENT">
                 <block type="variables_set" id=";;jER2B+iYQJi*8$1EU7">
                   <field name="VAR" id=".=3t38Q=oAvQA=GJrCIT">windowsClosed</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">$reduce($.*,function($i, $j){$i and $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">windowsClosed</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 Fenster sind geschlossen</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 Fenster sind geöffnet: </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) {$not($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>
        

        Der Unterschied ist insofern, dass man halt nicht zählt, sondern entsprechende Statusmeldungen generiert, wo man hinlaufen muss.

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

        @mickym

        Vielen lieben Dank für eure Hilfe
        Ich hab soweit alles angelegt.
        Den Datenpunkt für das JSON File angelegt und zu Testzwecken 2 Lampen als zu triggernde Datenpunkte genutzt.

        71b2540b-701b-4f69-9c65-de400e529ca0-image.png

        Ich bekomme nur ne Fehlermeldung.
        Hast du ne Idee woran das liegen könnte ?

        mickymM 1 Antwort Letzte Antwort
        0
        • D Dellishelly

          @mickym

          Vielen lieben Dank für eure Hilfe
          Ich hab soweit alles angelegt.
          Den Datenpunkt für das JSON File angelegt und zu Testzwecken 2 Lampen als zu triggernde Datenpunkte genutzt.

          71b2540b-701b-4f69-9c65-de400e529ca0-image.png

          Ich bekomme nur ne Fehlermeldung.
          Hast du ne Idee woran das liegen könnte ?

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

          @dellishelly Als erstes hast du einen anderen Pfad - ich würde wie gesagt die Namen ggf. verwenden für das topic (also wie ganz unten beschrieben)

          Also mal den Datenpunkt mit der Lampe zeigen.

          Desweiteren musst Du ggf. das negieren umdrehen, wenn in Deinen States schon true bei geschlossen ist.

          d65f86aa-2437-4b8e-b316-aeea0e77cb4b-image.png

          Ach so und bei Lichter an - dann musst Du die Logik umkehren. ;) - Du willst ja dann wenn alles false - ist - alle Lichter AUS angeben und falls noch eines AN ist dieses dann ausgeben.

          Ach und am Anfang in das neu aufzubauende Objekt ein leeres Objekt reinschreiben, also {}

          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 Als erstes hast du einen anderen Pfad - ich würde wie gesagt die Namen ggf. verwenden für das topic (also wie ganz unten beschrieben)

            Also mal den Datenpunkt mit der Lampe zeigen.

            Desweiteren musst Du ggf. das negieren umdrehen, wenn in Deinen States schon true bei geschlossen ist.

            d65f86aa-2437-4b8e-b316-aeea0e77cb4b-image.png

            Ach so und bei Lichter an - dann musst Du die Logik umkehren. ;) - Du willst ja dann wenn alles false - ist - alle Lichter AUS angeben und falls noch eines AN ist dieses dann ausgeben.

            Ach und am Anfang in das neu aufzubauende Objekt ein leeres Objekt reinschreiben, also {}

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

            @mickym

            tut mir leid ich kann dir leider nicht ganz folgen

            Was meinst du mit anderem Pfad ?

            6f53c23d-5873-45c0-b553-396dc110c8cc-image.png

            Das ist der Datenpunkt einer Lampe. Die anderen sehen alle gleich aus.

            Was konkret muss ich im Skript noch anpassen ?
            Den Pfad zur LampenJSON habe ich ja hinterlegt.

            Danke nochmal für deine Hilfe

            mickymM 1 Antwort Letzte Antwort
            0
            • D Dellishelly

              @mickym

              tut mir leid ich kann dir leider nicht ganz folgen

              Was meinst du mit anderem Pfad ?

              6f53c23d-5873-45c0-b553-396dc110c8cc-image.png

              Das ist der Datenpunkt einer Lampe. Die anderen sehen alle gleich aus.

              Was konkret muss ich im Skript noch anpassen ?
              Den Pfad zur LampenJSON habe ich ja hinterlegt.

              Danke nochmal für deine Hilfe

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

              @dellishelly

              Also erstes musst Du mal den Namen extrahieren.

              Setz mal den Namen ein für die Ermittlung des topics und der JSONATA-Ausdruck:
              e1e54248-f35e-4a56-8de1-ecd68018d59e-image.png
              ist

              $match($,/(.*)\.(.*)/).groups[0]
              

              <block xmlns="https://developers.google.com/blockly/xml" type="variables_set" id="g^ezE{937LstW(ZUEydf" x="63" y="-471">
               <field name="VAR" id="+%%%So3UD{{[Gk^OhpLZ">topic</field>
               <value name="VALUE">
                 <block type="convert_jsonata" id="VZSXzKA0(o~O8Z|VUv|k">
                   <value name="EXPRESSION">
                     <shadow type="text" id="?HMex^nHv0Re,E7osI,t">
                       <field name="TEXT">$match($,/(.*)\.(.*)/).groups[0]</field>
                     </shadow>
                   </value>
                   <value name="TARGET">
                     <block type="on_source" id="m@|lT|L7Zt[/H,1xEzL/">
                       <field name="ATTR">common.name</field>
                     </block>
                   </value>
                 </block>
               </value>
               <next>
                 <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</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="logic_negate" id="X1C#Z]zmw0e6IB@B0IHN">
                                   <value name="BOOL">
                                     <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>
                     </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</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">$merge($)</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>
              

              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

                Also erstes musst Du mal den Namen extrahieren.

                Setz mal den Namen ein für die Ermittlung des topics und der JSONATA-Ausdruck:
                e1e54248-f35e-4a56-8de1-ecd68018d59e-image.png
                ist

                $match($,/(.*)\.(.*)/).groups[0]
                

                <block xmlns="https://developers.google.com/blockly/xml" type="variables_set" id="g^ezE{937LstW(ZUEydf" x="63" y="-471">
                 <field name="VAR" id="+%%%So3UD{{[Gk^OhpLZ">topic</field>
                 <value name="VALUE">
                   <block type="convert_jsonata" id="VZSXzKA0(o~O8Z|VUv|k">
                     <value name="EXPRESSION">
                       <shadow type="text" id="?HMex^nHv0Re,E7osI,t">
                         <field name="TEXT">$match($,/(.*)\.(.*)/).groups[0]</field>
                       </shadow>
                     </value>
                     <value name="TARGET">
                       <block type="on_source" id="m@|lT|L7Zt[/H,1xEzL/">
                         <field name="ATTR">common.name</field>
                       </block>
                     </value>
                   </block>
                 </value>
                 <next>
                   <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</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="logic_negate" id="X1C#Z]zmw0e6IB@B0IHN">
                                     <value name="BOOL">
                                       <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>
                       </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</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">$merge($)</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>
                

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

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

                $match($,/(.).(.)/).groups[0]

                Okay also die Geschichte mit Topic=Namen setzen aus dem Objekt habe ich jetzt verstanden.
                Was ist dieser Pfad ?

                $match($,/(.).(.)/).groups[0]

                So hab Ichs jetzt aktuell im Skript

                04002921-2d44-4788-9521-0881f9d972b0-image.png

                mickymM 1 Antwort Letzte Antwort
                0
                • D Dellishelly

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

                  $match($,/(.).(.)/).groups[0]

                  Okay also die Geschichte mit Topic=Namen setzen aus dem Objekt habe ich jetzt verstanden.
                  Was ist dieser Pfad ?

                  $match($,/(.).(.)/).groups[0]

                  So hab Ichs jetzt aktuell im Skript

                  04002921-2d44-4788-9521-0881f9d972b0-image.png

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

                  @dellishelly Dieser Ausdruck extrahiert aus Deinem Namen des Datenpunktes

                  a86a1097-aece-43f4-98cc-d83cd7f5034c-image.png

                  da steht ja als Name Couchbeleuchtung.STATE das Wort Couchbeleuchtung. So dass im Objekt dann stehen muss:

                  {
                           "Couchbeleuchtung" : false
                   }
                  

                  Du musst ggf. halt ein Debug reinmachen und prüfen, ob alles richtig extrahiert wird.
                  Und wie gesagt, solange die Liste noch nicht aufgebaut ist, mach ein leeres Objekt in Deinen Datenpunkt liste_lampen rein.

                  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 Dieser Ausdruck extrahiert aus Deinem Namen des Datenpunktes

                    a86a1097-aece-43f4-98cc-d83cd7f5034c-image.png

                    da steht ja als Name Couchbeleuchtung.STATE das Wort Couchbeleuchtung. So dass im Objekt dann stehen muss:

                    {
                             "Couchbeleuchtung" : false
                     }
                    

                    Du musst ggf. halt ein Debug reinmachen und prüfen, ob alles richtig extrahiert wird.
                    Und wie gesagt, solange die Liste noch nicht aufgebaut ist, mach ein leeres Objekt in Deinen Datenpunkt liste_lampen rein.

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

                    @mickym

                    Den Ausdruck habe ich ja verstanden. Leider klappt's noch immer nicht.
                    hier ist der Dubug - kannst du mir dazu was sagen ?

                    vascript.0
                    2023-09-19 13:27:26.337	error	at Object.<anonymous> (script.js.Lichterprüfen:9:83)
                    
                    javascript.0
                    2023-09-19 13:27:26.337	error	at Object.evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:5558:26)
                    
                    javascript.0
                    2023-09-19 13:27:26.337	error	at evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:3525:26)
                    
                    javascript.0
                    2023-09-19 13:27:26.337	error	at evaluateFunction (/opt/iobroker/node_modules/jsonata/jsonata.js:4871:28)
                    
                    javascript.0
                    2023-09-19 13:27:26.337	error	at apply (/opt/iobroker/node_modules/jsonata/jsonata.js:4896:24)
                    
                    javascript.0
                    2023-09-19 13:27:26.336	error	at applyInner (/opt/iobroker/node_modules/jsonata/jsonata.js:4929:33)
                    
                    javascript.0
                    2023-09-19 13:27:26.336	error	at validateArguments (/opt/iobroker/node_modules/jsonata/jsonata.js:5062:39)
                    
                    javascript.0
                    2023-09-19 13:27:26.336	error	at Object.validate (/opt/iobroker/node_modules/jsonata/jsonata.js:7215:28)
                    
                    javascript.0
                    2023-09-19 13:27:26.336	error	at Array.forEach (<anonymous>)
                    
                    javascript.0
                    2023-09-19 13:27:26.336	error	at /opt/iobroker/node_modules/jsonata/jsonata.js:7242:45
                    
                    javascript.0
                    2023-09-19 13:27:26.336	error	at Array.forEach (<anonymous>)
                    
                    javascript.0
                    2023-09-19 13:27:26.335	error	at /opt/iobroker/node_modules/jsonata/jsonata.js:7272:57
                    
                    javascript.0
                    2023-09-19 13:27:26.335	error	script.js.Lichterprüfen: Error:
                    
                    javascript.0
                    2023-09-19 13:27:26.330	warn	at Object.<anonymous> (script.js.Lichterprüfen:8:131)
                    
                    javascript.0
                    2023-09-19 13:27:26.330	warn	at script.js.Lichterprüfen:8:52
                    
                    javascript.0
                    2023-09-19 13:27:26.329	warn	getState "0_userdata.0.Status.Liste_lampen" not found (3) states[id]=null```
                    1 Antwort Letzte Antwort
                    0
                    • mickymM mickym

                      @dellishelly Dieser Ausdruck extrahiert aus Deinem Namen des Datenpunktes

                      a86a1097-aece-43f4-98cc-d83cd7f5034c-image.png

                      da steht ja als Name Couchbeleuchtung.STATE das Wort Couchbeleuchtung. So dass im Objekt dann stehen muss:

                      {
                               "Couchbeleuchtung" : false
                       }
                      

                      Du musst ggf. halt ein Debug reinmachen und prüfen, ob alles richtig extrahiert wird.
                      Und wie gesagt, solange die Liste noch nicht aufgebaut ist, mach ein leeres Objekt in Deinen Datenpunkt liste_lampen rein.

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

                      @mickym Na der sagt, dass der Datenpunkt 0_userdata.0.Status.Liste_lampen nicht existiert. Hast Du den angelegt?

                      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 Na der sagt, dass der Datenpunkt 0_userdata.0.Status.Liste_lampen nicht existiert. Hast Du den angelegt?

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

                        @mickym

                        ja das ist ja das was ich nicht verstehe.

                        Ich habs aber jetzt nochmal so gemacht wie du gesagt hast und die "Liste Lampe" aus dem Skript entfernt.
                        funktioniert aber genauso wenig.

                        d664bbcd-dd8d-443e-90d1-7b8708bc2590-image.png

                        das ist jetzt der debug

                        
                        javascript.0
                        2023-09-19 13:37:09.279	error	at Object.<anonymous> (script.js.Lichterprüfen:9:41)
                        
                        javascript.0
                        2023-09-19 13:37:09.279	error	at Object.evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:5558:26)
                        
                        javascript.0
                        2023-09-19 13:37:09.279	error	at evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:3525:26)
                        
                        javascript.0
                        2023-09-19 13:37:09.279	error	at evaluateFunction (/opt/iobroker/node_modules/jsonata/jsonata.js:4871:28)
                        
                        javascript.0
                        2023-09-19 13:37:09.278	error	at apply (/opt/iobroker/node_modules/jsonata/jsonata.js:4896:24)
                        
                        javascript.0
                        2023-09-19 13:37:09.278	error	at applyInner (/opt/iobroker/node_modules/jsonata/jsonata.js:4929:33)
                        
                        javascript.0
                        2023-09-19 13:37:09.278	error	at validateArguments (/opt/iobroker/node_modules/jsonata/jsonata.js:5062:39)
                        
                        javascript.0
                        2023-09-19 13:37:09.277	error	at Object.validate (/opt/iobroker/node_modules/jsonata/jsonata.js:7215:28)
                        
                        javascript.0
                        2023-09-19 13:37:09.277	error	at Array.forEach (<anonymous>)
                        
                        javascript.0
                        2023-09-19 13:37:09.275	error	at /opt/iobroker/node_modules/jsonata/jsonata.js:7242:45
                        
                        javascript.0
                        2023-09-19 13:37:09.275	error	at Array.forEach (<anonymous>)
                        
                        javascript.0
                        2023-09-19 13:37:09.275	error	at /opt/iobroker/node_modules/jsonata/jsonata.js:7272:57
                        
                        javascript.0
                        2023-09-19 13:37:09.274	error	script.js.Lichterprüfen: Error:
                        
                        javascript.0
                        2023-09-19 13:37:09.266	warn	at Object.<anonymous> (script.js.Lichterprüfen:8:108)
                        
                        javascript.0
                        2023-09-19 13:37:09.263	warn	at script.js.Lichterprüfen:8:52
                        
                        javascript.0
                        2023-09-19 13:37:09.256	warn	getState "Object ID" not found (3)
                        
                        mickymM 1 Antwort Letzte Antwort
                        0
                        • D Dellishelly

                          @mickym

                          ja das ist ja das was ich nicht verstehe.

                          Ich habs aber jetzt nochmal so gemacht wie du gesagt hast und die "Liste Lampe" aus dem Skript entfernt.
                          funktioniert aber genauso wenig.

                          d664bbcd-dd8d-443e-90d1-7b8708bc2590-image.png

                          das ist jetzt der debug

                          
                          javascript.0
                          2023-09-19 13:37:09.279	error	at Object.<anonymous> (script.js.Lichterprüfen:9:41)
                          
                          javascript.0
                          2023-09-19 13:37:09.279	error	at Object.evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:5558:26)
                          
                          javascript.0
                          2023-09-19 13:37:09.279	error	at evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:3525:26)
                          
                          javascript.0
                          2023-09-19 13:37:09.279	error	at evaluateFunction (/opt/iobroker/node_modules/jsonata/jsonata.js:4871:28)
                          
                          javascript.0
                          2023-09-19 13:37:09.278	error	at apply (/opt/iobroker/node_modules/jsonata/jsonata.js:4896:24)
                          
                          javascript.0
                          2023-09-19 13:37:09.278	error	at applyInner (/opt/iobroker/node_modules/jsonata/jsonata.js:4929:33)
                          
                          javascript.0
                          2023-09-19 13:37:09.278	error	at validateArguments (/opt/iobroker/node_modules/jsonata/jsonata.js:5062:39)
                          
                          javascript.0
                          2023-09-19 13:37:09.277	error	at Object.validate (/opt/iobroker/node_modules/jsonata/jsonata.js:7215:28)
                          
                          javascript.0
                          2023-09-19 13:37:09.277	error	at Array.forEach (<anonymous>)
                          
                          javascript.0
                          2023-09-19 13:37:09.275	error	at /opt/iobroker/node_modules/jsonata/jsonata.js:7242:45
                          
                          javascript.0
                          2023-09-19 13:37:09.275	error	at Array.forEach (<anonymous>)
                          
                          javascript.0
                          2023-09-19 13:37:09.275	error	at /opt/iobroker/node_modules/jsonata/jsonata.js:7272:57
                          
                          javascript.0
                          2023-09-19 13:37:09.274	error	script.js.Lichterprüfen: Error:
                          
                          javascript.0
                          2023-09-19 13:37:09.266	warn	at Object.<anonymous> (script.js.Lichterprüfen:8:108)
                          
                          javascript.0
                          2023-09-19 13:37:09.263	warn	at script.js.Lichterprüfen:8:52
                          
                          javascript.0
                          2023-09-19 13:37:09.256	warn	getState "Object ID" not found (3)
                          
                          mickymM Offline
                          mickymM Offline
                          mickym
                          Most Active
                          schrieb am zuletzt editiert von mickym
                          #16

                          @dellishelly Nochmal hast Du denn den Datenpunkt unter userdata_0.0 angelegt?

                          Du kannst ja prüfen was in diesen Datenpunkt geschrieben werden soll:

                          af2854c7-af7c-42d4-a7a9-32adb6ac16bc-image.png

                          Lass Dir mit Debug ausgeben, so wie im Screenshot gezeigt was in den Datenpunkt geschrieben wird.

                          Wenn das so ähnlich aussieht - dann ist der Input korrekt, aber Dein Datenpunkt existiert nicht.

                          Der Datenpunkt sollte halt ein leeres Objekt {} zu Beginn enthalten. Wenn das nicht der Fall ist, dann mach ich noch eine Abprüfung rein.

                          146a2f52-ed46-41e3-9df3-02f7dacfd49a-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
                          • D Dellishelly

                            Hi zusammen,

                            ich steh glaube ich völlig auf der Leitung.

                            Ich möchte in Blockly ein Skript erstellen welches sobald der Status eines geändert wird, ALLE Fenster überprüft und eine Variable "Alle Fenster" auf true setzt wenn alle Fenster geschlossen sind.

                            Ich dreh mich hier grad im Kreis.....
                            Danke für eure HILFE

                            LG
                            Delli

                            paul53P Offline
                            paul53P Offline
                            paul53
                            schrieb am zuletzt editiert von
                            #17

                            @dellishelly sagte: sobald der Status eines geändert wird, ALLE Fenster überprüft und eine Variable "Alle Fenster" auf true setzt wenn alle Fenster geschlossen sind.

                            Blockly_temp.JPG

                            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
                            0
                            • mickymM mickym

                              @dellishelly Nochmal hast Du denn den Datenpunkt unter userdata_0.0 angelegt?

                              Du kannst ja prüfen was in diesen Datenpunkt geschrieben werden soll:

                              af2854c7-af7c-42d4-a7a9-32adb6ac16bc-image.png

                              Lass Dir mit Debug ausgeben, so wie im Screenshot gezeigt was in den Datenpunkt geschrieben wird.

                              Wenn das so ähnlich aussieht - dann ist der Input korrekt, aber Dein Datenpunkt existiert nicht.

                              Der Datenpunkt sollte halt ein leeres Objekt {} zu Beginn enthalten. Wenn das nicht der Fall ist, dann mach ich noch eine Abprüfung rein.

                              146a2f52-ed46-41e3-9df3-02f7dacfd49a-image.png

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

                              @mickym

                              ich komm mir schon maximal dämlich vor......

                              ja den Datenpunkte Liste_Lampen habe ich selbst angelegt
                              2f196f85-218b-48b3-9cc1-8c8a8b57307c-image.png

                              69314a83-0bef-4e1b-997f-dc102a379faa-image.png

                              javascript.0
                              2023-09-19 13:54:01.168	error	at Object.<anonymous> (script.js.Lichterprüfen:8:147)
                              
                              javascript.0
                              2023-09-19 13:54:01.168	error	at Object.evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:5558:26)
                              
                              javascript.0
                              2023-09-19 13:54:01.167	error	at evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:3493:26)
                              
                              javascript.0
                              2023-09-19 13:54:01.167	error	at evaluateUnary (/opt/iobroker/node_modules/jsonata/jsonata.js:3985:26)
                              
                              javascript.0
                              2023-09-19 13:54:01.166	error	at evaluateGroupExpression (/opt/iobroker/node_modules/jsonata/jsonata.js:4349:33)
                              
                              javascript.0
                              2023-09-19 13:54:01.166	error	script.js.Lichterprüfen: Error:
                              
                              javascript.0
                              2023-09-19 13:54:01.163	warn	at Object.<anonymous> (script.js.Lichterprüfen:8:142)
                              
                              javascript.0
                              2023-09-19 13:54:01.163	warn	at script.js.Lichterprüfen:8:52
                              
                              javascript.0
                              2023-09-19 13:54:01.161	warn	getState "[object Object]" not found (3)
                              
                              mickymM 1 Antwort Letzte Antwort
                              0
                              • D Dellishelly

                                @mickym

                                ich komm mir schon maximal dämlich vor......

                                ja den Datenpunkte Liste_Lampen habe ich selbst angelegt
                                2f196f85-218b-48b3-9cc1-8c8a8b57307c-image.png

                                69314a83-0bef-4e1b-997f-dc102a379faa-image.png

                                javascript.0
                                2023-09-19 13:54:01.168	error	at Object.<anonymous> (script.js.Lichterprüfen:8:147)
                                
                                javascript.0
                                2023-09-19 13:54:01.168	error	at Object.evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:5558:26)
                                
                                javascript.0
                                2023-09-19 13:54:01.167	error	at evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:3493:26)
                                
                                javascript.0
                                2023-09-19 13:54:01.167	error	at evaluateUnary (/opt/iobroker/node_modules/jsonata/jsonata.js:3985:26)
                                
                                javascript.0
                                2023-09-19 13:54:01.166	error	at evaluateGroupExpression (/opt/iobroker/node_modules/jsonata/jsonata.js:4349:33)
                                
                                javascript.0
                                2023-09-19 13:54:01.166	error	script.js.Lichterprüfen: Error:
                                
                                javascript.0
                                2023-09-19 13:54:01.163	warn	at Object.<anonymous> (script.js.Lichterprüfen:8:142)
                                
                                javascript.0
                                2023-09-19 13:54:01.163	warn	at script.js.Lichterprüfen:8:52
                                
                                javascript.0
                                2023-09-19 13:54:01.161	warn	getState "[object Object]" not found (3)
                                
                                mickymM Offline
                                mickymM Offline
                                mickym
                                Most Active
                                schrieb am zuletzt editiert von mickym
                                #19

                                @dellishelly OK wie ich vermutete, da steht null drin. Hier ich hab mal für die Initialisierung wie folgt geändert - damit müsste es gehen:

                                59a547e6-f352-4ddb-a307-edf01f94febe-image.png

                                also gib mal folgenden Code ein:

                                $type($[0]) = "object" ? $merge($) : $[1]
                                

                                Wie gesagt damit sollte es gehen!!

                                Der Fehler ist dass am Anfang ein leeres Objekt erwartet wurde.

                                6a7a552b-e35b-4942-9a78-db868d53ca69-image.png

                                Wenn da am Anfang nicht null sondern {} drin stehen würde - wäre es gegangen - nun sollte es aber auch gehen.

                                cbb39065-6386-4838-8fbd-59b3839083dc-image.png

                                Es gibt beim allerersten Mal eine Warnung - aber es sollte durchlaufen.

                                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 wie ich vermutete, da steht null drin. Hier ich hab mal für die Initialisierung wie folgt geändert - damit müsste es gehen:

                                  59a547e6-f352-4ddb-a307-edf01f94febe-image.png

                                  also gib mal folgenden Code ein:

                                  $type($[0]) = "object" ? $merge($) : $[1]
                                  

                                  Wie gesagt damit sollte es gehen!!

                                  Der Fehler ist dass am Anfang ein leeres Objekt erwartet wurde.

                                  6a7a552b-e35b-4942-9a78-db868d53ca69-image.png

                                  Wenn da am Anfang nicht null sondern {} drin stehen würde - wäre es gegangen - nun sollte es aber auch gehen.

                                  cbb39065-6386-4838-8fbd-59b3839083dc-image.png

                                  Es gibt beim allerersten Mal eine Warnung - aber es sollte durchlaufen.

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

                                  @mickym

                                  Hab ich erledigt. Leider noch immer kein erfolg :-(

                                  ae89a640-8c48-4fd4-b3c2-2f38262cb865-image.png

                                  javascript.0
                                  2023-09-19 14:16:34.253	error	at Object.<anonymous> (script.js.Lichterprüfen:8:147)
                                  
                                  javascript.0
                                  2023-09-19 14:16:34.253	error	at Object.evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:5558:26)
                                  
                                  javascript.0
                                  2023-09-19 14:16:34.252	error	at evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:3493:26)
                                  
                                  javascript.0
                                  2023-09-19 14:16:34.252	error	at evaluateUnary (/opt/iobroker/node_modules/jsonata/jsonata.js:3985:26)
                                  
                                  javascript.0
                                  2023-09-19 14:16:34.252	error	at evaluateGroupExpression (/opt/iobroker/node_modules/jsonata/jsonata.js:4349:33)
                                  
                                  javascript.0
                                  2023-09-19 14:16:34.252	error	script.js.Lichterprüfen: Error:
                                  
                                  javascript.0
                                  2023-09-19 14:16:34.249	warn	at Object.<anonymous> (script.js.Lichterprüfen:8:142)
                                  
                                  javascript.0
                                  2023-09-19 14:16:34.248	warn	at script.js.Lichterprüfen:8:52
                                  
                                  javascript.0
                                  2023-09-19 14:16:34.245	warn	getState "[object Object]" not found (3)
                                  
                                  D 1 Antwort Letzte Antwort
                                  0
                                  • D Dellishelly

                                    @mickym

                                    Hab ich erledigt. Leider noch immer kein erfolg :-(

                                    ae89a640-8c48-4fd4-b3c2-2f38262cb865-image.png

                                    javascript.0
                                    2023-09-19 14:16:34.253	error	at Object.<anonymous> (script.js.Lichterprüfen:8:147)
                                    
                                    javascript.0
                                    2023-09-19 14:16:34.253	error	at Object.evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:5558:26)
                                    
                                    javascript.0
                                    2023-09-19 14:16:34.252	error	at evaluate (/opt/iobroker/node_modules/jsonata/jsonata.js:3493:26)
                                    
                                    javascript.0
                                    2023-09-19 14:16:34.252	error	at evaluateUnary (/opt/iobroker/node_modules/jsonata/jsonata.js:3985:26)
                                    
                                    javascript.0
                                    2023-09-19 14:16:34.252	error	at evaluateGroupExpression (/opt/iobroker/node_modules/jsonata/jsonata.js:4349:33)
                                    
                                    javascript.0
                                    2023-09-19 14:16:34.252	error	script.js.Lichterprüfen: Error:
                                    
                                    javascript.0
                                    2023-09-19 14:16:34.249	warn	at Object.<anonymous> (script.js.Lichterprüfen:8:142)
                                    
                                    javascript.0
                                    2023-09-19 14:16:34.248	warn	at script.js.Lichterprüfen:8:52
                                    
                                    javascript.0
                                    2023-09-19 14:16:34.245	warn	getState "[object Object]" not found (3)
                                    
                                    D Offline
                                    D Offline
                                    Dellishelly
                                    schrieb am zuletzt editiert von Dellishelly
                                    #21

                                    @mickym

                                    Bist du sicher dass der hier stimmt ?

                                    $match($,/(.).(.)/).groups[0]

                                    Woher kommt der Pfad ?
                                    Kann ich ihn mir selbst irgendwoher kopieren ?

                                    mickymM 2 Antworten Letzte Antwort
                                    0
                                    • D Dellishelly

                                      @mickym

                                      Bist du sicher dass der hier stimmt ?

                                      $match($,/(.).(.)/).groups[0]

                                      Woher kommt der Pfad ?
                                      Kann ich ihn mir selbst irgendwoher kopieren ?

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

                                      @dellishelly Schau doch mal in dem Du mit debug das topic ausgibst was da steht. Dann lass Dir auch mal den Namen des Datenpunktes ausgeben. Name ist die 2. Spalte in der Objektansicht.

                                      Du kannst das leicht prüfen in dem Du halt mal den Text direkt eingibst.

                                      ebff9b03-186b-4a16-b9dc-24957ae1bd45-image.png

                                      Im Grund wird also nur der vordere Teil abgeschnitten

                                      fa38105c-a84e-446f-9928-9d39f0e1f4ca-image.png

                                      Also aus Couchbeleuchtung.STATE wird Couchbeleuchtung.

                                      Deaktiviere mal alle weiteren Bausteine dann gehen wir Schritt für Schritt vor.

                                      c066590d-004e-415e-a3c2-4001be5e747b-image.png

                                      Wenn der Name bei den Datenpunkten nicht gesetzt ist dann nehmen wir die ID - aber wir wollen ja die Couchbeleuchtung als Eigenschaft aus den Infos herauslösen.

                                      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
                                      • D Dellishelly

                                        @mickym

                                        Bist du sicher dass der hier stimmt ?

                                        $match($,/(.).(.)/).groups[0]

                                        Woher kommt der Pfad ?
                                        Kann ich ihn mir selbst irgendwoher kopieren ?

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

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

                                        @mickym

                                        Bist du sicher dass der hier stimmt ?

                                        $match($,/(.).(.)/).groups[0]

                                        Woher kommt der Pfad ?
                                        Kann ich ihn mir selbst irgendwoher kopieren ?

                                        Zitieren die * fehlen bei dem Befehl - das liegt aber daran weil Du es nicht in CodeTags geschrieben hast.

                                        Du kannst auch wie gesagt die ID nehmen - wir müssen ja nur ermitteln was für eine Lampe es ist. Sonst poste den String, woher er ist (ID oder Name) und dann basteln wir den regulären Ausdruck

                                        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 mickym

                                          @dellishelly Schau doch mal in dem Du mit debug das topic ausgibst was da steht. Dann lass Dir auch mal den Namen des Datenpunktes ausgeben. Name ist die 2. Spalte in der Objektansicht.

                                          Du kannst das leicht prüfen in dem Du halt mal den Text direkt eingibst.

                                          ebff9b03-186b-4a16-b9dc-24957ae1bd45-image.png

                                          Im Grund wird also nur der vordere Teil abgeschnitten

                                          fa38105c-a84e-446f-9928-9d39f0e1f4ca-image.png

                                          Also aus Couchbeleuchtung.STATE wird Couchbeleuchtung.

                                          Deaktiviere mal alle weiteren Bausteine dann gehen wir Schritt für Schritt vor.

                                          c066590d-004e-415e-a3c2-4001be5e747b-image.png

                                          Wenn der Name bei den Datenpunkten nicht gesetzt ist dann nehmen wir die ID - aber wir wollen ja die Couchbeleuchtung als Eigenschaft aus den Infos herauslösen.

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

                                          @mickym

                                          6d1b5dcb-474c-46de-a5fa-a943a24083be-image.png ```

                                          soweit so gut. das gibt er mir nun unten aus

                                          Aber ich komme nicht in die Liste
                                          beim starten des Skripts gibt er mir den debug

                                          
                                          javascript.0
                                          2023-09-19 15:01:31.776	info	script.js.Lichterprüfen: registered 1 subscription, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                                          
                                          javascript.0
                                          2023-09-19 15:01:31.776	error	script.js.Lichterprüfen Error by subscription (trigger): empty ID defined. All states matched.
                                          
                                          javascript.0
                                          2023-09-19 15:01:31.775	warn	at script.js.Lichterprüfen:23:3
                                          
                                          javascript.0
                                          2023-09-19 15:01:31.775	warn	at script.js.Lichterprüfen:10:20
                                          
                                          javascript.0
                                          2023-09-19 15:01:31.773	warn	getState "[object Object]" not found (3)
                                          
                                          javascript.0
                                          2023-09-19 15:01:31.747	info	Start javascript script.js.Lichterprüfen
                                          
                                          javascript.0
                                          2023-09-19 15:01:29.256	info	Stop script script.js.Lichterprüfen
                                          
                                          mickymM 1 Antwort Letzte Antwort
                                          0

                                          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

                                          410

                                          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