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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. iobroker, MQTT und Shelly - Was geht wie?

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

iobroker, MQTT und Shelly - Was geht wie?

Scheduled Pinned Locked Moved ioBroker Allgemein
167 Posts 10 Posters 49.2k Views 10 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • TH GT TH G

    @mickym

    Funktioniert so:

    Bildschirm­foto 2023-02-23 um 16.59.52.png

    Ich habe noch gesehen, dass unter Status auch die Temperaturen einzeln ankommen. Das würde das Blockly wohl deutlich vereinfachen oder?

    Bildschirm­foto 2023-02-23 um 17.14.30.png

    mickymM Online
    mickymM Online
    mickym
    Most Active
    wrote on last edited by mickym
    #54

    @th-g klar wäre das viel einfacher du könntest direkt das Attribut tC des Objektes in die Datenpunkt e schreiben und die Datenpunkte getrennt abfragen. Auf die Prüfung der id kannst dann verzichten.

    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.

    TH GT 1 Reply Last reply
    0
    • mickymM mickym

      @th-g klar wäre das viel einfacher du könntest direkt das Attribut tC des Objektes in die Datenpunkt e schreiben und die Datenpunkte getrennt abfragen. Auf die Prüfung der id kannst dann verzichten.

      TH GT Offline
      TH GT Offline
      TH G
      wrote on last edited by
      #55

      @mickym

      Ich finde das sehr verwirrend bei MQTT. Ist das immer so, dass die Daten an unterschiedlichen Stellen stehen?

      mickymM 1 Reply Last reply
      0
      • TH GT TH G

        @mickym

        Ich finde das sehr verwirrend bei MQTT. Ist das immer so, dass die Daten an unterschiedlichen Stellen stehen?

        mickymM Online
        mickymM Online
        mickym
        Most Active
        wrote on last edited by
        #56

        @th-g in der Generation 2 ist es komplexer wenn ich daheim bin suche ich mal den Link. Hat schon System. Ich zeig dir dann noch 2 Varianten mit einzelnen Datenpunkten.

        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.

        mickymM 1 Reply Last reply
        1
        • mickymM mickym

          @th-g in der Generation 2 ist es komplexer wenn ich daheim bin suche ich mal den Link. Hat schon System. Ich zeig dir dann noch 2 Varianten mit einzelnen Datenpunkten.

          mickymM Online
          mickymM Online
          mickym
          Most Active
          wrote on last edited by mickym
          #57

          @mickym So Du musst halt bei Deinem Gerät schauen : https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Switch#status

          Hier für den Shelly 1 Plus - vielleicht geht auch noch eine andere Methode den zu schalten. Nicht nur über den rpc Datenpunkt:
          https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Switch#status

          584ece66-5cb5-4bed-9300-4e5ebbda729b-image.png

          Erstelle mal einen Ordner unter Deinem Shelly:

          command

          und dann einen Datenpunkt: switch:0 und da schreibst mal on und off rein oder on,1 - vielleicht switched dann Dein Schalter nach einer Sekunde wieder zurück.

          Ansonsten ist im /events/rpc alles was der Shelly sonst selbst meldet wenn nicht im Status und der Ast (bei Dir user_1) kommt aus Deinem rpc Kommando. Du kannst verschiedene User angeben, die dann unter einem eigenen Namen was publishen. Das ist erst alles mit der Generation2 so. Das hat den Vorteil einen User im eigenen RPC anzugeben, da Du dann quasi auch in unterschiedlichen RPC Calls (zum Beispiel Blocklies) die Antwort unter unterschiedlichen topics Dir ausgeben lassen kannst.

          Bockly folgt später.

          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 Reply Last reply
          0
          • TH GT TH G

            @mickym

            Funktioniert so:

            Bildschirm­foto 2023-02-23 um 16.59.52.png

            Ich habe noch gesehen, dass unter Status auch die Temperaturen einzeln ankommen. Das würde das Blockly wohl deutlich vereinfachen oder?

            Bildschirm­foto 2023-02-23 um 17.14.30.png

            mickymM Online
            mickymM Online
            mickym
            Most Active
            wrote on last edited by mickym
            #58

            @th-g So hier die erste Vereinfachung - einfach die Datenpunkte einzeln triggern lassen:

            60f53772-46d3-44ea-88c7-86011864b535-image.png

            <xml xmlns="https://developers.google.com/blockly/xml">
             <block type="on" id="a}k/B^QTub@J%E5dJ|pC" x="-13" y="688">
               <field name="OID">0_userdata.0.test0.test.temperature:100</field>
               <field name="CONDITION">ne</field>
               <field name="ACK_CONDITION"></field>
               <statement name="STATEMENT">
                 <block type="debug" id="s-|Jl5zYA9X1`UMZt$}r">
                   <field name="Severity">log</field>
                   <value name="TEXT">
                     <shadow type="text" id="q~.$g9ZGc_=:Cy!G_H`l">
                       <field name="TEXT">test</field>
                     </shadow>
                     <block type="text_join" id="N2xj0`=Yf)W5T!wi8QCn">
                       <mutation items="2"></mutation>
                       <value name="ADD0">
                         <block type="text" id="`C`,kpO1O5n0kDM[gl@P">
                           <field name="TEXT">Ansaugluft: </field>
                         </block>
                       </value>
                       <value name="ADD1">
                         <block type="get_attr" id="G-LpRTHoLe$aehb1w`Rb">
                           <value name="PATH">
                             <shadow type="text" id="?q7NTiKTg@JtdMgq5scX">
                               <field name="TEXT">tC</field>
                             </shadow>
                           </value>
                           <value name="OBJECT">
                             <block type="on_source" id="tldQ}a(xD}q%H]0E([a`">
                               <field name="ATTR">state.val</field>
                             </block>
                           </value>
                         </block>
                       </value>
                     </block>
                   </value>
                   <next>
                     <block type="update" id=".Lf^d}Ob9pX]:ZH:cZWy" disabled="true">
                       <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                       <field name="OID">Object ID</field>
                       <field name="WITH_DELAY">FALSE</field>
                       <value name="VALUE">
                         <block type="get_attr" id="$8GKiNoofme:dUOYQD?a">
                           <value name="PATH">
                             <shadow type="text" id="~Hch_u6oO:D+Uze36~(~">
                               <field name="TEXT">tC</field>
                             </shadow>
                           </value>
                           <value name="OBJECT">
                             <block type="on_source" id="Bg7$(BB5=Jan5-xfg~Kx">
                               <field name="ATTR">state.val</field>
                             </block>
                           </value>
                         </block>
                       </value>
                     </block>
                   </next>
                 </block>
               </statement>
               <next>
                 <block type="on" id="0XwZXKyuDaab|q.nPuCd">
                   <field name="OID">0_userdata.0.test0.test.temperature:101</field>
                   <field name="CONDITION">ne</field>
                   <field name="ACK_CONDITION"></field>
                   <statement name="STATEMENT">
                     <block type="debug" id="%,?p^$iA9M[Zt(if8^,v">
                       <field name="Severity">log</field>
                       <value name="TEXT">
                         <shadow type="text" id="+!]Pxz1($g-eCm0K,3MG">
                           <field name="TEXT">test</field>
                         </shadow>
                         <block type="text_join" id="YuY0,s6+TAB,gZ|[DKnq">
                           <mutation items="2"></mutation>
                           <value name="ADD0">
                             <block type="text" id="liH$7~DHa;#y,flx:0!6">
                               <field name="TEXT">Zuluft: </field>
                             </block>
                           </value>
                           <value name="ADD1">
                             <block type="get_attr" id="O,Xo7tA6Dm%]aNEFvj=}">
                               <value name="PATH">
                                 <shadow type="text" id="ize*PfWN?]+V9Q,Z5COg">
                                   <field name="TEXT">tC</field>
                                 </shadow>
                               </value>
                               <value name="OBJECT">
                                 <block type="on_source" id="2V^zuCqRdEhSt{3K@qMQ">
                                   <field name="ATTR">state.val</field>
                                 </block>
                               </value>
                             </block>
                           </value>
                         </block>
                       </value>
                     </block>
                   </statement>
                   <next>
                     <block type="on" id="]fpct~=(9RY,gh/Qr%6s">
                       <field name="OID">0_userdata.0.test0.test.temperature:102</field>
                       <field name="CONDITION">ne</field>
                       <field name="ACK_CONDITION"></field>
                       <statement name="STATEMENT">
                         <block type="debug" id="#{/hC/_x/c=)[r=I3;sI">
                           <field name="Severity">log</field>
                           <value name="TEXT">
                             <shadow type="text" id="ABz2wpsk}ric{cqY~i4|">
                               <field name="TEXT">test</field>
                             </shadow>
                             <block type="text_join" id="(=llnRfO{Dg+QJ,{3b+K">
                               <mutation items="2"></mutation>
                               <value name="ADD0">
                                 <block type="text" id="K:%Ur(V~2.7X}~rd}rhR">
                                   <field name="TEXT">Abluft. </field>
                                 </block>
                               </value>
                               <value name="ADD1">
                                 <block type="get_attr" id="*ljvq2C_Og98)|gU@K;J">
                                   <value name="PATH">
                                     <shadow type="text" id="GW+:X(Q#A,@I*LbYT;gF">
                                       <field name="TEXT">tC</field>
                                     </shadow>
                                   </value>
                                   <value name="OBJECT">
                                     <block type="on_source" id="WAK_N{-75Ey$?3;Hj3|u">
                                       <field name="ATTR">state.val</field>
                                     </block>
                                   </value>
                                 </block>
                               </value>
                             </block>
                           </value>
                         </block>
                       </statement>
                     </block>
                   </next>
                 </block>
               </next>
             </block>
            </xml>
            

            zweite Vereinfachung - alles in einem Trigger - hier muss man die ID wieder selektieren aber der Zugriff auf die Eigenschaften ist easy:

            ba33a929-c448-4dd1-a3db-39734f4c9ef1-image.png

            <xml xmlns="https://developers.google.com/blockly/xml">
             <variables>
               <variable id="[a]yK.@;lwe0hytxaDXA">id</variable>
             </variables>
             <block type="on_ext" id="duM0}v3uz%0%DY+(bTuU" x="-537" y="-312">
               <mutation xmlns="http://www.w3.org/1999/xhtml" items="3"></mutation>
               <field name="CONDITION">ne</field>
               <field name="ACK_CONDITION"></field>
               <value name="OID0">
                 <shadow type="field_oid" id="mD:]e7oEWiavExzl9;GD">
                   <field name="oid">0_userdata.0.test0.test.temperature:100</field>
                 </shadow>
               </value>
               <value name="OID1">
                 <shadow type="field_oid" id="Nf[6bLs)::GGL_v}.3W7">
                   <field name="oid">0_userdata.0.test0.test.temperature:101</field>
                 </shadow>
               </value>
               <value name="OID2">
                 <shadow type="field_oid" id=";+X8ZOvZQfF30`JG8Lpw">
                   <field name="oid">0_userdata.0.test0.test.temperature:102</field>
                 </shadow>
               </value>
               <statement name="STATEMENT">
                 <block type="variables_set" id="-}*p(~s(a|ZGkXG;icH)">
                   <field name="VAR" id="[a]yK.@;lwe0hytxaDXA">id</field>
                   <value name="VALUE">
                     <block type="get_attr" id="~c9H+gET+XUUOBh[$9L@">
                       <value name="PATH">
                         <shadow type="text" id="FpaW/vGe6AGc)^U2]e4b">
                           <field name="TEXT">id</field>
                         </shadow>
                       </value>
                       <value name="OBJECT">
                         <block type="on_source" id="C|[J^?OqD*:Eo5.^?}%u">
                           <field name="ATTR">state.val</field>
                         </block>
                       </value>
                     </block>
                   </value>
                   <next>
                     <block type="logic_switch_case" id="eDw]M3uC~U,_5LpDbk~]">
                       <mutation xmlns="http://www.w3.org/1999/xhtml" case="2"></mutation>
                       <value name="CONDITION">
                         <block type="variables_get" id="/IZ8gTN:2x6hAl08h9P!">
                           <field name="VAR" id="[a]yK.@;lwe0hytxaDXA">id</field>
                         </block>
                       </value>
                       <value name="CASECONDITION0">
                         <block type="math_number" id="IPxmhuKO0jg*SJ.RoB4|">
                           <field name="NUM">100</field>
                         </block>
                       </value>
                       <statement name="CASE0">
                         <block type="debug" id=";H{?Hu($};lv9agjb^mM">
                           <field name="Severity">log</field>
                           <value name="TEXT">
                             <shadow type="text" id="k%BLf~H|$%e)J`k0Xr=B">
                               <field name="TEXT">test</field>
                             </shadow>
                             <block type="text_join" id="N2xj0`=Yf)W5T!wi8QCn">
                               <mutation items="2"></mutation>
                               <value name="ADD0">
                                 <block type="text" id="`C`,kpO1O5n0kDM[gl@P">
                                   <field name="TEXT">Ansaugluft: </field>
                                 </block>
                               </value>
                               <value name="ADD1">
                                 <block type="get_attr" id="G-LpRTHoLe$aehb1w`Rb">
                                   <value name="PATH">
                                     <shadow type="text" id="?q7NTiKTg@JtdMgq5scX">
                                       <field name="TEXT">tC</field>
                                     </shadow>
                                   </value>
                                   <value name="OBJECT">
                                     <block type="on_source" id="tldQ}a(xD}q%H]0E([a`">
                                       <field name="ATTR">state.val</field>
                                     </block>
                                   </value>
                                 </block>
                               </value>
                             </block>
                           </value>
                         </block>
                       </statement>
                       <value name="CASECONDITION1">
                         <block type="math_number" id="SbXAsK^ElrJs,!R7NBJ8">
                           <field name="NUM">101</field>
                         </block>
                       </value>
                       <statement name="CASE1">
                         <block type="debug" id="w:_qaJ%=8y-;G0nL3}!~">
                           <field name="Severity">log</field>
                           <value name="TEXT">
                             <shadow type="text">
                               <field name="TEXT">test</field>
                             </shadow>
                             <block type="text_join" id=",T8p5e(]GUGMr}VT?Hk@">
                               <mutation items="2"></mutation>
                               <value name="ADD0">
                                 <block type="text" id="Lco@yDP8Re?@2UDI{S_0">
                                   <field name="TEXT">Zuluft: </field>
                                 </block>
                               </value>
                               <value name="ADD1">
                                 <block type="get_attr" id="Rk(W8BY+`E;dF4YU%Y$]">
                                   <value name="PATH">
                                     <shadow type="text" id="=IV1RuSJEeXp-y0W.RZ5">
                                       <field name="TEXT">tC</field>
                                     </shadow>
                                   </value>
                                   <value name="OBJECT">
                                     <block type="on_source" id="KwLx},`R;y|vCF^SJA^k">
                                       <field name="ATTR">state.val</field>
                                     </block>
                                   </value>
                                 </block>
                               </value>
                             </block>
                           </value>
                         </block>
                       </statement>
                       <value name="CASECONDITION2">
                         <block type="math_number" id="RG,@2Ci(sYY90v)BSKaj">
                           <field name="NUM">102</field>
                         </block>
                       </value>
                       <statement name="CASE2">
                         <block type="debug" id="cA2pV5M)8DRL0w|aSz^J">
                           <field name="Severity">log</field>
                           <value name="TEXT">
                             <shadow type="text">
                               <field name="TEXT">test</field>
                             </shadow>
                             <block type="text_join" id="-gEcC9oqiRv/syjd|_b1">
                               <mutation items="2"></mutation>
                               <value name="ADD0">
                                 <block type="text" id="wjjiHE|%orae0E,#)1`W">
                                   <field name="TEXT">Abluft: </field>
                                 </block>
                               </value>
                               <value name="ADD1">
                                 <block type="get_attr" id="2sk?+G]l!,x9cwe4YG4V">
                                   <value name="PATH">
                                     <shadow type="text" id="Gb?H=VyW`%YxMOR/a)Dl">
                                       <field name="TEXT">tC</field>
                                     </shadow>
                                   </value>
                                   <value name="OBJECT">
                                     <block type="on_source" id=":tW^geR{l`}l.;Kio}M-">
                                       <field name="ATTR">state.val</field>
                                     </block>
                                   </value>
                                 </block>
                               </value>
                             </block>
                           </value>
                         </block>
                       </statement>
                     </block>
                   </next>
                 </block>
               </statement>
             </block>
            </xml>
            

            Aber nun wieder genug gepuzzelt - das können andere besser als ich.

            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.

            TH GT 1 Reply Last reply
            0
            • mickymM mickym

              @th-g So hier die erste Vereinfachung - einfach die Datenpunkte einzeln triggern lassen:

              60f53772-46d3-44ea-88c7-86011864b535-image.png

              <xml xmlns="https://developers.google.com/blockly/xml">
               <block type="on" id="a}k/B^QTub@J%E5dJ|pC" x="-13" y="688">
                 <field name="OID">0_userdata.0.test0.test.temperature:100</field>
                 <field name="CONDITION">ne</field>
                 <field name="ACK_CONDITION"></field>
                 <statement name="STATEMENT">
                   <block type="debug" id="s-|Jl5zYA9X1`UMZt$}r">
                     <field name="Severity">log</field>
                     <value name="TEXT">
                       <shadow type="text" id="q~.$g9ZGc_=:Cy!G_H`l">
                         <field name="TEXT">test</field>
                       </shadow>
                       <block type="text_join" id="N2xj0`=Yf)W5T!wi8QCn">
                         <mutation items="2"></mutation>
                         <value name="ADD0">
                           <block type="text" id="`C`,kpO1O5n0kDM[gl@P">
                             <field name="TEXT">Ansaugluft: </field>
                           </block>
                         </value>
                         <value name="ADD1">
                           <block type="get_attr" id="G-LpRTHoLe$aehb1w`Rb">
                             <value name="PATH">
                               <shadow type="text" id="?q7NTiKTg@JtdMgq5scX">
                                 <field name="TEXT">tC</field>
                               </shadow>
                             </value>
                             <value name="OBJECT">
                               <block type="on_source" id="tldQ}a(xD}q%H]0E([a`">
                                 <field name="ATTR">state.val</field>
                               </block>
                             </value>
                           </block>
                         </value>
                       </block>
                     </value>
                     <next>
                       <block type="update" id=".Lf^d}Ob9pX]:ZH:cZWy" disabled="true">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                         <field name="OID">Object ID</field>
                         <field name="WITH_DELAY">FALSE</field>
                         <value name="VALUE">
                           <block type="get_attr" id="$8GKiNoofme:dUOYQD?a">
                             <value name="PATH">
                               <shadow type="text" id="~Hch_u6oO:D+Uze36~(~">
                                 <field name="TEXT">tC</field>
                               </shadow>
                             </value>
                             <value name="OBJECT">
                               <block type="on_source" id="Bg7$(BB5=Jan5-xfg~Kx">
                                 <field name="ATTR">state.val</field>
                               </block>
                             </value>
                           </block>
                         </value>
                       </block>
                     </next>
                   </block>
                 </statement>
                 <next>
                   <block type="on" id="0XwZXKyuDaab|q.nPuCd">
                     <field name="OID">0_userdata.0.test0.test.temperature:101</field>
                     <field name="CONDITION">ne</field>
                     <field name="ACK_CONDITION"></field>
                     <statement name="STATEMENT">
                       <block type="debug" id="%,?p^$iA9M[Zt(if8^,v">
                         <field name="Severity">log</field>
                         <value name="TEXT">
                           <shadow type="text" id="+!]Pxz1($g-eCm0K,3MG">
                             <field name="TEXT">test</field>
                           </shadow>
                           <block type="text_join" id="YuY0,s6+TAB,gZ|[DKnq">
                             <mutation items="2"></mutation>
                             <value name="ADD0">
                               <block type="text" id="liH$7~DHa;#y,flx:0!6">
                                 <field name="TEXT">Zuluft: </field>
                               </block>
                             </value>
                             <value name="ADD1">
                               <block type="get_attr" id="O,Xo7tA6Dm%]aNEFvj=}">
                                 <value name="PATH">
                                   <shadow type="text" id="ize*PfWN?]+V9Q,Z5COg">
                                     <field name="TEXT">tC</field>
                                   </shadow>
                                 </value>
                                 <value name="OBJECT">
                                   <block type="on_source" id="2V^zuCqRdEhSt{3K@qMQ">
                                     <field name="ATTR">state.val</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </value>
                       </block>
                     </statement>
                     <next>
                       <block type="on" id="]fpct~=(9RY,gh/Qr%6s">
                         <field name="OID">0_userdata.0.test0.test.temperature:102</field>
                         <field name="CONDITION">ne</field>
                         <field name="ACK_CONDITION"></field>
                         <statement name="STATEMENT">
                           <block type="debug" id="#{/hC/_x/c=)[r=I3;sI">
                             <field name="Severity">log</field>
                             <value name="TEXT">
                               <shadow type="text" id="ABz2wpsk}ric{cqY~i4|">
                                 <field name="TEXT">test</field>
                               </shadow>
                               <block type="text_join" id="(=llnRfO{Dg+QJ,{3b+K">
                                 <mutation items="2"></mutation>
                                 <value name="ADD0">
                                   <block type="text" id="K:%Ur(V~2.7X}~rd}rhR">
                                     <field name="TEXT">Abluft. </field>
                                   </block>
                                 </value>
                                 <value name="ADD1">
                                   <block type="get_attr" id="*ljvq2C_Og98)|gU@K;J">
                                     <value name="PATH">
                                       <shadow type="text" id="GW+:X(Q#A,@I*LbYT;gF">
                                         <field name="TEXT">tC</field>
                                       </shadow>
                                     </value>
                                     <value name="OBJECT">
                                       <block type="on_source" id="WAK_N{-75Ey$?3;Hj3|u">
                                         <field name="ATTR">state.val</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </statement>
                       </block>
                     </next>
                   </block>
                 </next>
               </block>
              </xml>
              

              zweite Vereinfachung - alles in einem Trigger - hier muss man die ID wieder selektieren aber der Zugriff auf die Eigenschaften ist easy:

              ba33a929-c448-4dd1-a3db-39734f4c9ef1-image.png

              <xml xmlns="https://developers.google.com/blockly/xml">
               <variables>
                 <variable id="[a]yK.@;lwe0hytxaDXA">id</variable>
               </variables>
               <block type="on_ext" id="duM0}v3uz%0%DY+(bTuU" x="-537" y="-312">
                 <mutation xmlns="http://www.w3.org/1999/xhtml" items="3"></mutation>
                 <field name="CONDITION">ne</field>
                 <field name="ACK_CONDITION"></field>
                 <value name="OID0">
                   <shadow type="field_oid" id="mD:]e7oEWiavExzl9;GD">
                     <field name="oid">0_userdata.0.test0.test.temperature:100</field>
                   </shadow>
                 </value>
                 <value name="OID1">
                   <shadow type="field_oid" id="Nf[6bLs)::GGL_v}.3W7">
                     <field name="oid">0_userdata.0.test0.test.temperature:101</field>
                   </shadow>
                 </value>
                 <value name="OID2">
                   <shadow type="field_oid" id=";+X8ZOvZQfF30`JG8Lpw">
                     <field name="oid">0_userdata.0.test0.test.temperature:102</field>
                   </shadow>
                 </value>
                 <statement name="STATEMENT">
                   <block type="variables_set" id="-}*p(~s(a|ZGkXG;icH)">
                     <field name="VAR" id="[a]yK.@;lwe0hytxaDXA">id</field>
                     <value name="VALUE">
                       <block type="get_attr" id="~c9H+gET+XUUOBh[$9L@">
                         <value name="PATH">
                           <shadow type="text" id="FpaW/vGe6AGc)^U2]e4b">
                             <field name="TEXT">id</field>
                           </shadow>
                         </value>
                         <value name="OBJECT">
                           <block type="on_source" id="C|[J^?OqD*:Eo5.^?}%u">
                             <field name="ATTR">state.val</field>
                           </block>
                         </value>
                       </block>
                     </value>
                     <next>
                       <block type="logic_switch_case" id="eDw]M3uC~U,_5LpDbk~]">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" case="2"></mutation>
                         <value name="CONDITION">
                           <block type="variables_get" id="/IZ8gTN:2x6hAl08h9P!">
                             <field name="VAR" id="[a]yK.@;lwe0hytxaDXA">id</field>
                           </block>
                         </value>
                         <value name="CASECONDITION0">
                           <block type="math_number" id="IPxmhuKO0jg*SJ.RoB4|">
                             <field name="NUM">100</field>
                           </block>
                         </value>
                         <statement name="CASE0">
                           <block type="debug" id=";H{?Hu($};lv9agjb^mM">
                             <field name="Severity">log</field>
                             <value name="TEXT">
                               <shadow type="text" id="k%BLf~H|$%e)J`k0Xr=B">
                                 <field name="TEXT">test</field>
                               </shadow>
                               <block type="text_join" id="N2xj0`=Yf)W5T!wi8QCn">
                                 <mutation items="2"></mutation>
                                 <value name="ADD0">
                                   <block type="text" id="`C`,kpO1O5n0kDM[gl@P">
                                     <field name="TEXT">Ansaugluft: </field>
                                   </block>
                                 </value>
                                 <value name="ADD1">
                                   <block type="get_attr" id="G-LpRTHoLe$aehb1w`Rb">
                                     <value name="PATH">
                                       <shadow type="text" id="?q7NTiKTg@JtdMgq5scX">
                                         <field name="TEXT">tC</field>
                                       </shadow>
                                     </value>
                                     <value name="OBJECT">
                                       <block type="on_source" id="tldQ}a(xD}q%H]0E([a`">
                                         <field name="ATTR">state.val</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </statement>
                         <value name="CASECONDITION1">
                           <block type="math_number" id="SbXAsK^ElrJs,!R7NBJ8">
                             <field name="NUM">101</field>
                           </block>
                         </value>
                         <statement name="CASE1">
                           <block type="debug" id="w:_qaJ%=8y-;G0nL3}!~">
                             <field name="Severity">log</field>
                             <value name="TEXT">
                               <shadow type="text">
                                 <field name="TEXT">test</field>
                               </shadow>
                               <block type="text_join" id=",T8p5e(]GUGMr}VT?Hk@">
                                 <mutation items="2"></mutation>
                                 <value name="ADD0">
                                   <block type="text" id="Lco@yDP8Re?@2UDI{S_0">
                                     <field name="TEXT">Zuluft: </field>
                                   </block>
                                 </value>
                                 <value name="ADD1">
                                   <block type="get_attr" id="Rk(W8BY+`E;dF4YU%Y$]">
                                     <value name="PATH">
                                       <shadow type="text" id="=IV1RuSJEeXp-y0W.RZ5">
                                         <field name="TEXT">tC</field>
                                       </shadow>
                                     </value>
                                     <value name="OBJECT">
                                       <block type="on_source" id="KwLx},`R;y|vCF^SJA^k">
                                         <field name="ATTR">state.val</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </statement>
                         <value name="CASECONDITION2">
                           <block type="math_number" id="RG,@2Ci(sYY90v)BSKaj">
                             <field name="NUM">102</field>
                           </block>
                         </value>
                         <statement name="CASE2">
                           <block type="debug" id="cA2pV5M)8DRL0w|aSz^J">
                             <field name="Severity">log</field>
                             <value name="TEXT">
                               <shadow type="text">
                                 <field name="TEXT">test</field>
                               </shadow>
                               <block type="text_join" id="-gEcC9oqiRv/syjd|_b1">
                                 <mutation items="2"></mutation>
                                 <value name="ADD0">
                                   <block type="text" id="wjjiHE|%orae0E,#)1`W">
                                     <field name="TEXT">Abluft: </field>
                                   </block>
                                 </value>
                                 <value name="ADD1">
                                   <block type="get_attr" id="2sk?+G]l!,x9cwe4YG4V">
                                     <value name="PATH">
                                       <shadow type="text" id="Gb?H=VyW`%YxMOR/a)Dl">
                                         <field name="TEXT">tC</field>
                                       </shadow>
                                     </value>
                                     <value name="OBJECT">
                                       <block type="on_source" id=":tW^geR{l`}l.;Kio}M-">
                                         <field name="ATTR">state.val</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </statement>
                       </block>
                     </next>
                   </block>
                 </statement>
               </block>
              </xml>
              

              Aber nun wieder genug gepuzzelt - das können andere besser als ich.

              TH GT Offline
              TH GT Offline
              TH G
              wrote on last edited by
              #59

              @mickym

              Du bist ja ganz schön fit in den Dingen. Für mich ist das schon schwierig alles zu verstehen. Ich werde mir auch RedNode mal ansehen, denn das was ich dort schon gesehen habe, hat ja einen ganz anderen Ansatz.

              mickymM 1 Reply Last reply
              0
              • TH GT TH G

                @mickym

                Du bist ja ganz schön fit in den Dingen. Für mich ist das schon schwierig alles zu verstehen. Ich werde mir auch RedNode mal ansehen, denn das was ich dort schon gesehen habe, hat ja einen ganz anderen Ansatz.

                mickymM Online
                mickymM Online
                mickym
                Most Active
                wrote on last edited by
                #60

                @th-g Der logische Ansatz ist immer der gleiche -

                Etwas triggert (Du selbst manuell, eine Hardware, ein zeitliches Ereignis) und Du gibst was aus oder steuerst was. Dazwischen kann man Bedingungen einfügen oder die Daten aufbereiten - das ist bei allen Logikmaschinen gleich .
                Bei NodeRed hast Du halt viele Nodes - die bestimmte Teile (wie ein Unterprogramm für Dich erledigen) und deshalb nicht selbst programmiert werden müssen. Wenn ich Dir dabei helfen soll - gerne. :)

                Probierst Du das mal mit dem Datenpunkt unter command und dem on,1 aus - würde mich interessieren, ob damit Dein Tor steuerbar ist.

                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.

                TH GT 1 Reply Last reply
                0
                • mickymM mickym

                  @th-g Der logische Ansatz ist immer der gleiche -

                  Etwas triggert (Du selbst manuell, eine Hardware, ein zeitliches Ereignis) und Du gibst was aus oder steuerst was. Dazwischen kann man Bedingungen einfügen oder die Daten aufbereiten - das ist bei allen Logikmaschinen gleich .
                  Bei NodeRed hast Du halt viele Nodes - die bestimmte Teile (wie ein Unterprogramm für Dich erledigen) und deshalb nicht selbst programmiert werden müssen. Wenn ich Dir dabei helfen soll - gerne. :)

                  Probierst Du das mal mit dem Datenpunkt unter command und dem on,1 aus - würde mich interessieren, ob damit Dein Tor steuerbar ist.

                  TH GT Offline
                  TH GT Offline
                  TH G
                  wrote on last edited by
                  #61

                  @mickym

                  Ja werde ich machen aber ich komme da erst am WE zu.

                  Nochmals Danke für deine Geduld und Hilfe

                  TH GT 1 Reply Last reply
                  0
                  • TH GT TH G

                    @mickym

                    Ja werde ich machen aber ich komme da erst am WE zu.

                    Nochmals Danke für deine Geduld und Hilfe

                    TH GT Offline
                    TH GT Offline
                    TH G
                    wrote on last edited by
                    #62

                    @mickym

                    Hallo und ich hab da mal wieder eine kleine Problemstellung. Habe einen neuen Shelly und möchte hier Temperatur und Luftfeuchtigkeit im VIS anzeigen lassen.

                    Ich dachte ich könnte das Blockly von oben nehmen aber irgendwie habe ich da wohl etwas falsch geändert. Ich würde mich nochmals sehr über Hilfe freuen :-)

                    Bildschirmfoto 2023-07-04 um 21.36.16.png

                    So kommen die Daten über MQTT:

                    Bildschirmfoto 2023-07-04 um 21.42.25.png

                    mickymM 1 Reply Last reply
                    1
                    • TH GT TH G

                      @mickym

                      Hallo und ich hab da mal wieder eine kleine Problemstellung. Habe einen neuen Shelly und möchte hier Temperatur und Luftfeuchtigkeit im VIS anzeigen lassen.

                      Ich dachte ich könnte das Blockly von oben nehmen aber irgendwie habe ich da wohl etwas falsch geändert. Ich würde mich nochmals sehr über Hilfe freuen :-)

                      Bildschirmfoto 2023-07-04 um 21.36.16.png

                      So kommen die Daten über MQTT:

                      Bildschirmfoto 2023-07-04 um 21.42.25.png

                      mickymM Online
                      mickymM Online
                      mickym
                      Most Active
                      wrote on last edited by mickym
                      #63

                      @th-g Verstehe ich nicht. Du triggert hier auf einen rpc datenpunkt. Du musst doch direkt die Datenpunkte nehmen, wo die Temperatur bzw. Luftfeuchtigkeit drinsteht.

                      Du musst doch auf diese beiden DP triggern:

                      38d15085-4fa1-417d-a971-68695bf37c00-image.png

                      Wenn es um die Anzeige im VIS geht - würde ich über ein Alias die Temperatur und Luftfeuchte extrahieren - da brauchst kein Blockly

                      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.

                      TH GT 1 Reply Last reply
                      1
                      • mickymM mickym

                        @th-g Verstehe ich nicht. Du triggert hier auf einen rpc datenpunkt. Du musst doch direkt die Datenpunkte nehmen, wo die Temperatur bzw. Luftfeuchtigkeit drinsteht.

                        Du musst doch auf diese beiden DP triggern:

                        38d15085-4fa1-417d-a971-68695bf37c00-image.png

                        Wenn es um die Anzeige im VIS geht - würde ich über ein Alias die Temperatur und Luftfeuchte extrahieren - da brauchst kein Blockly

                        TH GT Offline
                        TH GT Offline
                        TH G
                        wrote on last edited by
                        #64

                        @mickym sagte in iobroker, MQTT und Shelly - Was geht wie?:

                        Wenn es um die Anzeige im VIS geht - würde ich über ein Alias die Temperatur und Luftfeuchte extrahieren - da brauchst kein Blockly

                        Oh ok und wie mache ich das bzw. wo kann ich nachlesen wie das geht?

                        mickymM 2 Replies Last reply
                        0
                        • TH GT TH G

                          @mickym sagte in iobroker, MQTT und Shelly - Was geht wie?:

                          Wenn es um die Anzeige im VIS geht - würde ich über ein Alias die Temperatur und Luftfeuchte extrahieren - da brauchst kein Blockly

                          Oh ok und wie mache ich das bzw. wo kann ich nachlesen wie das geht?

                          mickymM Online
                          mickymM Online
                          mickym
                          Most Active
                          wrote on last edited by
                          #65

                          @th-g Warte ich habe das schon mal genauestens beschrieben - suche nur den Thread wieder.

                          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 Reply Last reply
                          1
                          • TH GT TH G

                            @mickym sagte in iobroker, MQTT und Shelly - Was geht wie?:

                            Wenn es um die Anzeige im VIS geht - würde ich über ein Alias die Temperatur und Luftfeuchte extrahieren - da brauchst kein Blockly

                            Oh ok und wie mache ich das bzw. wo kann ich nachlesen wie das geht?

                            mickymM Online
                            mickymM Online
                            mickym
                            Most Active
                            wrote on last edited by mickym
                            #66

                            @th-g sagte in iobroker, MQTT und Shelly - Was geht wie?:

                            @mickym sagte in iobroker, MQTT und Shelly - Was geht wie?:

                            Wenn es um die Anzeige im VIS geht - würde ich über ein Alias die Temperatur und Luftfeuchte extrahieren - da brauchst kein Blockly

                            Oh ok und wie mache ich das bzw. wo kann ich nachlesen wie das geht?

                            Hier habe ich es genau beschrieben: https://forum.iobroker.net/post/980575

                            Du kannst es aber auch mit Blockly machen. Wie gesagt triggere einfach auf die entsprechenden Datenpunkte.

                            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.

                            TH GT 1 Reply Last reply
                            1
                            • mickymM mickym

                              @th-g sagte in iobroker, MQTT und Shelly - Was geht wie?:

                              @mickym sagte in iobroker, MQTT und Shelly - Was geht wie?:

                              Wenn es um die Anzeige im VIS geht - würde ich über ein Alias die Temperatur und Luftfeuchte extrahieren - da brauchst kein Blockly

                              Oh ok und wie mache ich das bzw. wo kann ich nachlesen wie das geht?

                              Hier habe ich es genau beschrieben: https://forum.iobroker.net/post/980575

                              Du kannst es aber auch mit Blockly machen. Wie gesagt triggere einfach auf die entsprechenden Datenpunkte.

                              TH GT Offline
                              TH GT Offline
                              TH G
                              wrote on last edited by
                              #67

                              @mickym

                              Super hat funktioniert mit dem Alias.

                              Danke

                              mickymM 1 Reply Last reply
                              0
                              • TH GT TH G

                                @mickym

                                Super hat funktioniert mit dem Alias.

                                Danke

                                mickymM Online
                                mickymM Online
                                mickym
                                Most Active
                                wrote on last edited by
                                #68

                                @th-g Das wäre die Blockly Lösung auch nicht kompliziert:

                                25f9970e-8645-4e43-bdb5-3d2502bfb1c8-image.png

                                Du triggerst auf den Temperaturpunkt und aktualisierst Deinen Datenpunkt mit dem Attribut tC aus dem Objekt.#

                                <xml xmlns="https://developers.google.com/blockly/xml">
                                 <block type="on_ext" id="vpP2(|y+0b9[r*lro6(W" x="-1087" y="-262">
                                   <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="*,S!U7P~JngOc9QgXBGf">
                                       <field name="oid">0_userdata.0.Test.temperature</field>
                                     </shadow>
                                   </value>
                                   <statement name="STATEMENT">
                                     <block type="debug" id="gHg9b!{ZoLT[SZ-euU:B">
                                       <field name="Severity">log</field>
                                       <value name="TEXT">
                                         <shadow type="text" id="r:}]Vw07P_w=FqsvVrwt">
                                           <field name="TEXT">test</field>
                                         </shadow>
                                         <block type="get_attr" id="8-52eBa}@%~e8?44xxj,">
                                           <value name="PATH">
                                             <shadow type="text" id="qBtaIWaV/o][qH=2C@/$">
                                               <field name="TEXT">tC</field>
                                             </shadow>
                                           </value>
                                           <value name="OBJECT">
                                             <block type="on_source" id="t6wW.^2u]uf#KvPiAy}3">
                                               <field name="ATTR">state.val</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="update" id="EmWw]L+cSy0.[1$WGV_L">
                                           <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                           <field name="OID">0_userdata.0.Test.Temperaturen.Bad.Temperatur</field>
                                           <field name="WITH_DELAY">FALSE</field>
                                           <value name="VALUE">
                                             <block type="get_attr" id="Mw{3A7i!}W2bpVA/I{CR">
                                               <value name="PATH">
                                                 <shadow type="text" id="c+G%n.}l7|EB_noT.3+#">
                                                   <field name="TEXT">tC</field>
                                                 </shadow>
                                               </value>
                                               <value name="OBJECT">
                                                 <block type="on_source" id="QpF62#GqqRu=cdjtY)gt">
                                                   <field name="ATTR">state.val</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                         </block>
                                       </next>
                                     </block>
                                   </statement>
                                 </block>
                                </xml>
                                

                                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.

                                TH GT 1 Reply Last reply
                                1
                                • mickymM mickym

                                  @th-g Das wäre die Blockly Lösung auch nicht kompliziert:

                                  25f9970e-8645-4e43-bdb5-3d2502bfb1c8-image.png

                                  Du triggerst auf den Temperaturpunkt und aktualisierst Deinen Datenpunkt mit dem Attribut tC aus dem Objekt.#

                                  <xml xmlns="https://developers.google.com/blockly/xml">
                                   <block type="on_ext" id="vpP2(|y+0b9[r*lro6(W" x="-1087" y="-262">
                                     <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="*,S!U7P~JngOc9QgXBGf">
                                         <field name="oid">0_userdata.0.Test.temperature</field>
                                       </shadow>
                                     </value>
                                     <statement name="STATEMENT">
                                       <block type="debug" id="gHg9b!{ZoLT[SZ-euU:B">
                                         <field name="Severity">log</field>
                                         <value name="TEXT">
                                           <shadow type="text" id="r:}]Vw07P_w=FqsvVrwt">
                                             <field name="TEXT">test</field>
                                           </shadow>
                                           <block type="get_attr" id="8-52eBa}@%~e8?44xxj,">
                                             <value name="PATH">
                                               <shadow type="text" id="qBtaIWaV/o][qH=2C@/$">
                                                 <field name="TEXT">tC</field>
                                               </shadow>
                                             </value>
                                             <value name="OBJECT">
                                               <block type="on_source" id="t6wW.^2u]uf#KvPiAy}3">
                                                 <field name="ATTR">state.val</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                         <next>
                                           <block type="update" id="EmWw]L+cSy0.[1$WGV_L">
                                             <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                             <field name="OID">0_userdata.0.Test.Temperaturen.Bad.Temperatur</field>
                                             <field name="WITH_DELAY">FALSE</field>
                                             <value name="VALUE">
                                               <block type="get_attr" id="Mw{3A7i!}W2bpVA/I{CR">
                                                 <value name="PATH">
                                                   <shadow type="text" id="c+G%n.}l7|EB_noT.3+#">
                                                     <field name="TEXT">tC</field>
                                                   </shadow>
                                                 </value>
                                                 <value name="OBJECT">
                                                   <block type="on_source" id="QpF62#GqqRu=cdjtY)gt">
                                                     <field name="ATTR">state.val</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                           </block>
                                         </next>
                                       </block>
                                     </statement>
                                   </block>
                                  </xml>
                                  

                                  TH GT Offline
                                  TH GT Offline
                                  TH G
                                  wrote on last edited by
                                  #69

                                  @mickym sagte in iobroker, MQTT und Shelly - Was geht wie?:

                                  @th-g Das wäre die Blockly Lösung auch nicht kompliziert:

                                  Was ist denn aus deiner Sicht der ideale Weg? Ich finde das mit dem Alis eigentlich sehr gut, weil ich direkt mit dem Alias auch im Blockly arbeiten könnte.

                                  Gäbe es eigentlich im Alias auch die Möglichkeit, den Punkt durch ein Komma zu ersetzen, denn derzeit kommen alle Werte mit einem Punkt also z.B. 23.5 °C

                                  mickymM 1 Reply Last reply
                                  0
                                  • TH GT TH G

                                    @mickym sagte in iobroker, MQTT und Shelly - Was geht wie?:

                                    @th-g Das wäre die Blockly Lösung auch nicht kompliziert:

                                    Was ist denn aus deiner Sicht der ideale Weg? Ich finde das mit dem Alis eigentlich sehr gut, weil ich direkt mit dem Alias auch im Blockly arbeiten könnte.

                                    Gäbe es eigentlich im Alias auch die Möglichkeit, den Punkt durch ein Komma zu ersetzen, denn derzeit kommen alle Werte mit einem Punkt also z.B. 23.5 °C

                                    mickymM Online
                                    mickymM Online
                                    mickym
                                    Most Active
                                    wrote on last edited by mickym
                                    #70

                                    @th-g Ja - aber dann werden das Strings - da Javascript natürlich immer mit US Zahlen rechnet. Du kannst den Alias Datenpunkt als String umdeklarieren und in der Konvertierung gibst Du

                                    6db75909-c115-4741-a2d9-dea1977b3e2d-image.png 22542aae-e7dd-4aa9-a6cf-6b194bd76432-image.png

                                    JSON.parse(val).tC.toLocaleString('de-DE')
                                    

                                    ein.

                                    Dann kommt ein String raus - aber mit deutscher Schreibweise:
                                    9fb6edcb-33aa-4533-a72d-e5d5dd11d183-image.png

                                    Ansonsten ist die Lösung mit Alias eine gute Lösung und in meinen Augen auch zu präferieren. Ich hab das mit dem Blockly nur begonnen, weil Du das am Anfang so wolltest.

                                    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.

                                    TH GT 1 Reply Last reply
                                    1
                                    • mickymM mickym

                                      @th-g Ja - aber dann werden das Strings - da Javascript natürlich immer mit US Zahlen rechnet. Du kannst den Alias Datenpunkt als String umdeklarieren und in der Konvertierung gibst Du

                                      6db75909-c115-4741-a2d9-dea1977b3e2d-image.png 22542aae-e7dd-4aa9-a6cf-6b194bd76432-image.png

                                      JSON.parse(val).tC.toLocaleString('de-DE')
                                      

                                      ein.

                                      Dann kommt ein String raus - aber mit deutscher Schreibweise:
                                      9fb6edcb-33aa-4533-a72d-e5d5dd11d183-image.png

                                      Ansonsten ist die Lösung mit Alias eine gute Lösung und in meinen Augen auch zu präferieren. Ich hab das mit dem Blockly nur begonnen, weil Du das am Anfang so wolltest.

                                      TH GT Offline
                                      TH GT Offline
                                      TH G
                                      wrote on last edited by
                                      #71

                                      @mickym

                                      Ich bin wieder begeistert von deiner Unterstützung und Erklärungen. Schade, dass ich von diesem Thema keine Ahnung habe.

                                      Danke

                                      mickymM 1 Reply Last reply
                                      0
                                      • TH GT TH G

                                        @mickym

                                        Ich bin wieder begeistert von deiner Unterstützung und Erklärungen. Schade, dass ich von diesem Thema keine Ahnung habe.

                                        Danke

                                        mickymM Online
                                        mickymM Online
                                        mickym
                                        Most Active
                                        wrote on last edited by
                                        #72

                                        @th-g Na freut mich - na manchmal muss ich auch bissi recherchieren - und vielleicht schaust Du Dir auch mal NodeRed anstelle von Blockly an, wenn Du Lust hast, vielleicht hilft Dir das ja auch. ;)

                                        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.

                                        TH GT 1 Reply Last reply
                                        1
                                        • mickymM mickym

                                          @th-g Na freut mich - na manchmal muss ich auch bissi recherchieren - und vielleicht schaust Du Dir auch mal NodeRed anstelle von Blockly an, wenn Du Lust hast, vielleicht hilft Dir das ja auch. ;)

                                          TH GT Offline
                                          TH GT Offline
                                          TH G
                                          wrote on last edited by
                                          #73

                                          @mickym

                                          Kurzes Update. Alles läuft und ich habe auch weitere Sensordaten auf Alias umgestellt.

                                          Ein kleines Problem gibt es aber. Ich kann Alias nicht nutzen, um in Skripten Aktionen durchzuführen. Irgendwie werden die Werte nicht richtig "erkannt/gelesen"

                                          mickymM 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          677

                                          Online

                                          32.6k

                                          Users

                                          82.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe