Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. ClearSchedule funktioniert nicht

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    ClearSchedule funktioniert nicht

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

      Hallo an alle,

      ich möchte eine kleine Stoppuhr basteln. Die Stoppuhr startet, wenn ein Kanal auf true springt und soll beendet werden, wenn der Kanal wieder auf false springt.

      Wenn mein Kanal auf false springt, trigert diesr korrekt die unteren "on".. code Zeilen. Meine Variable 'Bewaesserung.LaufzeitVorgarten' wird zuverlässig auf 00:00 gesetzt. Allerdings wird der Scheduler nicht beendet.
      Ich arbeite öfter mit Scheduler und beende oder setzte diese neu. Ich sehe den Fehler nicht, warum dies hier nicht funktioniert.

      Hat jemand eine Idee für mich. Danke im Voraus.

      //Vorgarten
      var TimerVorgarten=null;
      on({
          id:'hm-rpc.1.000D1D89A09811.10.STATE'/*Bewaesserung Kanal:1:10 STATE*/,
          val:true
      },function(obj){
          var ZeitMin=getState('Bewaesserung.BewaesserungNoetig.VorgartenZeit').val;
          var Zeitms=ZeitMin*60*1000;
          setStateDelayed('hm-rpc.1.000D1D89A09811.10.STATE',false,Zeitms);
          TimerVorgarten='*/10 * * * * *';
          TimerVorgarten=schedule(TimerVorgarten,function(){
              var TimerVorgartenLaufzeit=getState('Bewaesserung.LaufzeitVorgarten').val;
              var minute=TimerVorgartenLaufzeit.substr(0,2);
              log(minute);
              var sekunde=TimerVorgartenLaufzeit.substr(3,2);
              log(sekunde);
              if (sekunde<50){
                  sekunde=parseInt(sekunde)+10;
              }else{
                  sekunde='00';
                  minute=parseInt(minute)+1;
                  if (minute<10){minute='0'+minute};
              }
              setState('Bewaesserung.LaufzeitVorgarten',minute+":"+sekunde);
      
          })
      });
      on({
          id:'hm-rpc.1.000D1D89A09811.10.STATE'/*Bewaesserung Kanal:1:10 STATE*/,
          val:false
      },function(obj){
          clearSchedule(TimerVorgarten);
          setStateDelayed('Bewaesserung.LaufzeitVorgarten','00:00',5000);
      });
      
      paul53 2 Replies Last reply Reply Quote 0
      • paul53
        paul53 @roland last edited by paul53

        @roland
        Zeilen 10, 11:
        Der CRON-String und der Schedule-Handler (Objekt) verwenden den gleichen Variablenbezeichner.

        R 1 Reply Last reply Reply Quote 0
        • R
          roland @paul53 last edited by

          @paul53
          Ich weiß. Dies war mein letzter Versuch, weil ich es in einem Beispiel gelesen haben. Ich dachte es ändert eventuell etwas am verhalten.
          Leider nein. Davor habe ich die ganze Zeit unterschiedliche Bezeichner verwendet.

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

            @roland sagte: Hat jemand eine Idee für mich.

            Es können mit dem Trigger val: true mehrere Scheduler laufen. Ändere den Trigger in change: 'gt'.

            Besser nur einen Trigger auf Wertänderung verwenden und innerhalb des Callbacks den Wert prüfen:

            //Vorgarten
            var TimerVorgarten=null;
            on('hm-rpc.1.000D1D89A09811.10.STATE'/*Bewaesserung Kanal:1:10 STATE*/, function(obj) {
                if(obj.state.val) {
                   // Operationen bei true
                } else {
                    clearSchedule(TimerVorgarten);
                    setStateDelayed('Bewaesserung.LaufzeitVorgarten','00:00',5000);
                }
            });
            
            1 Reply Last reply Reply Quote 0
            • First post
              Last post

            Support us

            ioBroker
            Community Adapters
            Donate

            507
            Online

            31.8k
            Users

            79.9k
            Topics

            1.3m
            Posts

            2
            4
            143
            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