Eine reine Uhrzeit gesteuerte Funktion lässt sich zunächst mit Zeitplänen, sog. Schedule Jobs, realisieren. Diese können inzwischen per Web UI weitgehend flexibel angelegt und geändert werden.
Der einzige Nachteil solcher Jobs liegt darin, dass sie ausschließlich zu den konfigurierten Zeiten triggern - also nicht nachträglich, falls zum Triggerzeitpunkt keine Stromversorgung vorliegt. Ich bin ein Fan solcher Schedule Jobs, weil der Scheduler bereits im Betriebssystem (Firmware) arbeitet.
Ein solcher Job kann jegliche verfügbare Methode nutzen, also nicht etwa nur etwas ein- oder ausschalten. Allerdings unterstützt das Web UI nicht das Eintragen/Editieren beliebiger Methoden. Hierfür ist ein HTTP Request geeignet, welcher per Web Browser abgeschickt werden kann (Adresszeile). Dies ist alles in der API Dokumentation verteilt beschrieben.
Ich habe u.a. eine Webseite erstellt, welche das Anlegen und Ändern von Schedule Jobs unterstützt, welche die Methode "Script.Eval" nutzen. Damit kann eine Skript interne Funktion aufgerufen werden, welche das Gewünschte sehr flexibel implementieren kann. Hiermit fügt sich die Flexibilität von Schedule Jobs und Skripten auf ideale Weise zusammen.
Ein solcher Schedule Job kann auch mehrere Methoden triggern. Dann ist der Eintrag aber sehr komplex und man muss sich sehr genau mit der Syntax solcher Einträge beschäftigen.
Die Verwendung solcher Jobs und/oder Skripten bietet den Vorteil der autarken Funktion eines Shelly, welche zumeist auch dann wirkt, wenn temporär kein WLAN verfügbar ist. Zu den Einschränkungen von Schedule Jobs bei fehlendem WLAN teile ich erst bei Interesse mehr mit, weil dies mehrere Aspekte umfasst.