Hi mentox,
wie findest du folgenden Lösungsansatz?
Wenn z.B. für DeviceID=15 definiert ist nach X min. wieder aus/einzuschalten.
Sobald von ID=15 der entsprechende Event kommt wird in eine Datei "einausschaltzeiten.def" folgendes einfügt (sortiert):
JJJJMMTT_HHMMSS,15,ON (oder OFF)
Wobei die Uhrzeit die aktuelle Uhrzeit PLUS der X min. Ein/Ausschaltverzögerung ist.
Wenn dein CronTimer (der eh alle X min. auslöst) die WebApp aufruft kannst du in einer kleinen Logik die Datei auswerten, ggfls. die Ein/Ausschaltbefehle senden und alles was älter als Systime ist löschen...
Um evtl. Probleme zu verhindern müsste man bei jedem Ein/Ausschalten eines Gerätes mit Verzögerung auch die Datei bereinigen, sonnst kommt es zu ungewollten Überlappungen. (Wenn man ein Device mehrmals ein/ausschaltet sollte immer nur der letzte ein/ausschaltbefehl in der Datei erhalten bleiben)
Ein kleines Editierprogramm in den Einstellungen kann evtl. die Datei Anzeigen und bearbeiten und komplett löschen...
Man hat so auch eine schöne Übersicht was alles an Verzögerungen ansteht
Na was meinst du dazu?
Barni