NEWS
Frage zum Zeitplan CRON Regel
-
Moin,
ich habe ein Blockly in dem auch Datenpunkte erstellt werden. Jede Nacht um 00:00:02 wird ein neuer DP mit JJJJ-MM-TT angelegt. Alles super und funktioniert.
Jetzt fahren wir in Urlaub und die DP müssten an die Uhrzeit des Landes angepasst werden, damit die darin gespeicherten JSON Daten die dortige Uhrzeit speichern. Alles kann Problem. Ich rechne die 6 Stunden zur aktuellen Zeit hinzu und setze dann die Variable neu mit dem neuen Wert von JJJJ-MM-TT. Auch das klappt alles.
Jetzt muss ich die bisherigen Zeitpläne ändern. Ich will dafür diesen Block nehmen:
und den mit der entsprechenden Variablen füllen.Die eigentliche Frage: Wenn der Zeitplan geändert wird, greift das sofort, wenn dann also Mittags um 13 Uhr da "2 0 18 * * *" gesetzt wird, wird dann auch um 18:00:02 Uhr der Zeitplan gestartet? Oder muss ich das Blockly neu starten?
Habe einige Beiträge gelesen, aber dazu nichts gefunden.
Gruß, JoJo
-
Ja das sollte gehen, das Skript brauchst du nicht neu starten!
Ich habe mal was ähnliches gebaut, was der Zeit in einem Datenpunkt (testzeit) entspricht welche nach belieben angepasst werden kann, auch als Automatismus ggf. ... vielleicht hilft dir das weiter.
Du könntest dann natürlich auch für jeden cron wert einen eigenen (einfachen zahlenwert) datenpunkt beschreiben:
Oder eben einen Datenpunkt der die richtigen cron Daten enthält:
-
@cinimod sagte: was der Zeit in einem Datenpunkt (testzeit) entspricht
Dafür gibt es inzwischen einen eigenen Block:
Supported formats:
- [h]h:[m]m:ss (e.g. 12:42:15, 15:3:12, 3:10:25)
- [h]h:[m]m (e.g. 13:37, 9:40)
-
Ach cool, wusste ich noch garnicht, danke
-
Moin, bevor ich das in mein Blockly einbaue, wollte ich es testen und selbst der einfache Test wirft Fehler raus. Ich habe 2 DP vom Typ Zahl. Aktuell steht bei Stunde eine 11 und bei Minute die 20. Diese beiden DP setze ich als Variable mit den Namen Stunde und Minute. Sobald ich diese Variablen dann beim Zeitplan einsetze, kommt die Fehlermeldung.
Wo ist mein Denkfehler?
Fehlermeldung:
5.2.2025, 11:12:41.458 [info ]: javascript.0 (4823) Stopping script script.js.0_Blockly-Testen.Zeitplan_automatisch 5.2.2025, 11:12:41.461 [info ]: javascript.0 (4823) Start JavaScript script.js.0_Blockly-Testen.Zeitplan_automatisch (Blockly) 5.2.2025, 11:12:41.464 [error]: javascript.0 (4823) script.js.0_Blockly-Testen.Zeitplan_automatisch: TypeError: Cannot read properties of undefined (reading 'toString') 5.2.2025, 11:12:41.464 [error]: javascript.0 (4823) at script.js.0_Blockly-Testen.Zeitplan_automatisch:5:59 5.2.2025, 11:12:41.464 [error]: javascript.0 (4823) at script.js.0_Blockly-Testen.Zeitplan_automatisch:23:3
Gruß, JoJo
-
@jojo58 sagte in Frage zum Zeitplan CRON Regel:
Wo ist mein Denkfehler?
Das funktioniert so nicht.
Wenn schon, dann gehört das Erzeugen des Schedule mit in den Trigger.
Da muss der Schedule dann aber zunächst gelöscht und dann neu erzeugt werden.Warum nimmst Du nicht das Beispiel von @paul53 mit 'nem DP vom Typ "string"?
Da muss lediglich der Wert des DP angepasst werden (z.B. "11:32") und schon wird zum eingestellten Zeitpunkt gesteuert. -
Mit dem Schedule das muss ich irgendwann mal in Ruhe ausprobieren. Das habe ich ja völlig falsch verstanden.
Der Vorschlag von @paul53 funktioniert einwandfrei.
Danke für eure Hilfe.
Gruß, JoJo
-
@jojo58 sagte in Frage zum Zeitplan CRON Regel:
Mit dem Schedule das muss ich irgendwann mal in Ruhe ausprobieren. Das habe ich ja völlig falsch verstanden.
Das Prinzip:
-
@codierknecht sagte: Das Prinzip:
So übersteht Schedule keinen Skriptstart.
-
@paul53 sagte in Frage zum Zeitplan CRON Regel:
So übersteht Schedule keinen Skriptstart.
Deswegen ja auch Prinzip. Es ging mir hier um die Klärung der Vorgehensweise bei Änderungen - nicht um eine ausformulierte Lösung. Die hat der TE ja bereits mit Deinem Vorschlag "Zeitplan aus Zeit-Zustand".
-
@codierknecht sagte: Deswegen ja auch Prinzip
Vollständiges Prinzip mit separaten Stunden und Minuten:
-
Wo finde ich denn mal ein funktionierendes Beispiel? Oder wäre das sogar etwas für "Blockly for dummies"? Ich glaube da bin ich nicht der Einzige mit einem Verständnisproblem.
Andersherum muss ich sagen, dass das mit dem "Zeitplan aus Zeit-Zustand" eine einfache und funktionierende Lösung ist.
JoJo
-
@jojo58 sagte in Frage zum Zeitplan CRON Regel:
wäre das sogar etwas für "Blockly for dummies"?
Den "Zeitplan aus Zeit-Zustand" habe ich mal hinzugefügt. Der sollte für die meisten Anwendungsfälle ausreichen.
Alles andere würde an der Stelle zu weit führen. -
@codierknecht sagte in Frage zum Zeitplan CRON Regel:
Alles andere würde an der Stelle zu weit führen.
Stimmt, vor einem Jahr wäre ich damit völlig überfordert gewesen, heute kann ich eure Vorschläge zu 90% nachvollziehen, bei den restlichen 10% muss ich eben nochmal nachfragen.
wie mit dem Schedule.