Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Mehrere Heizkörper Synchronisiseren, value storm

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    10
    1
    124

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.4k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.3k

Mehrere Heizkörper Synchronisiseren, value storm

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
24 Beiträge 5 Kommentatoren 1.8k Aufrufe 4 Watching
  • Ä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.
  • paul53P paul53

    @smo sagte: zigbee.0 als Ursprung auszuschliessen ergibt aber keinen Effekt.

    Es muss javascript.0 ausgeschlossen werden, um eine Schleife zu verhindern (siehe Post).

    S Offline
    S Offline
    Smo
    schrieb am zuletzt editiert von
    #7

    @paul53 Irgendwas ist hier braun. javascript.0 ausschliessen hilft nix. Wenn ich in den Datenpunkt schaue, komme immer abwechslend javascript, web und zigbee als Absender. Aber selbst wenn ich alle drei ausschliesse, passierts dass die Temperatur beginnt zwischen zwei Werten zu springen wenn ich die nur schnell genug ändere

    paul53P 1 Antwort Letzte Antwort
    0
    • S Smo

      @paul53 Irgendwas ist hier braun. javascript.0 ausschliessen hilft nix. Wenn ich in den Datenpunkt schaue, komme immer abwechslend javascript, web und zigbee als Absender. Aber selbst wenn ich alle drei ausschliesse, passierts dass die Temperatur beginnt zwischen zwei Werten zu springen wenn ich die nur schnell genug ändere

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

      @smo
      Poste bitte den erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

      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

      S 1 Antwort Letzte Antwort
      1
      • paul53P paul53

        @smo
        Poste bitte den erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

        S Offline
        S Offline
        Smo
        schrieb am zuletzt editiert von
        #9

        @paul53 Bitteschön:

        var Kueche, Stube_Ost, Stube_Sued, idZiel1, idZiel2;
        
        
        Kueche = 'zigbee.0.84fd27fffea5aa76.current_heating_setpoint';
        Stube_Ost = 'zigbee.0.84fd27fffea5a776.current_heating_setpoint';
        Stube_Sued = 'zigbee.0.cc86ecfffeb7ff1a.current_heating_setpoint';
        on({id: new RegExp(Kueche + "$|" + Stube_Ost + "$|" + Stube_Sued + "$"), change: "ne"}, async function (obj) {
            if ((obj.state ? obj.state.from : "") != 'system.adapter.javascript.0') {
        
            switch (obj.id) {
            	case Kueche:
              idZiel1 = Stube_Ost;
              idZiel2 = Stube_Sued;
        
            		break;
            	case Stube_Ost:
              idZiel1 = Stube_Sued;
              idZiel2 = Kueche;
        
            		break;
            	default:
              idZiel1 = Kueche;
              idZiel2 = Stube_Ost;
        
            		break;
            }
            setStateDelayed(idZiel1, (obj.state ? obj.state.val : ""), false, parseInt(((0) || "").toString(), 10), false);
            setStateDelayed(idZiel2, (obj.state ? obj.state.val : ""), false, parseInt(((0) || "").toString(), 10), false);
          }
        });
        
        paul53P 1 Antwort Letzte Antwort
        0
        • S Smo

          @paul53 Bitteschön:

          var Kueche, Stube_Ost, Stube_Sued, idZiel1, idZiel2;
          
          
          Kueche = 'zigbee.0.84fd27fffea5aa76.current_heating_setpoint';
          Stube_Ost = 'zigbee.0.84fd27fffea5a776.current_heating_setpoint';
          Stube_Sued = 'zigbee.0.cc86ecfffeb7ff1a.current_heating_setpoint';
          on({id: new RegExp(Kueche + "$|" + Stube_Ost + "$|" + Stube_Sued + "$"), change: "ne"}, async function (obj) {
              if ((obj.state ? obj.state.from : "") != 'system.adapter.javascript.0') {
          
              switch (obj.id) {
              	case Kueche:
                idZiel1 = Stube_Ost;
                idZiel2 = Stube_Sued;
          
              		break;
              	case Stube_Ost:
                idZiel1 = Stube_Sued;
                idZiel2 = Kueche;
          
              		break;
              	default:
                idZiel1 = Kueche;
                idZiel2 = Stube_Ost;
          
              		break;
              }
              setStateDelayed(idZiel1, (obj.state ? obj.state.val : ""), false, parseInt(((0) || "").toString(), 10), false);
              setStateDelayed(idZiel2, (obj.state ? obj.state.val : ""), false, parseInt(((0) || "").toString(), 10), false);
            }
          });
          
          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #10

          @smo
          Danke. Es funktioniert so nicht? Das Skript läuft unter der Javascript-Instanz 0?

          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

          S 2 Antworten Letzte Antwort
          1
          • paul53P paul53

            @smo
            Danke. Es funktioniert so nicht? Das Skript läuft unter der Javascript-Instanz 0?

            S Offline
            S Offline
            Smo
            schrieb am zuletzt editiert von
            #11

            @paul53 Nein, funktioniert nicht. Und ja, javascript.0. Hab auch nur die eine. Ich hab mal schnell ne VIS zamgeklickt und ein Video gemacht: https://streamable.com/61tw6d Am Anfang ändere ich die Temperatur langsam, da gehts. dann klicke ich schneller, und dann wirds wild, dann springts immer hin und her.

            paul53P 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @smo
              Danke. Es funktioniert so nicht? Das Skript läuft unter der Javascript-Instanz 0?

              S Offline
              S Offline
              Smo
              schrieb am zuletzt editiert von
              #12

              @paul53 Noch ein verwackeltes von den Eigenschaften des Datenpunktes https://streamable.com/51doj1

              1 Antwort Letzte Antwort
              0
              • S Smo

                @paul53 Nein, funktioniert nicht. Und ja, javascript.0. Hab auch nur die eine. Ich hab mal schnell ne VIS zamgeklickt und ein Video gemacht: https://streamable.com/61tw6d Am Anfang ändere ich die Temperatur langsam, da gehts. dann klicke ich schneller, und dann wirds wild, dann springts immer hin und her.

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

                @smo sagte: klicke ich schneller, und dann wirds wild, dann springts immer hin und her.

                Dann verzögere mal, bis der Wert stabil ist.

                Bild_2022-04-24_153009270.png

                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

                S 2 Antworten Letzte Antwort
                1
                • paul53P paul53

                  @smo sagte: klicke ich schneller, und dann wirds wild, dann springts immer hin und her.

                  Dann verzögere mal, bis der Wert stabil ist.

                  Bild_2022-04-24_153009270.png

                  S Offline
                  S Offline
                  Smo
                  schrieb am zuletzt editiert von
                  #14

                  @paul53 Jetzt wirds wild. Jetzt updatet er logischerweise nicht mehr, aber das Thermostat auf den der Regler im VIS wirkt springt hin und her. Also beeinflussen sich die drei wahrscheinlich gar nicht so dass sie sich aufschaukeln, sondern der Fehler liegt weiter vorn. Nur wo? Vom VIS ausgehen kanns ja eigentlich nicht, oder? Das schreibt doch einfach den Wert in den DP, und dann ists gut.

                  1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @smo sagte: klicke ich schneller, und dann wirds wild, dann springts immer hin und her.

                    Dann verzögere mal, bis der Wert stabil ist.

                    Bild_2022-04-24_153009270.png

                    S Offline
                    S Offline
                    Smo
                    schrieb am zuletzt editiert von
                    #15

                    @paul53 Kommando zurück: Verzögerung scheint zu helfen. Das Vis buffert scheinbar nur die Eingaben, und da man, um das ausulösen paar mal schnell den Wert ändern muss, sah es so aus, ald würds springen. Hörte dann aber wieder auf, und wurde nicht immer schneller bis zum Absturz wie vorher.

                    Great SUNG 1 Antwort Letzte Antwort
                    0
                    • S Smo

                      @paul53 Kommando zurück: Verzögerung scheint zu helfen. Das Vis buffert scheinbar nur die Eingaben, und da man, um das ausulösen paar mal schnell den Wert ändern muss, sah es so aus, ald würds springen. Hörte dann aber wieder auf, und wurde nicht immer schneller bis zum Absturz wie vorher.

                      Great SUNG Offline
                      Great SUNG Offline
                      Great SUN
                      schrieb am zuletzt editiert von
                      #16

                      @smo @paul53

                      Das mit dem Verzögern halte ich auch für Sinnvoll. Im JS würde ich das in etwa so machen:
                      Erstmal entweder mit $() die Heizkörpergruppe selektieren, oder, wenn das nicht geht, die ID's in einem json Objekt hinterlegen. Dann für alle den Gleichen on request machen:

                      function changeGroupObject(sourceObjId, groupObjListId, settingsJson) {
                          for(const [settingId, settingVal] of Object.entries(settingsJson)) {
                              var currVal = getState(sourceObjId + '.' + settingId).val;
                             if(currVal != settingVal) {
                                 console.log('setting changed after call, ignoring request');
                                 return;
                             }
                         }
                         var groupObjIdArr = JSON.parse(getState(groupObjListId).val);
                         for(const destObjId of groupObjIdArr) {
                             if(destObjId == sourceObjId) {
                                 continue;
                             }
                             for(const [settingId, settingVal] of Object.entries(settingsJson)) {
                                 setState(destObjId + '.' + settingId, settingVal);
                             }
                      }
                      var groupObjIdArr = JSON.parse(getState(groupObjListId).val);
                      var syncSettingArr = ['STATE.temperature', 'STATE.windowopen'];
                      for(const destObjId of groupObjIdArr) {
                          for(const settingId of syncSettingArr) {
                              on({id: destObjId + '.' + settingId, change: 'ne'}, async function(obj) {
                                  setTimeout(function () { changeGroupObject(destObjId, groupObjListId, {settingId: obj.state.val});. 2000); // 2sec, könnte man drüber nachdenken, das zu ändern ;-)
                              })
                          }
                      }
                      

                      Mit dem Code oben könnte man von der Basis her auch noch verschiedene Werte gleichzeitig prüfen und verändern, so dass bei mehreren Änderungen nur ein setState aufgerufen werden muss pro Gerät/Eigenschaft.

                      Ich hoffe, das hilft Dir evtl. etwas ;-)

                      S 1 Antwort Letzte Antwort
                      1
                      • Great SUNG Great SUN

                        @smo @paul53

                        Das mit dem Verzögern halte ich auch für Sinnvoll. Im JS würde ich das in etwa so machen:
                        Erstmal entweder mit $() die Heizkörpergruppe selektieren, oder, wenn das nicht geht, die ID's in einem json Objekt hinterlegen. Dann für alle den Gleichen on request machen:

                        function changeGroupObject(sourceObjId, groupObjListId, settingsJson) {
                            for(const [settingId, settingVal] of Object.entries(settingsJson)) {
                                var currVal = getState(sourceObjId + '.' + settingId).val;
                               if(currVal != settingVal) {
                                   console.log('setting changed after call, ignoring request');
                                   return;
                               }
                           }
                           var groupObjIdArr = JSON.parse(getState(groupObjListId).val);
                           for(const destObjId of groupObjIdArr) {
                               if(destObjId == sourceObjId) {
                                   continue;
                               }
                               for(const [settingId, settingVal] of Object.entries(settingsJson)) {
                                   setState(destObjId + '.' + settingId, settingVal);
                               }
                        }
                        var groupObjIdArr = JSON.parse(getState(groupObjListId).val);
                        var syncSettingArr = ['STATE.temperature', 'STATE.windowopen'];
                        for(const destObjId of groupObjIdArr) {
                            for(const settingId of syncSettingArr) {
                                on({id: destObjId + '.' + settingId, change: 'ne'}, async function(obj) {
                                    setTimeout(function () { changeGroupObject(destObjId, groupObjListId, {settingId: obj.state.val});. 2000); // 2sec, könnte man drüber nachdenken, das zu ändern ;-)
                                })
                            }
                        }
                        

                        Mit dem Code oben könnte man von der Basis her auch noch verschiedene Werte gleichzeitig prüfen und verändern, so dass bei mehreren Änderungen nur ein setState aufgerufen werden muss pro Gerät/Eigenschaft.

                        Ich hoffe, das hilft Dir evtl. etwas ;-)

                        S Offline
                        S Offline
                        Smo
                        schrieb am zuletzt editiert von
                        #17

                        @great-sun Ehrlich gesagt, ich guck da rein wie die Sau ins Uhrwerk. Zu modernes Zeugs für mich. Ich kann Bourne Shell und bissel awk, dann hörts auf :) Drum bin ich ganz dankbar für Blockly, auch wenn man sich da auch manchmal fragt... :) Trotzdem vielen Dank, und auch @paul53 nochmal. Funktioniert alles, und ich bin wieder bissel schlauer.

                        Great SUNG 1 Antwort Letzte Antwort
                        0
                        • S Smo

                          @great-sun Ehrlich gesagt, ich guck da rein wie die Sau ins Uhrwerk. Zu modernes Zeugs für mich. Ich kann Bourne Shell und bissel awk, dann hörts auf :) Drum bin ich ganz dankbar für Blockly, auch wenn man sich da auch manchmal fragt... :) Trotzdem vielen Dank, und auch @paul53 nochmal. Funktioniert alles, und ich bin wieder bissel schlauer.

                          Great SUNG Offline
                          Great SUNG Offline
                          Great SUN
                          schrieb am zuletzt editiert von
                          #18

                          @smo Ich habe im Grunde das setzen der Werte ausgelagert und aus der Gruppenkonfiguration heraus einen onChange Listener gebaut, der auf alle Werte lauscht, die Du synchronisieren willst.

                          Jede Änderung an den Werten eines Gruppenmitglieds führt dazu, dass der Code separat einen Timer mit 2sec anwirft, der dann nach den 2sec eine Funktion aufruft, die prüft, ob der/die Wert(e) sich seit dem Aufruf verändert haben. Ist dem der Fall, macht sie gar nichts.
                          So umgeht man das setzen der Werte egal wie die Zeitliche Abfolge aussieht und ob da irgendwo zwischendrin etwas hängt oder so, denn nur wenn der Wert sich seit dem Aufruf nicht verändert hat (2sec), wird auch etwas synchronisiert.
                          Solltest Du also zum Beispiel einen Wert versehentlich ändern und binnen 2sec wieder zurück setzen, passiert nichts.

                          S 1 Antwort Letzte Antwort
                          0
                          • H Offline
                            H Offline
                            hm_krause
                            schrieb am zuletzt editiert von
                            #19

                            @great-sun

                            Hallo,
                            kannst Du mir bitte Dein Script zur Verfügung stellen.
                            Würde das gern mal nachbauen wollen.
                            MfG

                            Great SUNG 1 Antwort Letzte Antwort
                            0
                            • H hm_krause

                              @great-sun

                              Hallo,
                              kannst Du mir bitte Dein Script zur Verfügung stellen.
                              Würde das gern mal nachbauen wollen.
                              MfG

                              Great SUNG Offline
                              Great SUNG Offline
                              Great SUN
                              schrieb am zuletzt editiert von
                              #20

                              @hm_krause Ich hab alles, was ich dazu geschrieben habe bis jetzt direkt hier geschrieben, aber ich kann Dir gerne mal eine Einführung in das geben, was ich sonst so schreibe, oder das script mit Dir zusammen für Dich machen.

                              1 Antwort Letzte Antwort
                              0
                              • Great SUNG Great SUN

                                @smo Ich habe im Grunde das setzen der Werte ausgelagert und aus der Gruppenkonfiguration heraus einen onChange Listener gebaut, der auf alle Werte lauscht, die Du synchronisieren willst.

                                Jede Änderung an den Werten eines Gruppenmitglieds führt dazu, dass der Code separat einen Timer mit 2sec anwirft, der dann nach den 2sec eine Funktion aufruft, die prüft, ob der/die Wert(e) sich seit dem Aufruf verändert haben. Ist dem der Fall, macht sie gar nichts.
                                So umgeht man das setzen der Werte egal wie die Zeitliche Abfolge aussieht und ob da irgendwo zwischendrin etwas hängt oder so, denn nur wenn der Wert sich seit dem Aufruf nicht verändert hat (2sec), wird auch etwas synchronisiert.
                                Solltest Du also zum Beispiel einen Wert versehentlich ändern und binnen 2sec wieder zurück setzen, passiert nichts.

                                S Offline
                                S Offline
                                Smo
                                schrieb am zuletzt editiert von
                                #21

                                @great-sun Nochmal gegenchecken ob die Änderung nach dem Ablauf des Timers noch genau so besteht ist ne ziemlich gute Idee :) Gleich mit eingebaut:

                                <xml xmlns="https://developers.google.com/blockly/xml">
                                  <variables>
                                    <variable id="xwP+E7r*%:9g!Q/8k!*u">Kueche</variable>
                                    <variable id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</variable>
                                    <variable id="LJYmQ224PvX(za_jPm!_">Stube-Sued</variable>
                                    <variable id="PL6ZeJ*=r3uKgdG-:cQC">Temperatur</variable>
                                    <variable type="timeout" id="timeout">timeout</variable>
                                    <variable id="d|fQQ^z{.5`R~GJleE[U">idZiel1</variable>
                                    <variable id="~avL/#WiGg4U,4l5M5+L">idZiel2</variable>
                                  </variables>
                                  <block type="variables_set" id="}`|5T^zl8rrO05gh{9td" x="-162" y="-362">
                                    <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                    <value name="VALUE">
                                      <block type="field_oid" id="cVcm=hQi#;N[p(`f|saz">
                                        <field name="oid">zigbee.0.84fd27fffea5aa76.current_heating_setpoint</field>
                                      </block>
                                    </value>
                                    <next>
                                      <block type="variables_set" id="D#=Oy8`3ZC$2p8z5,^*o">
                                        <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                        <value name="VALUE">
                                          <block type="field_oid" id=",dWvxR6VD`sHLg2K%Q1B">
                                            <field name="oid">zigbee.0.84fd27fffea5a776.current_heating_setpoint</field>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="variables_set" id=";`XS`L?KTPd/AWs0J:3~">
                                            <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                            <value name="VALUE">
                                              <block type="field_oid" id="Th$Wq$lmufG.x_qeP**b">
                                                <field name="oid">zigbee.0.cc86ecfffeb7ff1a.current_heating_setpoint</field>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="on_ext" id="rNCavHPQHqv[%LtqKZw~">
                                                <mutation xmlns="http://www.w3.org/1999/xhtml" items="3"></mutation>
                                                <field name="CONDITION">ne</field>
                                                <field name="ACK_CONDITION">false</field>
                                                <value name="OID0">
                                                  <shadow type="field_oid" id="]:K7sxy+Z1=fLir+S/O;">
                                                    <field name="oid">zigbee.0.b4e3f9fffe11af85.current_heating_setpoint</field>
                                                  </shadow>
                                                  <block type="variables_get" id="*QY%|A3{Okrmh2OMTG.*">
                                                    <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                                  </block>
                                                </value>
                                                <value name="OID1">
                                                  <shadow type="field_oid" id="uy;(g-Jex[e?@d9?h_]@">
                                                    <field name="oid">default</field>
                                                  </shadow>
                                                  <block type="variables_get" id="P7vBCrFl8E]IT;tc4973">
                                                    <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                                  </block>
                                                </value>
                                                <value name="OID2">
                                                  <shadow type="field_oid" id="J:G4DbTwRa)_X7ShcRnV">
                                                    <field name="oid">default</field>
                                                  </shadow>
                                                  <block type="variables_get" id="sxUf:.!$H]L8MEptV:iv">
                                                    <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                                  </block>
                                                </value>
                                                <statement name="STATEMENT">
                                                  <block type="controls_if" id="oi*@RHmtQ{8m54wIwb[7">
                                                    <value name="IF0">
                                                      <block type="logic_compare" id="GAXt}vZ_/puqs=w9D{t9">
                                                        <field name="OP">NEQ</field>
                                                        <value name="A">
                                                          <block type="on_source" id="^p7CtQ3=z}Fv!JBL:}|6">
                                                            <field name="ATTR">state.from</field>
                                                          </block>
                                                        </value>
                                                        <value name="B">
                                                          <block type="text" id="$=8NvT]JGeg]dQX##U@3">
                                                            <field name="TEXT">system.adapter.javascript.0</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                    <statement name="DO0">
                                                      <block type="variables_set" id="@m)|afm9vfkId3MwaxBg">
                                                        <field name="VAR" id="PL6ZeJ*=r3uKgdG-:cQC">Temperatur</field>
                                                        <value name="VALUE">
                                                          <block type="on_source" id="RRck8Pm/jASL,?|E^eFC">
                                                            <field name="ATTR">state.val</field>
                                                          </block>
                                                        </value>
                                                        <next>
                                                          <block type="timeouts_cleartimeout" id="6qBn%jN)iTq=Rj.z]9oJ">
                                                            <field name="NAME">timeout</field>
                                                            <next>
                                                              <block type="timeouts_settimeout" id=".}%W2Ft85m2#Tu/oT(qK">
                                                                <field name="NAME">timeout</field>
                                                                <field name="DELAY">1500</field>
                                                                <field name="UNIT">ms</field>
                                                                <statement name="STATEMENT">
                                                                  <block type="controls_if" id="C@^DUGSfh(=XA`:)nTOj">
                                                                    <value name="IF0">
                                                                      <block type="logic_compare" id="8ojH(8HOSMs7a@FHhc[d">
                                                                        <field name="OP">EQ</field>
                                                                        <value name="A">
                                                                          <block type="variables_get" id="#a;*GGU,pfWi(ZRlLM[@">
                                                                            <field name="VAR" id="PL6ZeJ*=r3uKgdG-:cQC">Temperatur</field>
                                                                          </block>
                                                                        </value>
                                                                        <value name="B">
                                                                          <block type="get_value_var" id="wzkw~11W=+#OYI0V|Is_">
                                                                            <field name="ATTR">val</field>
                                                                            <value name="OID">
                                                                              <shadow type="text" id="Ok$F/iT$bcwE99!;fKU/">
                                                                                <field name="TEXT"></field>
                                                                              </shadow>
                                                                              <block type="on_source" id="*Qo~ytz3k,oxXfLWBn^W">
                                                                                <field name="ATTR">id</field>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </value>
                                                                      </block>
                                                                    </value>
                                                                    <statement name="DO0">
                                                                      <block type="logic_switch_case" id=".h;5GTblOo.hLH`R;cq#">
                                                                        <mutation xmlns="http://www.w3.org/1999/xhtml" case="1" default="1"></mutation>
                                                                        <value name="CONDITION">
                                                                          <block type="on_source" id="%[P7X^cdD^twDGYo@w]/">
                                                                            <field name="ATTR">id</field>
                                                                          </block>
                                                                        </value>
                                                                        <value name="CASECONDITION0">
                                                                          <block type="variables_get" id="Mgi]C=yW!W,z]xnt_cJw">
                                                                            <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                                                          </block>
                                                                        </value>
                                                                        <statement name="CASE0">
                                                                          <block type="variables_set" id="@lEY@(,h*MTSy:e{caEI">
                                                                            <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                                                            <value name="VALUE">
                                                                              <block type="variables_get" id="t1PcK,}-Vzug_07*0Sgs">
                                                                                <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                                                              </block>
                                                                            </value>
                                                                            <next>
                                                                              <block type="variables_set" id="4}Y3aRhQ].{x$*fr~Owv">
                                                                                <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                                                                <value name="VALUE">
                                                                                  <block type="variables_get" id="OH!Fw#;8r$qP_@y5b!;L">
                                                                                    <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </next>
                                                                          </block>
                                                                        </statement>
                                                                        <value name="CASECONDITION1">
                                                                          <block type="variables_get" id="cS=Esi8cP[@Xq7oe1w,0">
                                                                            <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                                                          </block>
                                                                        </value>
                                                                        <statement name="CASE1">
                                                                          <block type="variables_set" id="HW/iFSllX1%qK+G!o-gV">
                                                                            <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                                                            <value name="VALUE">
                                                                              <block type="variables_get" id="qZVI[pTbd.qFfykJy$lf">
                                                                                <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                                                              </block>
                                                                            </value>
                                                                            <next>
                                                                              <block type="variables_set" id="(Hfwzk)Nd#Zs#ZFY`^=|">
                                                                                <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                                                                <value name="VALUE">
                                                                                  <block type="variables_get" id="N3DfM30dZIj]2{%s|WR0">
                                                                                    <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </next>
                                                                          </block>
                                                                        </statement>
                                                                        <statement name="ONDEFAULT">
                                                                          <block type="variables_set" id="dth`4:`=z]+0HiS*P|%;">
                                                                            <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                                                            <value name="VALUE">
                                                                              <block type="variables_get" id="B-Vde1A]D,6w@^k#_5bq">
                                                                                <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                                                              </block>
                                                                            </value>
                                                                            <next>
                                                                              <block type="variables_set" id="WV,SGvU~}|:J;FR@HO@`">
                                                                                <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                                                                <value name="VALUE">
                                                                                  <block type="variables_get" id="e,2/_qXR3v(S~ZDB:Q#y">
                                                                                    <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </next>
                                                                          </block>
                                                                        </statement>
                                                                        <next>
                                                                          <block type="control_ex" id="m8n(ez~Ih}c!g.tJCO_+" inline="true">
                                                                            <field name="TYPE">false</field>
                                                                            <field name="CLEAR_RUNNING">FALSE</field>
                                                                            <value name="OID">
                                                                              <shadow type="field_oid" id="CTD:j1@O(mDK$,v{Uh;c">
                                                                                <field name="oid">Object ID</field>
                                                                              </shadow>
                                                                              <block type="variables_get" id="f4#m[n3|OFPcq-0cuvX2">
                                                                                <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                                                              </block>
                                                                            </value>
                                                                            <value name="VALUE">
                                                                              <shadow type="logic_boolean" id="+pi$o-3WYA;Hv-`7j^]p">
                                                                                <field name="BOOL">TRUE</field>
                                                                              </shadow>
                                                                              <block type="on_source" id="tc{BuczraO#{E-GtWH:~">
                                                                                <field name="ATTR">state.val</field>
                                                                              </block>
                                                                            </value>
                                                                            <value name="DELAY_MS">
                                                                              <shadow type="math_number" id="`-HY6@Y1WUq`#z6WzM@N">
                                                                                <field name="NUM">0</field>
                                                                              </shadow>
                                                                            </value>
                                                                            <next>
                                                                              <block type="control_ex" id="*8t)fh|aw6pOWtpC4#PW" inline="true">
                                                                                <field name="TYPE">false</field>
                                                                                <field name="CLEAR_RUNNING">FALSE</field>
                                                                                <value name="OID">
                                                                                  <shadow type="field_oid">
                                                                                    <field name="oid">Object ID</field>
                                                                                  </shadow>
                                                                                  <block type="variables_get" id="$wO;{`X9C?,n2q4a/iiq">
                                                                                    <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                                                                  </block>
                                                                                </value>
                                                                                <value name="VALUE">
                                                                                  <shadow type="logic_boolean">
                                                                                    <field name="BOOL">TRUE</field>
                                                                                  </shadow>
                                                                                  <block type="on_source" id="/f,=NCV*|v^xcO4[i_={">
                                                                                    <field name="ATTR">state.val</field>
                                                                                  </block>
                                                                                </value>
                                                                                <value name="DELAY_MS">
                                                                                  <shadow type="math_number" id="n*d/SJvg$g)CYTW}0dD-">
                                                                                    <field name="NUM">0</field>
                                                                                  </shadow>
                                                                                </value>
                                                                              </block>
                                                                            </next>
                                                                          </block>
                                                                        </next>
                                                                      </block>
                                                                    </statement>
                                                                  </block>
                                                                </statement>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </statement>
                                                  </block>
                                                </statement>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </next>
                                  </block>
                                </xml>
                                
                                Great SUNG paul53P 2 Antworten Letzte Antwort
                                0
                                • S Smo

                                  @great-sun Nochmal gegenchecken ob die Änderung nach dem Ablauf des Timers noch genau so besteht ist ne ziemlich gute Idee :) Gleich mit eingebaut:

                                  <xml xmlns="https://developers.google.com/blockly/xml">
                                    <variables>
                                      <variable id="xwP+E7r*%:9g!Q/8k!*u">Kueche</variable>
                                      <variable id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</variable>
                                      <variable id="LJYmQ224PvX(za_jPm!_">Stube-Sued</variable>
                                      <variable id="PL6ZeJ*=r3uKgdG-:cQC">Temperatur</variable>
                                      <variable type="timeout" id="timeout">timeout</variable>
                                      <variable id="d|fQQ^z{.5`R~GJleE[U">idZiel1</variable>
                                      <variable id="~avL/#WiGg4U,4l5M5+L">idZiel2</variable>
                                    </variables>
                                    <block type="variables_set" id="}`|5T^zl8rrO05gh{9td" x="-162" y="-362">
                                      <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                      <value name="VALUE">
                                        <block type="field_oid" id="cVcm=hQi#;N[p(`f|saz">
                                          <field name="oid">zigbee.0.84fd27fffea5aa76.current_heating_setpoint</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="variables_set" id="D#=Oy8`3ZC$2p8z5,^*o">
                                          <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                          <value name="VALUE">
                                            <block type="field_oid" id=",dWvxR6VD`sHLg2K%Q1B">
                                              <field name="oid">zigbee.0.84fd27fffea5a776.current_heating_setpoint</field>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="variables_set" id=";`XS`L?KTPd/AWs0J:3~">
                                              <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                              <value name="VALUE">
                                                <block type="field_oid" id="Th$Wq$lmufG.x_qeP**b">
                                                  <field name="oid">zigbee.0.cc86ecfffeb7ff1a.current_heating_setpoint</field>
                                                </block>
                                              </value>
                                              <next>
                                                <block type="on_ext" id="rNCavHPQHqv[%LtqKZw~">
                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" items="3"></mutation>
                                                  <field name="CONDITION">ne</field>
                                                  <field name="ACK_CONDITION">false</field>
                                                  <value name="OID0">
                                                    <shadow type="field_oid" id="]:K7sxy+Z1=fLir+S/O;">
                                                      <field name="oid">zigbee.0.b4e3f9fffe11af85.current_heating_setpoint</field>
                                                    </shadow>
                                                    <block type="variables_get" id="*QY%|A3{Okrmh2OMTG.*">
                                                      <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                                    </block>
                                                  </value>
                                                  <value name="OID1">
                                                    <shadow type="field_oid" id="uy;(g-Jex[e?@d9?h_]@">
                                                      <field name="oid">default</field>
                                                    </shadow>
                                                    <block type="variables_get" id="P7vBCrFl8E]IT;tc4973">
                                                      <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                                    </block>
                                                  </value>
                                                  <value name="OID2">
                                                    <shadow type="field_oid" id="J:G4DbTwRa)_X7ShcRnV">
                                                      <field name="oid">default</field>
                                                    </shadow>
                                                    <block type="variables_get" id="sxUf:.!$H]L8MEptV:iv">
                                                      <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                                    </block>
                                                  </value>
                                                  <statement name="STATEMENT">
                                                    <block type="controls_if" id="oi*@RHmtQ{8m54wIwb[7">
                                                      <value name="IF0">
                                                        <block type="logic_compare" id="GAXt}vZ_/puqs=w9D{t9">
                                                          <field name="OP">NEQ</field>
                                                          <value name="A">
                                                            <block type="on_source" id="^p7CtQ3=z}Fv!JBL:}|6">
                                                              <field name="ATTR">state.from</field>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <block type="text" id="$=8NvT]JGeg]dQX##U@3">
                                                              <field name="TEXT">system.adapter.javascript.0</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <statement name="DO0">
                                                        <block type="variables_set" id="@m)|afm9vfkId3MwaxBg">
                                                          <field name="VAR" id="PL6ZeJ*=r3uKgdG-:cQC">Temperatur</field>
                                                          <value name="VALUE">
                                                            <block type="on_source" id="RRck8Pm/jASL,?|E^eFC">
                                                              <field name="ATTR">state.val</field>
                                                            </block>
                                                          </value>
                                                          <next>
                                                            <block type="timeouts_cleartimeout" id="6qBn%jN)iTq=Rj.z]9oJ">
                                                              <field name="NAME">timeout</field>
                                                              <next>
                                                                <block type="timeouts_settimeout" id=".}%W2Ft85m2#Tu/oT(qK">
                                                                  <field name="NAME">timeout</field>
                                                                  <field name="DELAY">1500</field>
                                                                  <field name="UNIT">ms</field>
                                                                  <statement name="STATEMENT">
                                                                    <block type="controls_if" id="C@^DUGSfh(=XA`:)nTOj">
                                                                      <value name="IF0">
                                                                        <block type="logic_compare" id="8ojH(8HOSMs7a@FHhc[d">
                                                                          <field name="OP">EQ</field>
                                                                          <value name="A">
                                                                            <block type="variables_get" id="#a;*GGU,pfWi(ZRlLM[@">
                                                                              <field name="VAR" id="PL6ZeJ*=r3uKgdG-:cQC">Temperatur</field>
                                                                            </block>
                                                                          </value>
                                                                          <value name="B">
                                                                            <block type="get_value_var" id="wzkw~11W=+#OYI0V|Is_">
                                                                              <field name="ATTR">val</field>
                                                                              <value name="OID">
                                                                                <shadow type="text" id="Ok$F/iT$bcwE99!;fKU/">
                                                                                  <field name="TEXT"></field>
                                                                                </shadow>
                                                                                <block type="on_source" id="*Qo~ytz3k,oxXfLWBn^W">
                                                                                  <field name="ATTR">id</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                      <statement name="DO0">
                                                                        <block type="logic_switch_case" id=".h;5GTblOo.hLH`R;cq#">
                                                                          <mutation xmlns="http://www.w3.org/1999/xhtml" case="1" default="1"></mutation>
                                                                          <value name="CONDITION">
                                                                            <block type="on_source" id="%[P7X^cdD^twDGYo@w]/">
                                                                              <field name="ATTR">id</field>
                                                                            </block>
                                                                          </value>
                                                                          <value name="CASECONDITION0">
                                                                            <block type="variables_get" id="Mgi]C=yW!W,z]xnt_cJw">
                                                                              <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                                                            </block>
                                                                          </value>
                                                                          <statement name="CASE0">
                                                                            <block type="variables_set" id="@lEY@(,h*MTSy:e{caEI">
                                                                              <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                                                              <value name="VALUE">
                                                                                <block type="variables_get" id="t1PcK,}-Vzug_07*0Sgs">
                                                                                  <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                                                                </block>
                                                                              </value>
                                                                              <next>
                                                                                <block type="variables_set" id="4}Y3aRhQ].{x$*fr~Owv">
                                                                                  <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                                                                  <value name="VALUE">
                                                                                    <block type="variables_get" id="OH!Fw#;8r$qP_@y5b!;L">
                                                                                      <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                                                                    </block>
                                                                                  </value>
                                                                                </block>
                                                                              </next>
                                                                            </block>
                                                                          </statement>
                                                                          <value name="CASECONDITION1">
                                                                            <block type="variables_get" id="cS=Esi8cP[@Xq7oe1w,0">
                                                                              <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                                                            </block>
                                                                          </value>
                                                                          <statement name="CASE1">
                                                                            <block type="variables_set" id="HW/iFSllX1%qK+G!o-gV">
                                                                              <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                                                              <value name="VALUE">
                                                                                <block type="variables_get" id="qZVI[pTbd.qFfykJy$lf">
                                                                                  <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                                                                </block>
                                                                              </value>
                                                                              <next>
                                                                                <block type="variables_set" id="(Hfwzk)Nd#Zs#ZFY`^=|">
                                                                                  <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                                                                  <value name="VALUE">
                                                                                    <block type="variables_get" id="N3DfM30dZIj]2{%s|WR0">
                                                                                      <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                                                                    </block>
                                                                                  </value>
                                                                                </block>
                                                                              </next>
                                                                            </block>
                                                                          </statement>
                                                                          <statement name="ONDEFAULT">
                                                                            <block type="variables_set" id="dth`4:`=z]+0HiS*P|%;">
                                                                              <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                                                              <value name="VALUE">
                                                                                <block type="variables_get" id="B-Vde1A]D,6w@^k#_5bq">
                                                                                  <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                                                                </block>
                                                                              </value>
                                                                              <next>
                                                                                <block type="variables_set" id="WV,SGvU~}|:J;FR@HO@`">
                                                                                  <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                                                                  <value name="VALUE">
                                                                                    <block type="variables_get" id="e,2/_qXR3v(S~ZDB:Q#y">
                                                                                      <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                                                                    </block>
                                                                                  </value>
                                                                                </block>
                                                                              </next>
                                                                            </block>
                                                                          </statement>
                                                                          <next>
                                                                            <block type="control_ex" id="m8n(ez~Ih}c!g.tJCO_+" inline="true">
                                                                              <field name="TYPE">false</field>
                                                                              <field name="CLEAR_RUNNING">FALSE</field>
                                                                              <value name="OID">
                                                                                <shadow type="field_oid" id="CTD:j1@O(mDK$,v{Uh;c">
                                                                                  <field name="oid">Object ID</field>
                                                                                </shadow>
                                                                                <block type="variables_get" id="f4#m[n3|OFPcq-0cuvX2">
                                                                                  <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="VALUE">
                                                                                <shadow type="logic_boolean" id="+pi$o-3WYA;Hv-`7j^]p">
                                                                                  <field name="BOOL">TRUE</field>
                                                                                </shadow>
                                                                                <block type="on_source" id="tc{BuczraO#{E-GtWH:~">
                                                                                  <field name="ATTR">state.val</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="DELAY_MS">
                                                                                <shadow type="math_number" id="`-HY6@Y1WUq`#z6WzM@N">
                                                                                  <field name="NUM">0</field>
                                                                                </shadow>
                                                                              </value>
                                                                              <next>
                                                                                <block type="control_ex" id="*8t)fh|aw6pOWtpC4#PW" inline="true">
                                                                                  <field name="TYPE">false</field>
                                                                                  <field name="CLEAR_RUNNING">FALSE</field>
                                                                                  <value name="OID">
                                                                                    <shadow type="field_oid">
                                                                                      <field name="oid">Object ID</field>
                                                                                    </shadow>
                                                                                    <block type="variables_get" id="$wO;{`X9C?,n2q4a/iiq">
                                                                                      <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                                                                    </block>
                                                                                  </value>
                                                                                  <value name="VALUE">
                                                                                    <shadow type="logic_boolean">
                                                                                      <field name="BOOL">TRUE</field>
                                                                                    </shadow>
                                                                                    <block type="on_source" id="/f,=NCV*|v^xcO4[i_={">
                                                                                      <field name="ATTR">state.val</field>
                                                                                    </block>
                                                                                  </value>
                                                                                  <value name="DELAY_MS">
                                                                                    <shadow type="math_number" id="n*d/SJvg$g)CYTW}0dD-">
                                                                                      <field name="NUM">0</field>
                                                                                    </shadow>
                                                                                  </value>
                                                                                </block>
                                                                              </next>
                                                                            </block>
                                                                          </next>
                                                                        </block>
                                                                      </statement>
                                                                    </block>
                                                                  </statement>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </statement>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </xml>
                                  
                                  Great SUNG Offline
                                  Great SUNG Offline
                                  Great SUN
                                  schrieb am zuletzt editiert von
                                  #22

                                  @smo Freut mich :-)
                                  Aber bis ich Blockly im XML lesen lerne, hab ich mein Smart Home fertig :D

                                  1 Antwort Letzte Antwort
                                  0
                                  • S Smo

                                    @great-sun Nochmal gegenchecken ob die Änderung nach dem Ablauf des Timers noch genau so besteht ist ne ziemlich gute Idee :) Gleich mit eingebaut:

                                    <xml xmlns="https://developers.google.com/blockly/xml">
                                      <variables>
                                        <variable id="xwP+E7r*%:9g!Q/8k!*u">Kueche</variable>
                                        <variable id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</variable>
                                        <variable id="LJYmQ224PvX(za_jPm!_">Stube-Sued</variable>
                                        <variable id="PL6ZeJ*=r3uKgdG-:cQC">Temperatur</variable>
                                        <variable type="timeout" id="timeout">timeout</variable>
                                        <variable id="d|fQQ^z{.5`R~GJleE[U">idZiel1</variable>
                                        <variable id="~avL/#WiGg4U,4l5M5+L">idZiel2</variable>
                                      </variables>
                                      <block type="variables_set" id="}`|5T^zl8rrO05gh{9td" x="-162" y="-362">
                                        <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                        <value name="VALUE">
                                          <block type="field_oid" id="cVcm=hQi#;N[p(`f|saz">
                                            <field name="oid">zigbee.0.84fd27fffea5aa76.current_heating_setpoint</field>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="variables_set" id="D#=Oy8`3ZC$2p8z5,^*o">
                                            <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                            <value name="VALUE">
                                              <block type="field_oid" id=",dWvxR6VD`sHLg2K%Q1B">
                                                <field name="oid">zigbee.0.84fd27fffea5a776.current_heating_setpoint</field>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="variables_set" id=";`XS`L?KTPd/AWs0J:3~">
                                                <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                                <value name="VALUE">
                                                  <block type="field_oid" id="Th$Wq$lmufG.x_qeP**b">
                                                    <field name="oid">zigbee.0.cc86ecfffeb7ff1a.current_heating_setpoint</field>
                                                  </block>
                                                </value>
                                                <next>
                                                  <block type="on_ext" id="rNCavHPQHqv[%LtqKZw~">
                                                    <mutation xmlns="http://www.w3.org/1999/xhtml" items="3"></mutation>
                                                    <field name="CONDITION">ne</field>
                                                    <field name="ACK_CONDITION">false</field>
                                                    <value name="OID0">
                                                      <shadow type="field_oid" id="]:K7sxy+Z1=fLir+S/O;">
                                                        <field name="oid">zigbee.0.b4e3f9fffe11af85.current_heating_setpoint</field>
                                                      </shadow>
                                                      <block type="variables_get" id="*QY%|A3{Okrmh2OMTG.*">
                                                        <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                                      </block>
                                                    </value>
                                                    <value name="OID1">
                                                      <shadow type="field_oid" id="uy;(g-Jex[e?@d9?h_]@">
                                                        <field name="oid">default</field>
                                                      </shadow>
                                                      <block type="variables_get" id="P7vBCrFl8E]IT;tc4973">
                                                        <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                                      </block>
                                                    </value>
                                                    <value name="OID2">
                                                      <shadow type="field_oid" id="J:G4DbTwRa)_X7ShcRnV">
                                                        <field name="oid">default</field>
                                                      </shadow>
                                                      <block type="variables_get" id="sxUf:.!$H]L8MEptV:iv">
                                                        <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                                      </block>
                                                    </value>
                                                    <statement name="STATEMENT">
                                                      <block type="controls_if" id="oi*@RHmtQ{8m54wIwb[7">
                                                        <value name="IF0">
                                                          <block type="logic_compare" id="GAXt}vZ_/puqs=w9D{t9">
                                                            <field name="OP">NEQ</field>
                                                            <value name="A">
                                                              <block type="on_source" id="^p7CtQ3=z}Fv!JBL:}|6">
                                                                <field name="ATTR">state.from</field>
                                                              </block>
                                                            </value>
                                                            <value name="B">
                                                              <block type="text" id="$=8NvT]JGeg]dQX##U@3">
                                                                <field name="TEXT">system.adapter.javascript.0</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </value>
                                                        <statement name="DO0">
                                                          <block type="variables_set" id="@m)|afm9vfkId3MwaxBg">
                                                            <field name="VAR" id="PL6ZeJ*=r3uKgdG-:cQC">Temperatur</field>
                                                            <value name="VALUE">
                                                              <block type="on_source" id="RRck8Pm/jASL,?|E^eFC">
                                                                <field name="ATTR">state.val</field>
                                                              </block>
                                                            </value>
                                                            <next>
                                                              <block type="timeouts_cleartimeout" id="6qBn%jN)iTq=Rj.z]9oJ">
                                                                <field name="NAME">timeout</field>
                                                                <next>
                                                                  <block type="timeouts_settimeout" id=".}%W2Ft85m2#Tu/oT(qK">
                                                                    <field name="NAME">timeout</field>
                                                                    <field name="DELAY">1500</field>
                                                                    <field name="UNIT">ms</field>
                                                                    <statement name="STATEMENT">
                                                                      <block type="controls_if" id="C@^DUGSfh(=XA`:)nTOj">
                                                                        <value name="IF0">
                                                                          <block type="logic_compare" id="8ojH(8HOSMs7a@FHhc[d">
                                                                            <field name="OP">EQ</field>
                                                                            <value name="A">
                                                                              <block type="variables_get" id="#a;*GGU,pfWi(ZRlLM[@">
                                                                                <field name="VAR" id="PL6ZeJ*=r3uKgdG-:cQC">Temperatur</field>
                                                                              </block>
                                                                            </value>
                                                                            <value name="B">
                                                                              <block type="get_value_var" id="wzkw~11W=+#OYI0V|Is_">
                                                                                <field name="ATTR">val</field>
                                                                                <value name="OID">
                                                                                  <shadow type="text" id="Ok$F/iT$bcwE99!;fKU/">
                                                                                    <field name="TEXT"></field>
                                                                                  </shadow>
                                                                                  <block type="on_source" id="*Qo~ytz3k,oxXfLWBn^W">
                                                                                    <field name="ATTR">id</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </value>
                                                                        <statement name="DO0">
                                                                          <block type="logic_switch_case" id=".h;5GTblOo.hLH`R;cq#">
                                                                            <mutation xmlns="http://www.w3.org/1999/xhtml" case="1" default="1"></mutation>
                                                                            <value name="CONDITION">
                                                                              <block type="on_source" id="%[P7X^cdD^twDGYo@w]/">
                                                                                <field name="ATTR">id</field>
                                                                              </block>
                                                                            </value>
                                                                            <value name="CASECONDITION0">
                                                                              <block type="variables_get" id="Mgi]C=yW!W,z]xnt_cJw">
                                                                                <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                                                              </block>
                                                                            </value>
                                                                            <statement name="CASE0">
                                                                              <block type="variables_set" id="@lEY@(,h*MTSy:e{caEI">
                                                                                <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                                                                <value name="VALUE">
                                                                                  <block type="variables_get" id="t1PcK,}-Vzug_07*0Sgs">
                                                                                    <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                                                                  </block>
                                                                                </value>
                                                                                <next>
                                                                                  <block type="variables_set" id="4}Y3aRhQ].{x$*fr~Owv">
                                                                                    <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                                                                    <value name="VALUE">
                                                                                      <block type="variables_get" id="OH!Fw#;8r$qP_@y5b!;L">
                                                                                        <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                                                                      </block>
                                                                                    </value>
                                                                                  </block>
                                                                                </next>
                                                                              </block>
                                                                            </statement>
                                                                            <value name="CASECONDITION1">
                                                                              <block type="variables_get" id="cS=Esi8cP[@Xq7oe1w,0">
                                                                                <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                                                              </block>
                                                                            </value>
                                                                            <statement name="CASE1">
                                                                              <block type="variables_set" id="HW/iFSllX1%qK+G!o-gV">
                                                                                <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                                                                <value name="VALUE">
                                                                                  <block type="variables_get" id="qZVI[pTbd.qFfykJy$lf">
                                                                                    <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                                                                  </block>
                                                                                </value>
                                                                                <next>
                                                                                  <block type="variables_set" id="(Hfwzk)Nd#Zs#ZFY`^=|">
                                                                                    <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                                                                    <value name="VALUE">
                                                                                      <block type="variables_get" id="N3DfM30dZIj]2{%s|WR0">
                                                                                        <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                                                                      </block>
                                                                                    </value>
                                                                                  </block>
                                                                                </next>
                                                                              </block>
                                                                            </statement>
                                                                            <statement name="ONDEFAULT">
                                                                              <block type="variables_set" id="dth`4:`=z]+0HiS*P|%;">
                                                                                <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                                                                <value name="VALUE">
                                                                                  <block type="variables_get" id="B-Vde1A]D,6w@^k#_5bq">
                                                                                    <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                                                                  </block>
                                                                                </value>
                                                                                <next>
                                                                                  <block type="variables_set" id="WV,SGvU~}|:J;FR@HO@`">
                                                                                    <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                                                                    <value name="VALUE">
                                                                                      <block type="variables_get" id="e,2/_qXR3v(S~ZDB:Q#y">
                                                                                        <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                                                                      </block>
                                                                                    </value>
                                                                                  </block>
                                                                                </next>
                                                                              </block>
                                                                            </statement>
                                                                            <next>
                                                                              <block type="control_ex" id="m8n(ez~Ih}c!g.tJCO_+" inline="true">
                                                                                <field name="TYPE">false</field>
                                                                                <field name="CLEAR_RUNNING">FALSE</field>
                                                                                <value name="OID">
                                                                                  <shadow type="field_oid" id="CTD:j1@O(mDK$,v{Uh;c">
                                                                                    <field name="oid">Object ID</field>
                                                                                  </shadow>
                                                                                  <block type="variables_get" id="f4#m[n3|OFPcq-0cuvX2">
                                                                                    <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                                                                  </block>
                                                                                </value>
                                                                                <value name="VALUE">
                                                                                  <shadow type="logic_boolean" id="+pi$o-3WYA;Hv-`7j^]p">
                                                                                    <field name="BOOL">TRUE</field>
                                                                                  </shadow>
                                                                                  <block type="on_source" id="tc{BuczraO#{E-GtWH:~">
                                                                                    <field name="ATTR">state.val</field>
                                                                                  </block>
                                                                                </value>
                                                                                <value name="DELAY_MS">
                                                                                  <shadow type="math_number" id="`-HY6@Y1WUq`#z6WzM@N">
                                                                                    <field name="NUM">0</field>
                                                                                  </shadow>
                                                                                </value>
                                                                                <next>
                                                                                  <block type="control_ex" id="*8t)fh|aw6pOWtpC4#PW" inline="true">
                                                                                    <field name="TYPE">false</field>
                                                                                    <field name="CLEAR_RUNNING">FALSE</field>
                                                                                    <value name="OID">
                                                                                      <shadow type="field_oid">
                                                                                        <field name="oid">Object ID</field>
                                                                                      </shadow>
                                                                                      <block type="variables_get" id="$wO;{`X9C?,n2q4a/iiq">
                                                                                        <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                                                                      </block>
                                                                                    </value>
                                                                                    <value name="VALUE">
                                                                                      <shadow type="logic_boolean">
                                                                                        <field name="BOOL">TRUE</field>
                                                                                      </shadow>
                                                                                      <block type="on_source" id="/f,=NCV*|v^xcO4[i_={">
                                                                                        <field name="ATTR">state.val</field>
                                                                                      </block>
                                                                                    </value>
                                                                                    <value name="DELAY_MS">
                                                                                      <shadow type="math_number" id="n*d/SJvg$g)CYTW}0dD-">
                                                                                        <field name="NUM">0</field>
                                                                                      </shadow>
                                                                                    </value>
                                                                                  </block>
                                                                                </next>
                                                                              </block>
                                                                            </next>
                                                                          </block>
                                                                        </statement>
                                                                      </block>
                                                                    </statement>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </statement>
                                                      </block>
                                                    </statement>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </xml>
                                    
                                    paul53P Offline
                                    paul53P Offline
                                    paul53
                                    schrieb am zuletzt editiert von paul53
                                    #23

                                    @smo sagte: ob die Änderung nach dem Ablauf des Timers noch genau so besteht ist ne ziemlich gute Idee

                                    Diese zusätzliche Abfrage ist sinnlos: Hätte sich der Wert innerhalb der Verzögerungszeit geändert, würde getriggert, der Timer gestoppt und neu gestartet. Eine Wertänderung während der Verzögerung führt also zu keiner Aktion.

                                    Anmerkung: Bei Trigger auf "unbestätigte Änderung" kann der Sollwert nicht mehr an einem Thermostat für alle 3 Thermostate geändert werden. Geräte senden immer "bestätigt".

                                    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

                                    S 1 Antwort Letzte Antwort
                                    1
                                    • paul53P paul53

                                      @smo sagte: ob die Änderung nach dem Ablauf des Timers noch genau so besteht ist ne ziemlich gute Idee

                                      Diese zusätzliche Abfrage ist sinnlos: Hätte sich der Wert innerhalb der Verzögerungszeit geändert, würde getriggert, der Timer gestoppt und neu gestartet. Eine Wertänderung während der Verzögerung führt also zu keiner Aktion.

                                      Anmerkung: Bei Trigger auf "unbestätigte Änderung" kann der Sollwert nicht mehr an einem Thermostat für alle 3 Thermostate geändert werden. Geräte senden immer "bestätigt".

                                      S Offline
                                      S Offline
                                      Smo
                                      schrieb am zuletzt editiert von
                                      #24

                                      @paul53 Hast recht. Mit beidem :) Man sollte sowas nicht nebenbei auf der Arbeit machen :)

                                      1 Antwort Letzte Antwort
                                      0
                                      Antworten
                                      • In einem neuen Thema antworten
                                      Anmelden zum Antworten
                                      • Älteste zuerst
                                      • Neuste zuerst
                                      • Meiste Stimmen


                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      335

                                      Online

                                      32.5k

                                      Benutzer

                                      81.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