Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Fenster Öffnen/schließen steuert Heizung

NEWS

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

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

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

Fenster Öffnen/schließen steuert Heizung

Geplant Angeheftet Gesperrt Verschoben Blockly
25 Beiträge 4 Kommentatoren 1.6k Aufrufe 4 Beobachtet
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • T TDCroPower

    @dslraser der Sensor ist ein Aqara ZigBee Tür/Fenstersensor, der Datenpunkt ist ein boolean mit folgenden RAW Daten...

    {
      "type": "state",
      "common": {
        "name": "Is open",
        "type": "boolean",
        "read": true,
        "write": false,
        "role": "state"
      },
      "native": {},
      "from": "system.adapter.zigbee.0",
      "user": "system.user.admin",
      "ts": 1622678872085,
      "_id": "zigbee.0.00158d0001dff2ef.opened",
      "acl": {
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator",
        "object": 1636,
        "state": 1636
      }
    }
    

    Der Datenpunkt erkennt alle Änderungen und triggert hier jeweils ein true/false.
    Also geschiet zwischen offen zu gekippt ein...
    offen = true
    offen -> zu = false
    zu -> gekippt = true

    dslraserD Offline
    dslraserD Offline
    dslraser
    Forum Testing Most Active
    schrieb am zuletzt editiert von
    #8

    @tdcropower
    mach einen debug Baustein mit Wert und schau was passiert.

    geschlossen dann offen
    offen dann gekippt

    wird da dann immer getriggert ? (als auch von offen und dann gekippt)

    T 1 Antwort Letzte Antwort
    0
    • dslraserD dslraser

      @tdcropower
      mach einen debug Baustein mit Wert und schau was passiert.

      geschlossen dann offen
      offen dann gekippt

      wird da dann immer getriggert ? (als auch von offen und dann gekippt)

      T Offline
      T Offline
      TDCroPower
      schrieb am zuletzt editiert von TDCroPower
      #9

      @dslraser ja werden beide wechsel getriggert...

      javascript.0
      2021-10-27 10:44:56.974 error script.js.common.Heizung: true

      javascript.0
      2021-10-27 10:44:56.973 error script.js.common.Heizung: TEST TRIGGER

      javascript.0
      2021-10-27 10:44:55.897 error script.js.common.Heizung: false

      javascript.0
      2021-10-27 10:44:55.896 error script.js.common.Heizung: TEST TRIGGER

      hier war es sogar länger als 1 Sekunde und somit hat der Timeout von 1 Sekunden nicht gegriffen.

      dslraserD 1 Antwort Letzte Antwort
      0
      • T TDCroPower

        @dslraser ja werden beide wechsel getriggert...

        javascript.0
        2021-10-27 10:44:56.974 error script.js.common.Heizung: true

        javascript.0
        2021-10-27 10:44:56.973 error script.js.common.Heizung: TEST TRIGGER

        javascript.0
        2021-10-27 10:44:55.897 error script.js.common.Heizung: false

        javascript.0
        2021-10-27 10:44:55.896 error script.js.common.Heizung: TEST TRIGGER

        hier war es sogar länger als 1 Sekunde und somit hat der Timeout von 1 Sekunden nicht gegriffen.

        dslraserD Offline
        dslraserD Offline
        dslraser
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #10

        @tdcropower
        Ich kann Dir jetzt nicht ganz folgen. Ich sehe nur einen wechsel von false nach true. Wie sieht Dein Blockly jetzt aus ?

        T 1 Antwort Letzte Antwort
        0
        • dslraserD dslraser

          @tdcropower
          Ich kann Dir jetzt nicht ganz folgen. Ich sehe nur einen wechsel von false nach true. Wie sieht Dein Blockly jetzt aus ?

          T Offline
          T Offline
          TDCroPower
          schrieb am zuletzt editiert von TDCroPower
          #11

          @dslraser es sind 2 Debug Outputs direkt nach dem Trigger eingefügt....
          Bildschirmfoto 2021-10-27 um 10.53.36.png

          edit:
          ich habe mir zusätzlich noch den Wert von "Power" des HKT ausgegeben.
          Hier sieht man das der Wert direkt nach dem Trigger bei beiden auf OFF steht und somit in den "else" Pfad geleitet wird.
          Also ist der Wechsel von gekippt auf zu noch nicht vom HKT verarbeitet worden und läuft wahrscheinlich im Hintergrund nach.

          javascript.0
          2021-10-27 10:57:00.425 error script.js.common.Heizung: Power: OFF

          javascript.0
          2021-10-27 10:57:00.424 error script.js.common.Heizung: true

          javascript.0
          2021-10-27 10:56:59.722 error script.js.common.Heizung: Power: OFF

          javascript.0
          2021-10-27 10:56:59.721 error script.js.common.Heizung: false

          Bildschirmfoto 2021-10-27 um 10.59.13.png

          dslraserD 1 Antwort Letzte Antwort
          0
          • T TDCroPower

            @dslraser es sind 2 Debug Outputs direkt nach dem Trigger eingefügt....
            Bildschirmfoto 2021-10-27 um 10.53.36.png

            edit:
            ich habe mir zusätzlich noch den Wert von "Power" des HKT ausgegeben.
            Hier sieht man das der Wert direkt nach dem Trigger bei beiden auf OFF steht und somit in den "else" Pfad geleitet wird.
            Also ist der Wechsel von gekippt auf zu noch nicht vom HKT verarbeitet worden und läuft wahrscheinlich im Hintergrund nach.

            javascript.0
            2021-10-27 10:57:00.425 error script.js.common.Heizung: Power: OFF

            javascript.0
            2021-10-27 10:57:00.424 error script.js.common.Heizung: true

            javascript.0
            2021-10-27 10:56:59.722 error script.js.common.Heizung: Power: OFF

            javascript.0
            2021-10-27 10:56:59.721 error script.js.common.Heizung: false

            Bildschirmfoto 2021-10-27 um 10.59.13.png

            dslraserD Offline
            dslraserD Offline
            dslraser
            Forum Testing Most Active
            schrieb am zuletzt editiert von
            #12

            @tdcropower
            und was hast Du gemacht ? Nur das Fenster geöffnet oder auch auf kipp ? (ich kenne/habe diese Sensoren nicht. Sind das Türgriffe bzw. erkennen die überhaupt den Unterschied zwischen gekippt und geöffnet wenn die nur true/false haben ?)

            T 1 Antwort Letzte Antwort
            1
            • dslraserD dslraser

              @tdcropower
              und was hast Du gemacht ? Nur das Fenster geöffnet oder auch auf kipp ? (ich kenne/habe diese Sensoren nicht. Sind das Türgriffe bzw. erkennen die überhaupt den Unterschied zwischen gekippt und geöffnet wenn die nur true/false haben ?)

              T Offline
              T Offline
              TDCroPower
              schrieb am zuletzt editiert von
              #13

              @dslraser die Sensoren erkennen nur Offen/Zu, also keinen Zustand wie offen/gekippt.
              Das sind folgende Sensoren...
              https://www.amazon.de/Aqara-MCCGQ11LM-Window-Sensor-Fensterssensor/dp/B07D37VDM3

              In dem Beispiel oben habe ich immer folgendes getestet und ausgegeben...

              1. Fenster komplett geöffnet -> "is open": true
              2. Fenster schließen -> "is open": false
              3. Fenster kippen -> "is open": true
              dslraserD 1 Antwort Letzte Antwort
              0
              • T TDCroPower

                @dslraser die Sensoren erkennen nur Offen/Zu, also keinen Zustand wie offen/gekippt.
                Das sind folgende Sensoren...
                https://www.amazon.de/Aqara-MCCGQ11LM-Window-Sensor-Fensterssensor/dp/B07D37VDM3

                In dem Beispiel oben habe ich immer folgendes getestet und ausgegeben...

                1. Fenster komplett geöffnet -> "is open": true
                2. Fenster schließen -> "is open": false
                3. Fenster kippen -> "is open": true
                dslraserD Offline
                dslraserD Offline
                dslraser
                Forum Testing Most Active
                schrieb am zuletzt editiert von
                #14

                @tdcropower
                ich muß jetzt leider erstmal weg und kann im Moment nicht weiter lesen/schreiben.

                T 1 Antwort Letzte Antwort
                1
                • dslraserD dslraser

                  @tdcropower
                  ich muß jetzt leider erstmal weg und kann im Moment nicht weiter lesen/schreiben.

                  T Offline
                  T Offline
                  TDCroPower
                  schrieb am zuletzt editiert von
                  #15

                  @dslraser keine Eile ist ja mit dem Timeout erstmal unschön gefixt ;).
                  Suche ja nur eine bessere Lösung das Problem abzufangen.

                  1 Antwort Letzte Antwort
                  0
                  • T TDCroPower

                    @dragon welche Datenpunkte sollen das sein? Verstehe deine Erklärung nicht so recht.

                    @Cinimod den Wert von "is open" prüfe ich doch mit dem Trigger Objekt "Wert".
                    Bei "true" gehts in den positiven "falls" Zweig und bei "false" ins "sonst".

                    D Offline
                    D Offline
                    Dragon
                    schrieb am zuletzt editiert von
                    #16

                    @tdcropower sagte in Fenster Öffnen/schließen steuert Heizung:

                    @dragon welche Datenpunkte sollen das sein? Verstehe deine Erklärung nicht so recht.

                    Hast du das Skript installiert?

                    T 1 Antwort Letzte Antwort
                    0
                    • D Dragon

                      @tdcropower sagte in Fenster Öffnen/schließen steuert Heizung:

                      @dragon welche Datenpunkte sollen das sein? Verstehe deine Erklärung nicht so recht.

                      Hast du das Skript installiert?

                      T Offline
                      T Offline
                      TDCroPower
                      schrieb am zuletzt editiert von
                      #17

                      @dragon welches Skript soll das sein?
                      Ich verwende mein eigenes Skript in diesem Beispiel.

                      D 1 Antwort Letzte Antwort
                      0
                      • T TDCroPower

                        @dragon welches Skript soll das sein?
                        Ich verwende mein eigenes Skript in diesem Beispiel.

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

                        @tdcropower Gib oben im suchfeld einfach ein was ich dir als skript vorgeschlagen habe ("generischen Fenster offen Skripts") , dann findest du es. Man muss ja nicht alles in einem Skript verpacken, sondern kann auch Dinge mit mehreren Skripten erledigen. Ich habe so viele tolle und nützliche Skripte hier gefunden, welche ich alle niemals (auch da ich kein Java kann) alleine hätte erstellen können. Einige der Funktionen meines Systems zum Beispiel nutzen im Blockly eine Funktion die über ein JavaScript zur Verfügung gestellt wird. So kann ich diese tollen Skripte aus dem Forum, welche von den Erstellern liebevoll gepflegt und debugt werden nutzen ohne Java lernen zu müssen.

                        T 1 Antwort Letzte Antwort
                        0
                        • D Dragon

                          @tdcropower Gib oben im suchfeld einfach ein was ich dir als skript vorgeschlagen habe ("generischen Fenster offen Skripts") , dann findest du es. Man muss ja nicht alles in einem Skript verpacken, sondern kann auch Dinge mit mehreren Skripten erledigen. Ich habe so viele tolle und nützliche Skripte hier gefunden, welche ich alle niemals (auch da ich kein Java kann) alleine hätte erstellen können. Einige der Funktionen meines Systems zum Beispiel nutzen im Blockly eine Funktion die über ein JavaScript zur Verfügung gestellt wird. So kann ich diese tollen Skripte aus dem Forum, welche von den Erstellern liebevoll gepflegt und debugt werden nutzen ohne Java lernen zu müssen.

                          T Offline
                          T Offline
                          TDCroPower
                          schrieb am zuletzt editiert von
                          #19

                          @dragon finde dazu nichts...
                          https://forum.iobroker.net/search?term=generischen Fenster offen Skripts&in=titlesposts

                          D 1 Antwort Letzte Antwort
                          0
                          • T TDCroPower

                            @dragon finde dazu nichts...
                            https://forum.iobroker.net/search?term=generischen Fenster offen Skripts&in=titlesposts

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

                            @tdcropower

                            Link

                            Ist das erste was mir angezeigt wird bei den Suchbegriffen

                            T 1 Antwort Letzte Antwort
                            0
                            • D Dragon

                              @tdcropower

                              Link

                              Ist das erste was mir angezeigt wird bei den Suchbegriffen

                              T Offline
                              T Offline
                              TDCroPower
                              schrieb am zuletzt editiert von TDCroPower
                              #21

                              @dragon das Skript ist in meinem Beispiel wohl eher mit Raketen auf Spatzen schießen 😁

                              wobei hier eine Zeit von 10 Sekunden bei Fenstern verwendet wird...

                              const WindowIgnoreTime = 10000; // 10000 ms = 10 Sekunden - Zeit in ms für die kurzzeitiges öffnen/schliessen ignoriert wird
                              

                              bei Türen ist es 1 Sekunde...

                              const DoorIgnoreTime = 1000; // 1000 ms = 1 Sekunden - Zeit in ms für die kurzzeitiges öffnen/schliessen ignoriert wird
                              

                              Ist somit ja leider ähnlich gelöst wie in meinem Workaround.

                              D 1 Antwort Letzte Antwort
                              0
                              • T TDCroPower

                                @dragon das Skript ist in meinem Beispiel wohl eher mit Raketen auf Spatzen schießen 😁

                                wobei hier eine Zeit von 10 Sekunden bei Fenstern verwendet wird...

                                const WindowIgnoreTime = 10000; // 10000 ms = 10 Sekunden - Zeit in ms für die kurzzeitiges öffnen/schliessen ignoriert wird
                                

                                bei Türen ist es 1 Sekunde...

                                const DoorIgnoreTime = 1000; // 1000 ms = 1 Sekunden - Zeit in ms für die kurzzeitiges öffnen/schliessen ignoriert wird
                                

                                Ist somit ja leider ähnlich gelöst wie in meinem Workaround.

                                D Offline
                                D Offline
                                Dragon
                                schrieb am zuletzt editiert von
                                #22

                                @tdcropower Stimmt, aber zum einen Funktioniert es damit ohne Probleme und du hast einen Komfortgewinn. In der Vis die Möglichkeit alle Fenster und Türen zu kontrollieren, außerdem auch nutzbar über die Alarmanlage und eben die Entprellzeit... Es ist aber auch nicht das gleiche wie bei dir, da der Trigger erst nach der Entprellzeit ausgelöst wird. Heist das was du suchst wird bereits vor deinem Skript gemacht. Die Fehlgemeldeten Stati herausfiltern...

                                T 1 Antwort Letzte Antwort
                                0
                                • D Dragon

                                  @tdcropower Stimmt, aber zum einen Funktioniert es damit ohne Probleme und du hast einen Komfortgewinn. In der Vis die Möglichkeit alle Fenster und Türen zu kontrollieren, außerdem auch nutzbar über die Alarmanlage und eben die Entprellzeit... Es ist aber auch nicht das gleiche wie bei dir, da der Trigger erst nach der Entprellzeit ausgelöst wird. Heist das was du suchst wird bereits vor deinem Skript gemacht. Die Fehlgemeldeten Stati herausfiltern...

                                  T Offline
                                  T Offline
                                  TDCroPower
                                  schrieb am zuletzt editiert von
                                  #23

                                  @dragon das ist identisch, wird nur von Blockly angezeigt.
                                  Schaut man sich den JavaScript Code dahinter aus siehst du es besser, wo er die Timeout 2000 einträgt ;)

                                  // Fenster/Tür Erkennung
                                  // Bad
                                  on({id: 'zigbee.0.00158d0001dff2ef.opened', change: "ne"}, async function (obj) {
                                    var value = obj.state.val;
                                    var oldValue = obj.oldState.val;
                                    console.error(('Is open: ' + String((obj.state ? obj.state.val : ""))));
                                    console.error(('Power: ' + String(getState("tado.0.689827.Rooms.10.setting.power").val)));
                                    (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
                                    timeout = setTimeout(async function () {
                                      if ((obj.state ? obj.state.val : "")) {
                                        if (getState("tado.0.689827.Rooms.10.setting.power").val == 'ON') {
                                          BadHKTTemp = getState("tado.0.689827.Rooms.10.setting.temperature.celsius").val;
                                          setState("tado.0.689827.Rooms.10.setting.power"/*Power*/, 'off');
                                        }
                                      } else {
                                        setState("tado.0.689827.Rooms.10.setting.temperature.celsius"/*Temperature Celsius*/, BadHKTTemp);
                                      }
                                    }, 2000);
                                  });
                                  
                                  D 1 Antwort Letzte Antwort
                                  0
                                  • T TDCroPower

                                    @dragon das ist identisch, wird nur von Blockly angezeigt.
                                    Schaut man sich den JavaScript Code dahinter aus siehst du es besser, wo er die Timeout 2000 einträgt ;)

                                    // Fenster/Tür Erkennung
                                    // Bad
                                    on({id: 'zigbee.0.00158d0001dff2ef.opened', change: "ne"}, async function (obj) {
                                      var value = obj.state.val;
                                      var oldValue = obj.oldState.val;
                                      console.error(('Is open: ' + String((obj.state ? obj.state.val : ""))));
                                      console.error(('Power: ' + String(getState("tado.0.689827.Rooms.10.setting.power").val)));
                                      (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
                                      timeout = setTimeout(async function () {
                                        if ((obj.state ? obj.state.val : "")) {
                                          if (getState("tado.0.689827.Rooms.10.setting.power").val == 'ON') {
                                            BadHKTTemp = getState("tado.0.689827.Rooms.10.setting.temperature.celsius").val;
                                            setState("tado.0.689827.Rooms.10.setting.power"/*Power*/, 'off');
                                          }
                                        } else {
                                          setState("tado.0.689827.Rooms.10.setting.temperature.celsius"/*Temperature Celsius*/, BadHKTTemp);
                                        }
                                      }, 2000);
                                    });
                                    
                                    D Offline
                                    D Offline
                                    Dragon
                                    schrieb am zuletzt editiert von
                                    #24

                                    @tdcropower Ich will dir nichts aufzwängen. Habe dir lediglich mitgeteilt wie die Schaltung bei mir funktioniert. (gleiches Anliegen wie bei dir und läuft seit über einem Jahr ohne Probleme) Wenn du nicht möchtest ist das Ok. Dann weiterhin viel Erfolg bei der Lösungssuche.

                                    T 1 Antwort Letzte Antwort
                                    1
                                    • D Dragon

                                      @tdcropower Ich will dir nichts aufzwängen. Habe dir lediglich mitgeteilt wie die Schaltung bei mir funktioniert. (gleiches Anliegen wie bei dir und läuft seit über einem Jahr ohne Probleme) Wenn du nicht möchtest ist das Ok. Dann weiterhin viel Erfolg bei der Lösungssuche.

                                      T Offline
                                      T Offline
                                      TDCroPower
                                      schrieb am zuletzt editiert von
                                      #25

                                      @dragon kein Problem, ich bin sehr dankbar für den Tipp kann mir da drüben ebenfalls anschauen wie sie einige Sachen vielleicht gelöst haben.
                                      Das gesamte Skript zu nutzen fällt bei mir halt raus, da ich in einem Skript alles für die Heizung verwalte und da ist zum Beispiel bei mir die Tado Temperatur Anpassung per Offset mit drin.
                                      Das kann das Skript zum Beispiel nicht ;)

                                      Aber zum Problem würde ich gerne verschieden Lösungsmöglichkeiten oder Ideen einholen, wie andere das lösen würden.

                                      1 Antwort Letzte Antwort
                                      0

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

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

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

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


                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      662

                                      Online

                                      32.8k

                                      Benutzer

                                      82.7k

                                      Themen

                                      1.3m

                                      Beiträge
                                      Community
                                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                      ioBroker Community 2014-2025
                                      logo
                                      • Anmelden

                                      • Du hast noch kein Konto? Registrieren

                                      • Anmelden oder registrieren, um zu suchen
                                      • Erster Beitrag
                                        Letzter Beitrag
                                      0
                                      • Home
                                      • Aktuell
                                      • Tags
                                      • Ungelesen 0
                                      • Kategorien
                                      • Unreplied
                                      • Beliebt
                                      • GitHub
                                      • Docu
                                      • Hilfe