Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Scheduler: Übersicht

    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

    Scheduler: Übersicht

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

      Hallo alle
      Ich habe mir einen Wecker programmiert in dem ich bei Änderung der Weckzeit dieses Programm starte

      function schedule_wecker1()
      {
      
          log(" Scheduler an für Wecker1:"+getState("Manuelle_Datenpunkte.0.Wecker.Wecker1_h").val.toString().trim() + ':' + 
                                           getState("Manuelle_Datenpunkte.0.Wecker.Wecker1_min").val.toString().trim()+" Uhr" );
          if (schedule1) {
               clearSchedule(schedule1);  
               schedule1 = null;
          }
          schedule1 = schedule(getState("Manuelle_Datenpunkte.0.Wecker.Wecker1_min").val.toString().trim() + ' ' + 
                                        getState("Manuelle_Datenpunkte.0.Wecker.Wecker1_h").val.toString().trim() + '  * * *', async function () 
           {
            var radio_an = getState('Manuelle_Datenpunkte.0.Wecker.Wecker1_Radio').val
            log ("-----WECKER: Wecker1 check:-------- State Radio = "+ radio_an);
            if (radio_an)
            {
              log ("  Wecker 1: Musik an");
              setState(echo+".Player.volume"        , getState("Manuelle_Datenpunkte.0.Wecker.Wecker1_Volume").val);
              setStateDelayed(echo+".Player.TuneIn-Station", getState("Manuelle_Datenpunkte.0.Wecker.Wecker1_Sender").val, 5000, false);
            }
            setState("Manuelle_Datenpunkte.0.Wecker.Wecker1_Toggle",false);
      
          });
      }
      

      Ich setze also über schedule(...) die Weckzeit, die ich wiederum im VIS einstelle.
      Soweit so gut und das funktioniert auch.

      Es funktioniert aber nicht mehr, wenn ich nach dem Stellen der Weckzeit irgendwas noch im IOBroker manipuliere. Gestern habe ich z.B. noch andere Scripten geändert; ich habe Adapter installiert usw.

      Kann es sein, dass bei irgend solchen Aktionen der Scheduler gelöscht wird?

      Und wenn ja:

      • Wie kann ich das sehen?
      • Gibt es eine Übersicht über die durch schedule() erzeugten Cron-Jobs?
      • Kann man die vielleicht sogar im VIS anzeigen lassen?

      Ich habe heute einen Termin verpasst weil der Scheduler nicht funktionierte. Das ist schlecht wenn man sich nicht drauf verlassen kann. Sonst müsste ich mich wieder über die Alexa-App wecken lassen.

      Gruss Ralf

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

        @derrapf
        Ist das das gesamte Skript? Ich sehe nur eine Funktion, die nirgends aufgerufen wird.

        @derrapf sagte: Gibt es eine Übersicht über die durch schedule() erzeugten Cron-Jobs?

        getSchedules(true)

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

          @paul53
          Hallo Paul
          Nee, das ist natürlich nur die Funktion die den Scheduler setzt.

          Danke für den Tip mit getSchedules. Mal sehen wie ich den in VIS einbauen kann..
          edit: Hab den grad mal ausprobiert (direkt aus der Doku rauskopiert).
          IOBroker kennt den gar nicht. Die Adapter sind alle upgedatet:

          034c1bac-8f9f-4440-81ee-3a154271524f-grafik.png
          Funktionieren tut der Befehl aber komischerweise trotzdem..

          Das Beispiel

           const list = getSchedules(true);
              list.forEach(schedule => console.log("Scheduler für Wecker: " +JSON.stringify(schedule)));
          

          liefert einen JSON String.
          Wie krieg ich da jetzt die Uhrzeit raus?

          Gruss Ralf

          D 1 Reply Last reply Reply Quote 0
          • D
            derrapf @derrapf last edited by derrapf

            Habs hinbekommen. Geht ja ganz einfach:
            schedule.pattern liefert die Uhrzeit.
            Gruss Ralf

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

            Support us

            ioBroker
            Community Adapters
            Donate

            810
            Online

            31.8k
            Users

            80.0k
            Topics

            1.3m
            Posts

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