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. ioBroker Allgemein
  4. [gelöst] Fensterkontakt steuert Thermostat - Logikfehler?

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    14
    1
    262

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.8k

[gelöst] Fensterkontakt steuert Thermostat - Logikfehler?

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
fensterkontakt tado
34 Beiträge 3 Kommentatoren 3.5k Aufrufe 2 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

    @Slowman sagte:

    Sollte der Script so jetzt laufen?

    Der Trigger für die Heizperiode verwendet sicherlich einen falschen Datenpunkt. Ansonsten sieht es aus Blockly-Ansicht plausibel aus. Um es genau beurteilen zu können, poste bitte den erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

    SlowmanS Offline
    SlowmanS Offline
    Slowman
    schrieb am zuletzt editiert von
    #13

    @paul53

    Den Datenpunkt mit true (aktiv) erstellt, aber wie greift der Script darauf zu?

    Screenshot_2020-12-14 objects - ioBroker.png

    und die Javaausgabe :

    var Heizperiode, Heizung, Meldung;
    
    
    // Fensterkontakt
    on({id: 'zigbee.0.00158d0004524503.opened', change: "ne"}, function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      if (Heizperiode) {
        if ((obj.state ? obj.state.val : "")) {
          // Variablen
          Heizung = 'OFF';
          Meldung = 'Fenster offen';
        } else {
          Heizung = 'ON';
          Meldung = 'Fenster geschlossen';
          // Heizung wird auf Automatik gestellt
          setStateDelayed("tado.0.125400.Rooms.8.overlay.clearZoneOverlay"/*Clear Zone Overlay*/, true, 120000, false);
        }
        if (getState("tado.0.125400.Rooms.8.setting.power").val != Heizung) {
          // Heizung on
          setStateDelayed("tado.0.125400.Rooms.8.setting.power"/*Power*/, Heizung, 60000, false);
        }
        sendTo("telegram", "send", {
            text: Meldung
        });
      }
    });
    
    on({id: 'tado.0.125400.Rooms.8.setting.power', change: "ne"}, function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      Heizperiode = (obj.state ? obj.state.val : "");
      if (!Heizperiode) {
        // Heizung on
        setState("tado.0.125400.Rooms.8.setting.power"/*Power*/, 'OFF');
      }
    });
    
    // Heizung on off Tado Datenpunkt
    
    paul53P 1 Antwort Letzte Antwort
    0
    • SlowmanS Slowman

      @paul53

      Den Datenpunkt mit true (aktiv) erstellt, aber wie greift der Script darauf zu?

      Screenshot_2020-12-14 objects - ioBroker.png

      und die Javaausgabe :

      var Heizperiode, Heizung, Meldung;
      
      
      // Fensterkontakt
      on({id: 'zigbee.0.00158d0004524503.opened', change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        if (Heizperiode) {
          if ((obj.state ? obj.state.val : "")) {
            // Variablen
            Heizung = 'OFF';
            Meldung = 'Fenster offen';
          } else {
            Heizung = 'ON';
            Meldung = 'Fenster geschlossen';
            // Heizung wird auf Automatik gestellt
            setStateDelayed("tado.0.125400.Rooms.8.overlay.clearZoneOverlay"/*Clear Zone Overlay*/, true, 120000, false);
          }
          if (getState("tado.0.125400.Rooms.8.setting.power").val != Heizung) {
            // Heizung on
            setStateDelayed("tado.0.125400.Rooms.8.setting.power"/*Power*/, Heizung, 60000, false);
          }
          sendTo("telegram", "send", {
              text: Meldung
          });
        }
      });
      
      on({id: 'tado.0.125400.Rooms.8.setting.power', change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        Heizperiode = (obj.state ? obj.state.val : "");
        if (!Heizperiode) {
          // Heizung on
          setState("tado.0.125400.Rooms.8.setting.power"/*Power*/, 'OFF');
        }
      });
      
      // Heizung on off Tado Datenpunkt
      
      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #14

      @Slowman sagte:

      on({id: 'tado.0.125400.Rooms.8.setting.power', change: "ne"}, function (obj) {

      Wie schon gesagt: Der Datenpunkt taugt nicht für die Heizperiode. Der Rest passt.
      Bei den Verzögerungen sollte man den Haken bei "löschen falls läuft" setzen, da sonst mehrere Timer laufen können.

      @Slowman sagte in Fensterkontakt steuert Thermostat - Logikfehler?:

      aber wie greift der Script darauf zu?

      Den Datenpunkt dem zweiten Trigger per Select ID zuweisen.

      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

      SlowmanS 1 Antwort Letzte Antwort
      1
      • paul53P paul53

        @Slowman sagte:

        on({id: 'tado.0.125400.Rooms.8.setting.power', change: "ne"}, function (obj) {

        Wie schon gesagt: Der Datenpunkt taugt nicht für die Heizperiode. Der Rest passt.
        Bei den Verzögerungen sollte man den Haken bei "löschen falls läuft" setzen, da sonst mehrere Timer laufen können.

        @Slowman sagte in Fensterkontakt steuert Thermostat - Logikfehler?:

        aber wie greift der Script darauf zu?

        Den Datenpunkt dem zweiten Trigger per Select ID zuweisen.

        SlowmanS Offline
        SlowmanS Offline
        Slowman
        schrieb am zuletzt editiert von Slowman
        #15

        @paul53

        So, denke mal da sich es verstanden habe, was du geschrieben hast. Dürfte jetzt korrekt sein.

        var Heizperiode, Heizung, Meldung;
        
        
        // Fensterkontakt
        on({id: 'zigbee.0.00158d0004524503.opened', change: "ne"}, function (obj) {
          var value = obj.state.val;
          var oldValue = obj.oldState.val;
          if (Heizperiode) {
            if ((obj.state ? obj.state.val : "")) {
              // Variablen
              Heizung = 'OFF';
              Meldung = 'Fenster offen';
            } else {
              Heizung = 'ON';
              Meldung = 'Fenster geschlossen';
              // Heizung wird auf Automatik gestellt
              setStateDelayed("tado.0.125400.Rooms.8.overlay.clearZoneOverlay"/*Clear Zone Overlay*/, true, 120000, true);
            }
            if (getState("tado.0.125400.Rooms.8.setting.power").val != Heizung) {
              // Heizung on
              setStateDelayed("tado.0.125400.Rooms.8.setting.power"/*Power*/, Heizung, 60000, true);
            }
            sendTo("telegram", "send", {
                text: Meldung
            });
          }
        });
        
        on({id: 'javascript.0.Eigene_Datenpunkte.Heizung.Heizperiode', change: "ne"}, function (obj) {
          var value = obj.state.val;
          var oldValue = obj.oldState.val;
          Heizperiode = (obj.state ? obj.state.val : "");
          if (!Heizperiode) {
            // Heizung on
            setState("tado.0.125400.Rooms.8.setting.power"/*Power*/, 'OFF');
          }
        });
        
        // Heiperiode Datenpunkt gesetzt
        

        Der letzte Blockly ist dafür da, das wenn DP Heizperiode false ist, der obrige Blockly gar nicht erst gestartet wird, richtig?

        paul53P 1 Antwort Letzte Antwort
        0
        • SlowmanS Slowman

          @paul53

          So, denke mal da sich es verstanden habe, was du geschrieben hast. Dürfte jetzt korrekt sein.

          var Heizperiode, Heizung, Meldung;
          
          
          // Fensterkontakt
          on({id: 'zigbee.0.00158d0004524503.opened', change: "ne"}, function (obj) {
            var value = obj.state.val;
            var oldValue = obj.oldState.val;
            if (Heizperiode) {
              if ((obj.state ? obj.state.val : "")) {
                // Variablen
                Heizung = 'OFF';
                Meldung = 'Fenster offen';
              } else {
                Heizung = 'ON';
                Meldung = 'Fenster geschlossen';
                // Heizung wird auf Automatik gestellt
                setStateDelayed("tado.0.125400.Rooms.8.overlay.clearZoneOverlay"/*Clear Zone Overlay*/, true, 120000, true);
              }
              if (getState("tado.0.125400.Rooms.8.setting.power").val != Heizung) {
                // Heizung on
                setStateDelayed("tado.0.125400.Rooms.8.setting.power"/*Power*/, Heizung, 60000, true);
              }
              sendTo("telegram", "send", {
                  text: Meldung
              });
            }
          });
          
          on({id: 'javascript.0.Eigene_Datenpunkte.Heizung.Heizperiode', change: "ne"}, function (obj) {
            var value = obj.state.val;
            var oldValue = obj.oldState.val;
            Heizperiode = (obj.state ? obj.state.val : "");
            if (!Heizperiode) {
              // Heizung on
              setState("tado.0.125400.Rooms.8.setting.power"/*Power*/, 'OFF');
            }
          });
          
          // Heiperiode Datenpunkt gesetzt
          

          Der letzte Blockly ist dafür da, das wenn DP Heizperiode false ist, der obrige Blockly gar nicht erst gestartet wird, richtig?

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

          @Slowman sagte:

          Dürfte jetzt korrekt sein.

          Sieht so aus.

          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

          SlowmanS 1 Antwort Letzte Antwort
          1
          • paul53P paul53

            @Slowman sagte:

            Dürfte jetzt korrekt sein.

            Sieht so aus.

            SlowmanS Offline
            SlowmanS Offline
            Slowman
            schrieb am zuletzt editiert von
            #17

            @paul53

            :disappointed: :face_with_rolling_eyes: Keine Auschaltung, keine Meldung per Telegram. Kann der Fehler vielelicht daran liegen das ich einmal auf Automatikprogramm Trigger und ein mal auf Power? Den Trigger auf das Automatikprogramm brauche ich auch.

            paul53P 1 Antwort Letzte Antwort
            0
            • SlowmanS Slowman

              @paul53

              :disappointed: :face_with_rolling_eyes: Keine Auschaltung, keine Meldung per Telegram. Kann der Fehler vielelicht daran liegen das ich einmal auf Automatikprogramm Trigger und ein mal auf Power? Den Trigger auf das Automatikprogramm brauche ich auch.

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

              @Slowman sagte:

              Keine Auschaltung, keine Meldung per Telegram.

              Initialisiere die Variable Heizperiode bei Skript-Start.

              Blockly_temp.JPG

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

              SlowmanS 1 Antwort Letzte Antwort
              1
              • paul53P paul53

                @Slowman sagte:

                Keine Auschaltung, keine Meldung per Telegram.

                Initialisiere die Variable Heizperiode bei Skript-Start.

                Blockly_temp.JPG

                SlowmanS Offline
                SlowmanS Offline
                Slowman
                schrieb am zuletzt editiert von
                #19

                @paul53

                :+1: Funktioniert jetzt, vielen Dank für die Hilfe und natürlich die Geduld :blush:

                Für mich zum Verständnis, man sollte nicht so viele Datenpunkte anlegen (was ich gemacht habe), sondern lieber mit Variablen arbeiten, damit man das ioBroker System nicht so belastet? Wenn ich den Script jetzt mir anschaue, habe ich nur die "Hardware" DP abgefasst und nur einen DP angelegt.

                paul53P 1 Antwort Letzte Antwort
                0
                • SlowmanS Slowman

                  @paul53

                  :+1: Funktioniert jetzt, vielen Dank für die Hilfe und natürlich die Geduld :blush:

                  Für mich zum Verständnis, man sollte nicht so viele Datenpunkte anlegen (was ich gemacht habe), sondern lieber mit Variablen arbeiten, damit man das ioBroker System nicht so belastet? Wenn ich den Script jetzt mir anschaue, habe ich nur die "Hardware" DP abgefasst und nur einen DP angelegt.

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

                  @Slowman sagte:

                  sondern lieber mit Variablen arbeiten, damit man das ioBroker System nicht so belastet?

                  Ja.

                  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

                  SlowmanS 1 Antwort Letzte Antwort
                  1
                  • paul53P paul53

                    @Slowman sagte:

                    sondern lieber mit Variablen arbeiten, damit man das ioBroker System nicht so belastet?

                    Ja.

                    SlowmanS Offline
                    SlowmanS Offline
                    Slowman
                    schrieb am zuletzt editiert von
                    #21

                    @paul53

                    Kleines kosmetisches Problem noch, wenn ich mehrere Fenster in einem Raum öffne bekomme ich für jedes geöffnete Fenster im Raum eine Benachrichtigung. :face_with_rolling_eyes:

                    amg_666A paul53P 2 Antworten Letzte Antwort
                    0
                    • SlowmanS Slowman

                      @paul53

                      Kleines kosmetisches Problem noch, wenn ich mehrere Fenster in einem Raum öffne bekomme ich für jedes geöffnete Fenster im Raum eine Benachrichtigung. :face_with_rolling_eyes:

                      amg_666A Offline
                      amg_666A Offline
                      amg_666
                      schrieb am zuletzt editiert von
                      #22

                      @Slowman Das ist aber nur bedingt ein "Problem". Wenn du das nicht willst müsstest du dir noch ne Variable "fenster_auf" spendieren und die auf true setzen sobald ein Fenster geöffnet ist. und dann darfst du die Benachrichtigung nur bei "fenster_auf"=True senden.
                      Ich hab das bei mir nicht gemacht, weil Fenster auf zum einen die Heizung runterfährt, bei mir aber auch die Alarmanlage auslöst wenn niemand im Haus ist. Und da will ich für jedes Fenster wissen ob es geöffnet wurde, egal ob schon eins auf ist.

                      iobroker auf proxmox container

                      1 Antwort Letzte Antwort
                      1
                      • SlowmanS Slowman

                        @paul53

                        Kleines kosmetisches Problem noch, wenn ich mehrere Fenster in einem Raum öffne bekomme ich für jedes geöffnete Fenster im Raum eine Benachrichtigung. :face_with_rolling_eyes:

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

                        @Slowman sagte:

                        bekomme ich für jedes geöffnete Fenster im Raum eine Benachrichtigung.

                        Wenn das nicht gewollt ist, schiebe Telegram in in den falls-Block "Wert von Power != Heizung".

                        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

                        SlowmanS 1 Antwort Letzte Antwort
                        1
                        • paul53P paul53

                          @Slowman sagte:

                          bekomme ich für jedes geöffnete Fenster im Raum eine Benachrichtigung.

                          Wenn das nicht gewollt ist, schiebe Telegram in in den falls-Block "Wert von Power != Heizung".

                          SlowmanS Offline
                          SlowmanS Offline
                          Slowman
                          schrieb am zuletzt editiert von
                          #24

                          @paul53

                          :cry: Habe jetzt einiges rumprobiert und klappt nicht. Also gelesen ja, nur die Umsetzung des Typen für dem Bildschirm hapert es.

                          Screenshot_2020-12-15 javascript - ioBroker.png

                          In diesen Block kommen die

                          Screenshot_2020-12-15 javascript - ioBroker(1).png

                          Screenshot_2020-12-15 javascript - ioBroker(2).png

                          Funzt nicht, denke mal falsche Stelle und die Meldung Fenster im Raum geschlossen auch erst, wenn alle Fenster zu sind sind.

                          paul53P 1 Antwort Letzte Antwort
                          0
                          • SlowmanS Slowman

                            @paul53

                            :cry: Habe jetzt einiges rumprobiert und klappt nicht. Also gelesen ja, nur die Umsetzung des Typen für dem Bildschirm hapert es.

                            Screenshot_2020-12-15 javascript - ioBroker.png

                            In diesen Block kommen die

                            Screenshot_2020-12-15 javascript - ioBroker(1).png

                            Screenshot_2020-12-15 javascript - ioBroker(2).png

                            Funzt nicht, denke mal falsche Stelle und die Meldung Fenster im Raum geschlossen auch erst, wenn alle Fenster zu sind sind.

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

                            @Slowman sagte:

                            klappt nicht.

                            Was klappt nicht ? Bitte das ganze Blockly zeigen.

                            @Slowman sagte in [gelöst] Fensterkontakt steuert Thermostat - Logikfehler?:

                            Meldung Fenster im Raum geschlossen auch erst, wenn alle Fenster zu sind sind.

                            So soll es sein ?

                            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

                            SlowmanS 1 Antwort Letzte Antwort
                            0
                            • paul53P paul53

                              @Slowman sagte:

                              klappt nicht.

                              Was klappt nicht ? Bitte das ganze Blockly zeigen.

                              @Slowman sagte in [gelöst] Fensterkontakt steuert Thermostat - Logikfehler?:

                              Meldung Fenster im Raum geschlossen auch erst, wenn alle Fenster zu sind sind.

                              So soll es sein ?

                              SlowmanS Offline
                              SlowmanS Offline
                              Slowman
                              schrieb am zuletzt editiert von
                              #26

                              @paul53

                              Also, es wird immer noh je geöffneten Fenster eine Meldung per Telegram ausgegeben und auch beim Schliessen von jedem Fenster. Es sollte so sein, das wenn 1 Fenster geöffnet ist und das 2 dazu geöffnet wird nur eine Meldung kommt, auch beim Schliessen eine Meldung kommt, wenn das letzte Fenster geschlossen wird. Die Heizung startet ja lt. Script sowieso erst, wenn alle Fenster geschlossen sind und schaltet sich aus, wenn 1 Fenster geöffnet ist.

                              Screenshot_2020-12-15 javascript - ioBroker(3).png

                              paul53P 1 Antwort Letzte Antwort
                              0
                              • SlowmanS Slowman

                                @paul53

                                Also, es wird immer noh je geöffneten Fenster eine Meldung per Telegram ausgegeben und auch beim Schliessen von jedem Fenster. Es sollte so sein, das wenn 1 Fenster geöffnet ist und das 2 dazu geöffnet wird nur eine Meldung kommt, auch beim Schliessen eine Meldung kommt, wenn das letzte Fenster geschlossen wird. Die Heizung startet ja lt. Script sowieso erst, wenn alle Fenster geschlossen sind und schaltet sich aus, wenn 1 Fenster geöffnet ist.

                                Screenshot_2020-12-15 javascript - ioBroker(3).png

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

                                @Slowman
                                Man kann Wert nicht verwenden, wenn mehr als ein Datenpunkt als Trigger dient. Man muss beide Fensterwerte per ODER verknüpfen.

                                Blockly_temp.JPG

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

                                SlowmanS 1 Antwort Letzte Antwort
                                0
                                • paul53P paul53

                                  @Slowman
                                  Man kann Wert nicht verwenden, wenn mehr als ein Datenpunkt als Trigger dient. Man muss beide Fensterwerte per ODER verknüpfen.

                                  Blockly_temp.JPG

                                  SlowmanS Offline
                                  SlowmanS Offline
                                  Slowman
                                  schrieb am zuletzt editiert von
                                  #28

                                  @paul53

                                  Danke, aber will nicht so, schmeißt jetzt 3x die Meldung raus (denke mal 1 Fenster geöffnet, 2. Fenster geöffnet, ein Fenster geschlossen) und wenn das letzte offene Fenster geschlossen wird, kommt die geschlossenen Meldung.

                                  Habe mir jetzt meinen alten Script nochmal angeschaut, warum ich dort nicht die Meldung für jedes einzelne Fenster bekommen hatte. Da war ja ein Datenpunkt true und der hat nur auf false geschaltet, wenn alle Fenster zu waren. Hänge ich unten nochmal ran, muss ja auch ohen DP gehen :innocent:

                                  Screenshot_2020-12-15 javascript - ioBroker(4).png

                                  Screenshot_2020-12-15 Telegram Web.png

                                  var Heizperiode, Heizung, Meldung;
                                  
                                  
                                  // Fensterkontakt
                                  Heizperiode = getState("javascript.0.Eigene_Datenpunkte.Heizung.Heizperiode").val;
                                  on({id: new RegExp('zigbee\\.0\\.00158d00047e6700\\.opened' + "|" + 'zigbee\\.0\\.00158d00049fb32f\\.opened'), change: "ne"}, function (obj) {
                                      if (Heizperiode) {
                                      if (getState("zigbee.0.00158d00047e6700.opened").val || getState("zigbee.0.00158d00049fb32f.opened").val) {
                                        // Variablen
                                        Heizung = 'OFF';
                                        Meldung = ' 🛌 😴  Fenster 🔓 und Heizung ❄️ 📴 ';
                                      } else {
                                        Heizung = 'ON';
                                        Meldung = ' 🛌 😴 Fenster 🔒 und Heizung ♨️ 🔛 ';
                                        // Heizung wird auf Automatik gestellt
                                        setStateDelayed("tado.0.125400.Rooms.7.overlay.clearZoneOverlay"/*Clear Zone Overlay*/, true, 120000, true);
                                      }
                                      if (getState("tado.0.125400.Rooms.7.setting.power").val != Heizung) {
                                        // Heizung on
                                        setStateDelayed("tado.0.125400.Rooms.7.setting.power"/*Power*/, Heizung, 60000, true);
                                      }
                                    }
                                    sendTo("telegram", "send", {
                                        text: Meldung
                                    });
                                  });
                                  
                                  on({id: 'javascript.0.Eigene_Datenpunkte.Heizung.Heizperiode', change: "ne"}, function (obj) {
                                    var value = obj.state.val;
                                    var oldValue = obj.oldState.val;
                                    Heizperiode = (obj.state ? obj.state.val : "");
                                    if (!Heizperiode) {
                                      // Heizung on
                                      setState("tado.0.125400.Rooms.7.setting.power"/*Power*/, 'OFF');
                                    }
                                  });
                                  
                                  
                                  paul53P 1 Antwort Letzte Antwort
                                  0
                                  • SlowmanS Slowman

                                    @paul53

                                    Danke, aber will nicht so, schmeißt jetzt 3x die Meldung raus (denke mal 1 Fenster geöffnet, 2. Fenster geöffnet, ein Fenster geschlossen) und wenn das letzte offene Fenster geschlossen wird, kommt die geschlossenen Meldung.

                                    Habe mir jetzt meinen alten Script nochmal angeschaut, warum ich dort nicht die Meldung für jedes einzelne Fenster bekommen hatte. Da war ja ein Datenpunkt true und der hat nur auf false geschaltet, wenn alle Fenster zu waren. Hänge ich unten nochmal ran, muss ja auch ohen DP gehen :innocent:

                                    Screenshot_2020-12-15 javascript - ioBroker(4).png

                                    Screenshot_2020-12-15 Telegram Web.png

                                    var Heizperiode, Heizung, Meldung;
                                    
                                    
                                    // Fensterkontakt
                                    Heizperiode = getState("javascript.0.Eigene_Datenpunkte.Heizung.Heizperiode").val;
                                    on({id: new RegExp('zigbee\\.0\\.00158d00047e6700\\.opened' + "|" + 'zigbee\\.0\\.00158d00049fb32f\\.opened'), change: "ne"}, function (obj) {
                                        if (Heizperiode) {
                                        if (getState("zigbee.0.00158d00047e6700.opened").val || getState("zigbee.0.00158d00049fb32f.opened").val) {
                                          // Variablen
                                          Heizung = 'OFF';
                                          Meldung = ' 🛌 😴  Fenster 🔓 und Heizung ❄️ 📴 ';
                                        } else {
                                          Heizung = 'ON';
                                          Meldung = ' 🛌 😴 Fenster 🔒 und Heizung ♨️ 🔛 ';
                                          // Heizung wird auf Automatik gestellt
                                          setStateDelayed("tado.0.125400.Rooms.7.overlay.clearZoneOverlay"/*Clear Zone Overlay*/, true, 120000, true);
                                        }
                                        if (getState("tado.0.125400.Rooms.7.setting.power").val != Heizung) {
                                          // Heizung on
                                          setStateDelayed("tado.0.125400.Rooms.7.setting.power"/*Power*/, Heizung, 60000, true);
                                        }
                                      }
                                      sendTo("telegram", "send", {
                                          text: Meldung
                                      });
                                    });
                                    
                                    on({id: 'javascript.0.Eigene_Datenpunkte.Heizung.Heizperiode', change: "ne"}, function (obj) {
                                      var value = obj.state.val;
                                      var oldValue = obj.oldState.val;
                                      Heizperiode = (obj.state ? obj.state.val : "");
                                      if (!Heizperiode) {
                                        // Heizung on
                                        setState("tado.0.125400.Rooms.7.setting.power"/*Power*/, 'OFF');
                                      }
                                    });
                                    
                                    
                                    paul53P Offline
                                    paul53P Offline
                                    paul53
                                    schrieb am zuletzt editiert von
                                    #29

                                    @Slowman sagte:

                                    3x die Meldung

                                    Der Telegram-Block ist falsch platziert (vergleiche die Bilder).

                                    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

                                    SlowmanS 1 Antwort Letzte Antwort
                                    0
                                    • paul53P paul53

                                      @Slowman sagte:

                                      3x die Meldung

                                      Der Telegram-Block ist falsch platziert (vergleiche die Bilder).

                                      SlowmanS Offline
                                      SlowmanS Offline
                                      Slowman
                                      schrieb am zuletzt editiert von
                                      #30

                                      @paul53

                                      Screenshot_2020-12-15 javascript - ioBroker(5).png

                                      Geändert, wenn ich richtig sehen wird die Fenster geschlossen Meldung erst "losgeschickt" wenn die Heizung anspringt. Mit den Fenster öffnen die 3x Meldungen sind geblieben.

                                      paul53P 1 Antwort Letzte Antwort
                                      0
                                      • SlowmanS Slowman

                                        @paul53

                                        Screenshot_2020-12-15 javascript - ioBroker(5).png

                                        Geändert, wenn ich richtig sehen wird die Fenster geschlossen Meldung erst "losgeschickt" wenn die Heizung anspringt. Mit den Fenster öffnen die 3x Meldungen sind geblieben.

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

                                        @Slowman sagte:

                                        Mit den Fenster öffnen die 3x Meldungen sind geblieben.

                                        Aber nur, wenn die Fenster innerhalb von einer Minute geöffnet werden. Ist die Verzögerung für die Heizung erforderlich ?

                                        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

                                        SlowmanS 1 Antwort Letzte Antwort
                                        0
                                        • paul53P paul53

                                          @Slowman sagte:

                                          Mit den Fenster öffnen die 3x Meldungen sind geblieben.

                                          Aber nur, wenn die Fenster innerhalb von einer Minute geöffnet werden. Ist die Verzögerung für die Heizung erforderlich ?

                                          SlowmanS Offline
                                          SlowmanS Offline
                                          Slowman
                                          schrieb am zuletzt editiert von
                                          #32

                                          @paul53

                                          OK, das Öffnen der Fenster war unter 1 min. Die Verzögerung für die Heizung ist eigentlich nicht notwendig. Somit wäre auch die Meldungen innerhalb dieser Minute weg. Hintergedanke war nur, wenn Jemand das Fenster bloß kurz auf und wieder zu macht, das die Heizung nicht unnötig hin und her geschaltet wird.

                                          Mit der Umstellung auf das Automatikprogramm von Tado würde ich doch gerne eine Verzögerung drin lassen.

                                          paul53P 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
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          903

                                          Online

                                          32.5k

                                          Benutzer

                                          81.9k

                                          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