NEWS
[gelöst] Script stündlich ausgeführt, aber nicht um 0 Uhr
-
Guten Morgen allerseits
Ich habe eine Frage zu einem Zeitgesteuerten Script.
Und zwar soll dieses Script stündlich (variabel Einstellbar; Parameter mm) zur vollen Stunde ausgeführt werden.Mein Pattern im schedule-Befehl sieht folgendermassen aus:
"time":{"start":"00:00","end":"24:00","mode":"minutes","interval":mm},"period":{"days":1}}Das funktioniert alles soweit gut, bis auf dass das Script um 0 Uhr nicht ausgeführt wird.
Ich hatte zuvor schon 23:59 als Ende-Zeit eingestellt. Aber da lief das Script ebenfalls nicht um 0 Uhr.Was mache ich falsch, muss ich ändern?
Danke und viele Grüsse
Oliver -
@greatemu sagte in Script wird stündlich ausgeführt, aber nicht um 0 Uhr:
schedule-Befehl
zeig den mal
-
@greatemu sagte in Script wird stündlich ausgeführt, aber nicht um 0 Uhr:
Mein Pattern im schedule-Befehl sieht folgendermassen aus:
"time":{"start":"00:00","end":"24:00","mode":"minutes","interval":mm},"period":{"days":1}}nimm cron
0 * * * *
wobei ich mit
@greatemu sagte in Script wird stündlich ausgeführt, aber nicht um 0 Uhr:variabel Einstellbar; Parameter mm
nichts anfangen kann.
-
Ich bin immer wieder von der Reaktionszeit hier begeistert. Danke!
Der Befehl sind so aus ( in Auszügen:)
schedule( Pattern, function () { WriteLog( LogTypeInfo, thisFunc, 0, "Prozess gestartet" ); })
Dabei wird Pattern in einer Funktion gefüllt:
(@Homoran : Dies sollte dann auch deine Frage nach der Variablen erklären)const cSchedulePattern = '{"time":{"start":"00:00","end":"24:00","mode":"minutes","interval":mm},"period":{"days":1}}'; let Minutes = getState( globalDP + "UpdateInterval").val; let SchedulePattern = cSchedulePattern.replace( "mm", Minutes ); return SchedulePattern;
-
Ich hab keine Ahnung was du mit dem "Pattern" willst?
Ich glaube aber du willst die Schedule variabel und einstellbar machen.
z.B. sowas:
var cronMoStunde = getState(SS+"Mo_Stunde").val; var cronMoMinute = getState(SS+"Mo_Minute").val; schedule(cronMoMinute + " " + cronMoStunde + " * * 1", function () { if (getState(SS+"Mo_aktiv").val === true) { Robo_ein("Mo"); } });
Und nehm die Syntax wie im Script; als auch von @homoran vorgeschlagen.
-
@bahnuhr sagte in Script wird stündlich ausgeführt, aber nicht um 0 Uhr:
Und nehm die Syntax wie im Script; als auch von @homoran vorgeschlagen.
jetzt hab ich auch die Variable gesehen
@GreatEMU will nur die Minuten variabel gestalten
-
@homoran sagte in Script wird stündlich ausgeführt, aber nicht um 0 Uhr:
@GreatEMU will nur die Minuten variabel gestalten
Na, dann muss er das Script halt entsprechend abändern.
-
@bahnuhr :
Genau deswegen habe ich den Post aufgemacht!
Wie muss ich Pattern setzen, damit mein Script zur vollen Stunde und alle x Minuten ausgeführt wird.Wenn x auf 60 steht soll das Script z.B. um 13 Uhr, 14 Uhr, 15 Uhr etc. laufen
Wenn x auf 30 steht soll das script entsprechend um 13 Uhr, 13.30 Uhr, 14 Uhr, 14.30 Uhr laufen.So weit funktioniert das auch. Es erfolgt halt nur kein Start um 0 Uhr.
-
Ich weiß nicht was pattern ist.
Was spricht gegen cron ? -
@greatemu sagte: Der Befehl sind so aus ( in Auszügen:)
Vorschlag:
schedule('*/' + getState(globalDP + "UpdateInterval").val + ' * * * *', function () {
-
@bahnuhr : Den Pattern-Parameter hat mir der Zeit-Wizard im Javascript-Adapter so zusammengestellt.
Über die Cron-Schreibweise bin ich auch schon "gestolpert". Da dachte ich aber, der startet sofort und nicht zur vollen Stunde.@paul53 : Danke für die Vorlage. Habe es so eingebaut und zumindest das stündliche Trigger klappt. Ob das Script nun auch um 0 Uhr ausgeführt wird, muss sich in der kommenden Nacht zeigen.
-
Hallo zusammen
Mit der Cron-Syntax wird das Script auch um 0 Uhr ausgeführt.
Nun wäre es noch interessant zu wissen, warum die Pattern-Syntax nicht um 0 Uhr ausgeführt wird.
Aber für mich hat sich das Thema erledigt und kann geschlossen werden.