NEWS
[gelöst]Blockly time to cron nach neustart
-
Ich konvertiere Eingabe von Vis in eine Einschaltzeit und die Eingabe/Änderung wird getriggert und löst dann time to cron aus.
Soweit so gut und geht auch alles. Wenn ich nun aber iobroker neu starte läuft der Trigger erst, wenn eine Änderung der Einschaltzeit vorgenommen wird.
Was wäre best practice damit das Ding nach neustart auch von alleine läuft?
1. Trigger umstellen auf Aktualisierung und nicht auf Änderung? Dann würde aber ständig neu gestartet
2. Weiterer Trigger auf z.B. nachts um 1 Uhr und den Zeitplan "HeizungBadEinschaltzeit" da ebenfalls reinkopieren? Dann wäre es halt doppelt
3. Weiterer Trigger auf irgendwas wo bei neustart von false auf true geht, z.B. Telegram Adapter connection? sinnvoll?
4. Auslösen bei Skriptstart? Vermutlich die beste Lösung, aber geht das mit Blockly?
-
1. Trigger umstellen auf Aktualisierung und nicht auf Änderung? Dann würde aber ständig neu gestartet
2. Weiterer Trigger auf z.B. nachts um 1 Uhr und den Zeitplan "HeizungBadEinschaltzeit" da ebenfalls reinkopieren? Dann wäre es halt doppelt
3. Weiterer Trigger auf irgendwas wo bei neustart von false auf true geht, z.B. Telegram Adapter connection? sinnvoll?
4. Auslösen bei Skriptstart? Vermutlich die beste Lösung, aber geht das mit Blockly? `
HalloZu 4.
Alles was in Trigger "Einschaltzeit" ist, in eine Funktion setzen.
Aus Trigger "Einschaltzeit" die Funktion aufrufen.
In der neuen Funktion würde ich aber noch eine Sicherheitsabfrage machen.
Nach einem Neustart/Crash kann "Einschaltzeit" auch mal "NULL" sein.
Den Funktionsaufruf zusätzlich auch außerhalb der Trigger packen.
Dann würde die auch bei StriptStart einmalig aufgerufen.
Grüße
-
Falls du das so gemeint hast, geht leider nicht.
"Dieser Block darf nur innerhalb Falls Block verwendet werden"
Ich hätte hier auch mal noch den Export, aber zu groß…
-
Falls du das so gemeint hast, geht leider nicht.
"Dieser Block darf nur innerhalb Falls Block verwendet werden"
Ich hätte hier auch mal noch den Export, aber zu groß… `
Dann musst man den "Wert" anders verwenden.Auf den Screenshots ist leider nicht viel zu sehen.
Export zu groß? Was hängt denn da noch alles dran?
Man kann den aber auch als .TXT Datei hier ablegen.
-
Falls du das so gemeint hast, geht leider nicht.
"Dieser Block darf nur innerhalb Falls Block verwendet werden" `
Kannst du die Funktion mit einem Parameter erstellen und beim Aufruf den Objekt-Wert als diesen Parameter übergeben?Dann innerhalb der Funktion statt dem Objekt-Wert den Parameter einsetzen.
-
Ich hab diverses durchprobiert, aber sobald ich den Block wo der timetocron verarbeitet wird nur auch in irgendeine Funktion oder sonst wie verschiebe, will er nicht mehr.
Ich hab auch versucht den Cron Wert in eine Variable zu übergeben, aber da bin ich trotzdem an einen "Falls" Trigger gebunden.
Anbei txt mit dem Export.
1586_zustand_heute.txt -
Hallo
Reichliches Durcheinander in Deinem Blockly :shock:
Wenn man nicht alles in ein Script packt wird es übersichtlichen.
Reicht Dir ein Screenshot?
Grüße
-
Höh
, das ist nur groß, aber nicht durcheinander
Wenn man alles in ein Skript packt, sind zwar die Skripte unübersichtlicher, aber ich hab alles zusammen (in dem Fall die Heizung im Bad) in einem Skript was zu dem Thema wann passiert.
Und wenn man die Bausteine zusammenfaltet und bei Bedarf entfaltet geht´s.
Danke! Ich habs mal nachgebaut, schaut gut aus. Testen kann ich erst morgen.
-
Hi @andyb ,
kannst Du mir bitte Deine Lösung posten?
Ich habe aktuell dasselbe Problem was du im ersten Posting beschrieben hast.Danke!
Steffen