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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Gelöst] Fensterkontakt + Thermostat: Wie Verzögerung einbauen

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    6
    1
    227

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    8
    1
    221

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

[Gelöst] Fensterkontakt + Thermostat: Wie Verzögerung einbauen

Scheduled Pinned Locked Moved Skripten / Logik
5 Posts 4 Posters 1.1k Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • T Offline
    T Offline
    Thosch
    wrote on last edited by
    #1

    Hallo zusammen,

    ich betreibe einige Xiaomi Fensterkontakte und HmIP Heizkörperthermostate.

    Ich würde gerne eine Skript laufen lassen, dass bei Fenster auf mit einer Verzögerung von 30 Sekunden beim Thermostat den Fenster auf Modus aktiviert. Wenn das Fenster wieder geschlossen wird, soll der Fenster auf Modus wieder ausgeschaltet werden.

    Ich hab mir dazu folgendes Blockly Skript gemacht. Allerdings habe ich häufiger das Phänomen, dass die Thermostate auf Fenster auf stehen bleiben, wenn ein Fenster mehrmals schnell geöffnet und wieder geschlossen wird.

    Hat evlt. jemand eine Idee, was ich falsch mache?

    https://ibb.co/YPDWZ2x

    1 Reply Last reply
    0
    • D Offline
      D Offline
      dexter
      wrote on last edited by
      #2

      Hallo Thosch,

      scheinbar passiert folgendes:

      Fenster geht auf, Blockly merkt sich das er in 30 Sekunden das Thermostat runter fahren soll

      Fenster geht zu, Blockly schaltet Thermostat hoch

      30 Sekunden sind abgelaufen, Blockly fährt Thermostat runter.

      Probiere mal statt einer Verzögerung einen Timeout von 30 Sekunden und darin dann erneut eine Abfrage ob das Fenster wirklich noch auf ist.
      16721_unbenannt.png

      1 Reply Last reply
      0
      • T Offline
        T Offline
        Thosch
        wrote on last edited by
        #3

        Ahh ja, da stand ich wohl auf dem Schlauch. An den timeout hab ich gar nicht gedacht.

        So funktioniert's wunderbar.

        Vielen Dank für die schnelle Hilfe!!

        1 Reply Last reply
        0
        • M Offline
          M Offline
          Malti
          wrote on last edited by
          #4

          Hallo Thosch,
          ich würde dieses gerne mit meinen Homematic Aktoren nachbauen.
          Könntest du mir einen Screenshot von Blockly zeigen oder das Script exportieren?

          Vielen lieben Dank
          Michael

          1 Reply Last reply
          0
          • C Offline
            C Offline
            charakterkopf
            wrote on last edited by charakterkopf
            #5

            Hi, leider nur Javascript. Die Funktion Timeout ist aber schön zu erkennen:

            Hier wird 60 Sekunden bei Fenster auf gewartet und erneut geprüft. Ich kann also in Ruhe ein Bier vom Balkon holen...

            //Wohnzimmer:
            on({id: 'javascript.0.Smarthome.fenster_wohnzimmer', change: 'any'}, function (obj) 
                {
                    if (obj.state.val===true) 
                    {
                            setTimeout(function(){ 
                                if (obj.state.val===true) 
                                    { 
                                            setState('fritzdect.0.Comet_119610277592.mode',1); 
                                    }
                            }, 60000);
                    }
                    else setState('fritzdect.0.Comet_119610277592.mode',0);
                });  
            

            Und falls du Fenster zusammenfassen möchtest (Wohnzimmer hat bei mir 2 Fenster + Balkontür:

            //Das Script fasst die Wohnzimmer Fenster zusammen
                const idSammel = 'javascript.0.Smarthome.fenster_wohnzimmer';
                const id1 = 'javascript.0.Smarthome.Fenster.Fenster_1'; // ID von 1\. Meldung
                const id2 = 'javascript.0.Smarthome.Fenster.Fenster_2';
                const id3 = 'javascript.0.Smarthome.Fenster.Fenster_3';
            
                const ids = [id1, id2, id3];
             
                var vals = [getState(id1).val, getState(id2).val, getState(id3).val];
            
                function sammel() {
                if(vals[0] || vals[1] || vals[2] ) setState(idSammel, true, true);
                else setState(idSammel, false, true);
                }
            
            on(ids, function(dp) {  
               var pos = ids.indexOf(dp.id);
               if(pos != -1) {
                  vals[pos] = dp.state.val;
                  sammel();
               } else log('Trigger-ID nicht im Array !', 'warn');
            });
            
            1 Reply Last reply
            0

            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

            With your input, this post could be even better 💗

            Register Login
            Reply
            • Reply as topic
            Log in to reply
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes


            Support us

            ioBroker
            Community Adapters
            Donate

            583

            Online

            32.8k

            Users

            82.8k

            Topics

            1.3m

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

            • Don't have an account? Register

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