Ankündigung

Einklappen
Keine Ankündigung bisher.

Frage zur CRON Implementierung

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

    Frage zur CRON Implementierung

    Hallo,

    bei der Erstellung einer Zeitgesteuerten Regel ist mir folgendes aufgefallen:

    Regel:
    Code:
    rule Licht_UG_Esszimmer_ein
    when
      Time cron "15 14 * * * ?"
    then
      if (Lichtautomatik.state == ON) {
        Licht_UG_Esszimmer_Tisch.sendCommand(ON)
      }
    end
    
    rule Licht_UG_Esszimmer_aus
    when
      Time cron "17 14 * * * ?"
    then
      if (Lichtautomatik.state == ON) {
        Licht_UG_Esszimmer_Tisch.sendCommand(OFF)
      }
    end
    Geschaltet hat das Licht nicht wie gewünscht um 14:15 ein und um 14:17 aus sondern wie folgt (Auszug aus events.log):

    2012-11-24 14:14:15 - Licht_UG_Esszimmer_Decke received command ON
    2012-11-24 14:14:17 - Licht_UG_Esszimmer_Decke received command OFF

    Nachdem ich den CRON Befehl wie folgt geändert habe:

    Code:
    Time cron "0 26 14  * * ?" und
    Time cron "0 30 14  * * ?"
    Hat das Licht wie gewünscht geschaltet:

    2012-11-24 14:26:00 - Licht_UG_Esszimmer_Tisch received command ON
    2012-11-24 14:30:00 - Licht_UG_Esszimmer_Tisch received command OFF

    Im Internet ist zu finden, dass die erste Zahl die Minuten angibt und nicht die Sekunden.

    Cron
    Cron

    Habe ich da etwas falsch verstanden oder ist dies einfach nicht kompatibel miteinander?

    Gruß
    mepi0011

    #2
    Hi,

    anscheinend ist CRON nicht gleich CRON
    Wir verwenden die Quartz Library und die erlaubt in der Tat als erste Stelle die Sekunde anzugeben, siehe
    Quartz Scheduler | Documentation | Quartz 1.x Tutorials: crontrigger

    Viele Grüße,
    Kai

    Kommentar


      #3
      Hallo mepi0011
      es gibt auch noch andere Überraschungen (Gimmicks)!

      bei den Wochentagen
      "0 0 8 * * MON-FRI"
      nach meiner früheren Auffassung sollte jetzt um 8 Uhr von Montag bis Freitag gefeuert werden
      aber jetzt gibt es nur eine Fehlermeldung.
      Wenn noch ein ? auf folgende weise einfüge funzt es aber tadellos.
      "0 0 8 ? * MON-FRI"
      Also muß man ein Fragezeichen bei Tag des Monat setzen wenn man bei Tag der Woche einen festen Wert eingibt und umgekehrt.

      Bis denne Markus

      Kommentar

      Lädt...
      X