Hallo zusammen,
ich habe letzte Wintersaison meine Rolläden über eine Zeitsteuerung fahren lassen (In Abhängigkeit von Sonnenauf- und untegang).
Es wurden vom Script in einer Variable Timestamps hinterlegt und ein Script lief dann jede Minute um den aktuellen Timestamp mit dem in der Variable zu vergleichen. Das funktionierte einwandfrei, weil die Anforderung scheinbar schnell genug abgearbeitet wurde.
Jetzt zur Zeitumstellung bei Vers. 2.x klappte das Automatische Fahren meist nicht. Nach Fehlersuche bin ich zu dem Ergebnis gekommen, das mein Script nicht pünktlich um hh:mm:00 ausgeführt wurde, sondern um 3sec verzögert(wodurch auch immer). Somit paßte der Timestamp natürlich nicht mehr …
Da ich nicht wußte was die Verzögerung auslöst, war mein erster Ansatz die Zeit nicht auf hh:mm:00 zu begrenzen, sondern auf die ganze erste Minute, somit also ein Zeitraum zu erstellen. Das würde aber zusätzlichen Code bedeuten …
Die 2. Lösung wäre direkt täglich ein Event zum rauf/runter fahren zu erstellen und damit 1. Code zu sparen und 2. das Script nicht jede Minute laufen zu lassen.
Dafür müßte ich aber entweder das schon vorhandene löschen oder ändern. Und da ist jetzt mein Problem … ich kann zwar ein Event ByName finden und dann löschen, aber wie erstelle ich den Namen für ein Event? Ich konnte bisher keine Angabe in der Doku dazu finden bzw. das nur manuell machen!?
Oder reicht es einfach folgenden Befehl zu nutzen:
IPS_SetEventCyclicTimeBounds
Und den dann bei Bedarf per Script zu ändern!?
Kann ich den Namen des Ereignis herausfinden, welches das Script letztendlich auslöst? Also wenn ich 2 Timer an ein Script hänge … kann ich identifizieren welches gerade der Auslöser war?
edit
Ach ja … Gibt es eigentlich eine Möglichkeit zu überprüfen ob ein Timer ausgeführt wurde und dann darauf zu reagieren?
Gruß
Jens