Zum Inhalt springen

Time

Der Time-Trigger startet einen Lauf zu festen Zeiten, zum Beispiel jeden Werktag um 7 Uhr oder alle fünf Minuten. Der Lauf bekommt vom Trigger nur den Zeitpunkt ({{Trigger.Response.Results.TriggeredAt}}); alle weiteren Daten kommen aus InitialData oder von den Aktionen, zum Beispiel einer HTTP-Abfrage.

  • Die Zeiten gelten in der Zeitzone des PCs.
  • Ein Zeitplan feuert nur, solange RUNOS läuft. Termine, in denen RUNOS beendet war, werden nicht nachgeholt.
  • Dauert ein Lauf länger als der Abstand bis zum nächsten Termin, startet der nächste trotzdem pünktlich. Läufe können sich überschneiden.
"Trigger": {
"Type": "Time",
"Name": "Werktags7Uhr",
"Parameters": {
"CronExpression": "0 0 7 ? * MON-FRI",
"RepeatCount": 0
}
}
Parameter Standard Bedeutung
CronExpression 0/30 * * * * ? Wann ausgelöst wird. Standard: alle 30 Sekunden.
RepeatCount 0 Nach so vielen Läufen stoppt der Zeitplan. 0 = unbegrenzt.

RUNOS verwendet Cron-Ausdrücke im Quartz-Format mit Sekunden am Anfang, 6 oder 7 Felder:

Sekunde Minute Stunde Tag-im-Monat Monat Wochentag [Jahr]
Zeichen Bedeutung Beispiel
* jeder Wert * im Feld Stunde = jede Stunde
? kein bestimmter Wert; genau eines der Felder Tag-im-Monat und Wochentag muss ? sein ? * MON
a/b ab a alle b 0/15 in Sekunden = alle 15 s
a-b Bereich MON-FRI, 8-17
a,b Liste MON,WED,FRI
L letzter Tag des Monats L im Feld Tag-im-Monat

Wochentage: SUN MON TUE WED THU FRI SAT (oder 1–7, Sonntag = 1). Monate: JAN–DEC oder 1–12. Dieselben Ausdrücke verwendet der File-Trigger, um festzulegen, wie oft er seinen Ordner prüft.

Im Diagramm des Workflow-Editors hat der Trigger ein Formular mit Starten (CronExpression) und Stoppen nach (RepeatCount). Der Zeitplan wird ausgewählt statt getippt: Alle … Sekunden, Alle … Minuten, Jede Stunde (zur Minute …), Jeden Tag, Montag bis Freitag, An bestimmten Wochentagen (Tage anklicken) oder Einmal im Monat (Tag 1–31 oder letzter Tag), jeweils mit Uhrzeit. Darunter steht der erzeugte Cron-Ausdruck. Für alles andere wählen Sie Eigener Zeitplan (Cron-Ausdruck) und tippen den Ausdruck selbst; ein Ausdruck, den die Auswahl nicht abbildet (z. B. 0 0 8-17 ? * MON-FRI), erscheint automatisch so. Parameter, die das Formular nicht kennt, stehen unter Weitere Parameter.

Ausdruck Wann
0/30 * * * * ? alle 30 Sekunden
0 0/5 * * * ? alle 5 Minuten
0 0 * * * ? zu jeder vollen Stunde
0 0 7 * * ? täglich um 7:00
0 0 7 ? * MON-FRI werktags um 7:00
0 30 17 ? * FRI freitags um 17:30
0 0 8-17 ? * MON-FRI werktags stündlich von 8 bis 17 Uhr
0 0 6 1 * ? am 1. jedes Monats um 6:00
0 0 22 L * ? am letzten Tag jedes Monats um 22:00

Werktags um 7:00 eine Liste offener Aufträge abrufen und per Mail melden, wenn es welche gibt:

{
"Name": "Offene Aufträge",
"Autostart": true,
"Trigger": { "Type": "Time", "Name": "Morgens", "Parameters": { "CronExpression": "0 0 7 ? * MON-FRI" } },
"Actions": [
{
"Type": "HttpRequest",
"Name": "Abfrage",
"Parameters": {
"Url": "/orders?status=open",
"Connector": "Shop"
}
},
{
"Type": "If",
"Name": "GibtEsWelche",
"Parameters": {
"Condition": "{{Abfrage.Response.Body.items.count}} > 0",
"Do": [
{ "Type": "SMTP", "Name": "Melden", "Parameters": { "To": "vertrieb@example.com", "Subject": "Offene Aufträge: {{Abfrage.Response.Body.items.count}}", "Body": "…" } }
]
}
}
]
}