Ankündigung

Einklappen
Keine Ankündigung bisher.

cron: Rule nur zu bestimmten Zeiten starten

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    cron: Rule nur zu bestimmten Zeiten starten

    Hallo zusammen,

    mein Plan war, über eine cron rule Licht auszuschalten.
    Code:
    rule "Aussenbeleuchtung aus"
    when
        Time cron "0 5/20 0-2 * * *"        //Alle 20 Minuten zwischen 0:00 und 3:00
    then
        // Beleuchtung ausschalten
        logInfo("aussenbeleuchtung.rules","Aussenbeleuchtung ausschalten")
    (..)
    end
    Haltet mich für paranoid, aber durch die Regelung sollte alle 20 Minuten zwischen 0:00 und 3:00 geguckt werden, ob noch Licht brennt und es ausgeschaltet werden.
    Es passiert aber nichts und die Regel wird nicht aufgerufen.

    Hat jemand eine Ahnung was schief läuft und wie es richtig geht?

    Beste Grüße
    wbuh

    #2
    Versuch es mal so:
    Code:
     
     Time cron "0 0/20 0-2 * * ?"
    Holger

    Kommentar


      #3
      Zitat von HolgerW Beitrag anzeigen
      Versuch es mal so:
      Code:
      Time cron "0 0/20 0-2 * * ?"
      Holger
      Das funktioniert. Danke!
      Also kann openHAB scheinbar nicht komplett richtig mit cron umgehen...

      Kommentar


        #4
        openHAB verwendet Quartz, und da sehen die Rules dafür so aus.
        Was ist denn deiner Meinung nach 5/20 ?

        Holger

        Kommentar


          #5
          Ist es nicht so, dass in openHAB bzw. Quartz bei der Angabe Kalendertag (DayOfMonth: 1-31) und Wochentag (DayOfWeek: SUN-SAT) eines von beiden mit einem "?" gekennzeichnet sein muss, da hier kein beliebeiger Wert stehen kann, sondern nur ein nicht spezifizierter.
          Siehe auch hier:
          http://www.quartz-scheduler.org/docu...ls/crontrigger

          Daraus ergibt sich auch 5/20 als ab Minute 5 alle 20 Minuten (also im obigen Beispiel um 0:05, 0:25, 0:45, 1:05, 1:25, 1:45, 2:05, 2:25 und 2:45).

          Wenn wbuh in seinem Beispiel die Angabe wie folgt ändert (bei Wochentag ein "?" anstatt dem "*"), dann sollte es auch mit den obg. Zeiten funktionieren....

          Code:
          Time cron "0 5/20 0-2 * * ?"
          Andreas

          Kommentar

          Lädt...
          X