Ich glaube er hat ne Variable in der 14:00 steht und möchte den Script start immer zu dieser Zeit ausführen. Die Variable kann sich ja ändern, dann müsste er manuell das Ereignis anpassen. Nicht sehr schön. Das geht doch sicher via Skript, oder?
Sowas muss es doch schon geben z.B. für Sonnenauf- und Untergang, oder?
Ich setze einen Event auf die Variable (bei Änderung) und starte damit ein script welches mit mein Event für das eigentlich zu startende Script auf den Wert der Variable setzt.
Kling kompliziert, ist es aber sicher nicht.
Man kann doch über ein Skript auch einen Timer setzen, der zu der genannten Uhrzeit auslöst. Sind glaub ich Befehle wie „IPS_SetEventDateBounds“ oder so ähnlich. Steht aber in der Doku beschrieben.
Hallo MicF … es gib hier einen langen Thread unter Anleitungen / nützliche Scripte und zwar den hier:
Dieses Script legt automatisch Timer an bzw. ändert diese auf Grund von astronomischen Ereignissen. Vom Prinzip kannst du das Script übernehmen oder abändern, so das du einfach deine Variable mit der Uhrzeit benutzt an Stelle der errechneten Ereignisse …
Du kannst aber auch selber etwas basteln … schau dir in der Doku dazu die Befehle IPS_SetEvent mal an. Wichtig ist nur das du in deinem Script die Uhrzeit in einen Unix Timestamp umwandelst … in dem Astro Script wird das nämlich durch eine Funktion erledigt.
Und was das minütlich schauen ob die Zeit erreicht ist an geht … das geht sehr wohl und funktioniert auch sehr gut, es ist allerdings auf Grund der vorhandenen Möglichkeiten nicht notwendig
Das hatte ich schon gesehen.
Mir schien es aber irgendwie „in den Rücken durch die Brust ins Auge“ zu sein.
Ich dachte das geht mit IPS einfacher.
Im Prinzip bräuchte ich ja nur so etwas (Pseudo Code):
if (StartZeitVariable == aktuellUhrzeit)
{
runScript xy;
}
Ich könnte jetzt natürlich ein zyklischen Event, minütlich ausführen und dann aktuelleUhrzeit mit der StartZeitVariable vergleichen.
Aber das ist ja auch nicht der Weisheit letzter Schluss.
Wenn in Hometic die Datums und Zeitfunktionen nicht so rudimentär wären, wäre es damit ganz einfach.
Ist ja schön wenn du dir das so einfach denkst … aber wer führt dann das Script mit der IF Abfrage aus?
Es gibt für dich nur 2 Lösungen … entweder legst du einen Timer auf dein Script, der das Script minütlich ausführt und die IST-Zeit mit der SOLL-Zeit vergleicht, oder du legst per Script einen Timer an!
Wenn du per Script einen Timer anlegst, dann als Beispiel Täglich um 00:00:01 und zusätzlich noch auf Änderung deiner Variable.
Das Script holt sich den Inhalt der Variable, wandelt es mit
strtotime()
in einen Timestamp um und erstellt oder erneuert dann den Timer … fertig … soooo sehr umständlich ist das gar nicht
Du willst ein Event zu einem Zeitpunkt, der in einer Variablen als Wert gespeichert ist, ausführen.
Vielleicht ist eine Möglichkeit, den Scripttimer auf die Differenz „Jetzt“ zu „Wert der Variablen“ zu setzen.
Oder es gibt doch bestimmt eine Möglichkeit, einen einmaligen Event mit dem Aulösezeitpunkt = „Wert der Variablen“ zu erzeugen. Der gespeicherte Wert muss dann natürlich passend umgewandelt werden.
Ich denke, irgendwo sagen wir alle das gleiche.
Stichwort sind eben die „IPS_SetEvent…“-Befehle. Damit und den o.g. Tipps funktioniert es wie gewünscht.
Danke für eure Beiträge, es läuft wohl in der tat darauf hinaus, dass ich events generieren muss, wie das das Astro Script tut.
Schön wäre, wenn IPS eine Event auslösen könnte, zum Zeitpunkt, das in einer Variablen steht, also nicht fest definiert ist.
Aber das müsste dann im Produkt passieren.
Ich habe verstanden, dass das nicht über Script lösbar ist.