Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Zeit der letzten Aktualisierung

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Zeit der letzten Aktualisierung

    This topic has been deleted. Only users with topic management privileges can see it.
    • F
      fuchs1978 last edited by

      Hallo,

      gibt es eine einfache Möglichkeit eine Funktion zu starten wenn die aktualisierung eines Wertes länger als Zeit X her ist. Also z.B. für 2 Stunden keine Temperatur aus dem Gefrierschrank, dann Gefrierschrank an.

      1 Reply Last reply Reply Quote 0
      • paul53
        paul53 last edited by

        var idTemperatur = '...';
        var timer = null;
        
        function myFunction() {
            ...
        }
        
        on(idTemperatur, function() {   // Triggern bei Wertänderung
            if(timer) clearTimeout(timer);  // Stop timer bei jedem Trigger
            timer = setTimeout(myFunction, 7200000);  // Aufruf von myFunction() nach 2 Stunden
        });
        

        Welchen Sinn macht es, den Gefrierschrank einzuschalten, wenn die Temperatur 2 Stunden lang konstant bleibt ?

        1 Reply Last reply Reply Quote 0
        • P
          pix last edited by

          Hallo,

          ich bin gerad unterwegs und kann es nicht fertig schreiben und testen. Ich würde bei Aktualisierung des Wertes einen Timer von zwei Stunden starten. Wenn der Wert wieder aktualisiert wird, wird der Timer neu gestartet. Sollte der Timer ablaufen, erfolgt eine Aktion.

          Ungefähr so:

          var timer = null;
          const idTrigger = "hm-rpc.0.TEMPERATURSENSOR.state"; // anpassen
          
          function zeitsteuerung() {
              if(timer) clearTimeout(timer); // Wenn Timer läuft, dann stoppen
              timer = setTimeout(function() { // neuen Timer starten
                  timer = null;
                  log('Seit 2 Stunden keine Aktualisierung von ' + idTrigger);
                  // mach was zB Pushnachricht oder Gerät an
          
                  // Ende mach was
              }, 2 * 60 * 60 * 1000); // 2 Stunden
          }
          
          on(id: idTrigger, change: "any", zeitsteuerung); // bei Aktualisierung des Sensors
          zeitsteuerung(); // bei Skriptstart
          
          

          Gruß

          Pix

          EDIT: paul war wieder schneller :lol:

          1 Reply Last reply Reply Quote 0
          • F
            fuchs1978 last edited by

            Ok danke. Ich dachte man könnte als was mit dem on Befehl und dem time stamp machen. Der Gefrierschrank läuft nur wenn PV Oder bhkw läuft oder wenn zu warm.

            1 Reply Last reply Reply Quote 0
            • First post
              Last post

            Support us

            ioBroker
            Community Adapters
            Donate

            803
            Online

            31.7k
            Users

            79.8k
            Topics

            1.3m
            Posts

            3
            4
            588
            Loading More Posts
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes
            Reply
            • Reply as topic
            Log in to reply
            Community
            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
            The ioBroker Community 2014-2023
            logo