TelegramTriggerByTimes (Telegramm nach Zeiten triggern)

Dieser Baustein gehört zum Paket „Trigger (Auslöser).“

Paket-Preis: 14,50€

Kurzbeschreibung

Diese Logik ermöglicht es, eine Aktion automatisch zu bestimmten Uhrzeiten auszulösen. Dabei können bis zu 30 verschiedene Zeiten eingestellt werden, an denen ein Signal gesendet wird. Die Funktion überprüft regelmäßig, ob eine dieser Zeiten erreicht wurde, und gibt dann ein entsprechendes Signal aus. Zusätzlich wird protokolliert, wann der Auslösevorgang gestartet und wann er tatsächlich durchgeführt wurde. Dies ist besonders nützlich für zeitgesteuerte Automatisierungsprozesse.

Besonderheit

  • Flexible Anzahl an Auslösezeiten
    Die Anzahl der gewünschten Uhrzeiten kann flexibel zwischen 1 und 30 eingestellt werden. Die Funktion passt sich dynamisch an die Anzahl der eingetragenen Uhrzeiten an.

  • Tägliches Zurücksetzen der Auslösung
    Jede eingestellte Uhrzeit wird pro Tag nur einmal ausgelöst. Nach Mitternacht werden alle Zeitpunkte automatisch zurückgesetzt, sodass sie am nächsten Tag erneut aktiviert werden können.

  • Fehlerprotokollierung integriert
    Sollte es zu einem Fehler bei der Ausführung oder Terminplanung kommen, wird dieser automatisch im Protokoll vermerkt, sodass eine einfache Analyse möglich ist.

  • Automatische Protokollierung von Aktivitäten
    Die Logik dokumentiert sowohl, wann sie aktiviert/deaktiviert wurde, als auch wann eine Auslösezeit tatsächlich erreicht und ausgeführt wurde.

  • Zeitgesteuerte Wiederholungsprüfung alle 30 Sekunden
    Intern wird alle 30 Sekunden überprüft, ob eine der eingestellten Uhrzeiten erreicht wurde. Dadurch wird eine präzise Ausführung ermöglicht.

Die Funktion bietet die Möglichkeit, ein automatisches Signal basierend auf vordefinierten Uhrzeiten zu senden. Der Nutzer kann zwischen 1 und 30 verschiedene Uhrzeiten festlegen, zu denen das Signal ausgelöst werden soll. Sobald die Aktivierung erfolgt, beginnt die Logik mit einer regelmäßigen Überprüfung der aktuellen Uhrzeit.

Wenn die aktuelle Zeit einen der eingestellten Zeitpunkte erreicht oder überschreitet und dieser Zeitpunkt an diesem Tag noch nicht verwendet wurde, wird ein Ausgangssignal aktiviert. Dieses kann z. B. verwendet werden, um andere Automatisierungen zu starten. Danach wird dieser Zeitpunkt als „verwendet“ markiert, sodass er nicht mehrfach ausgelöst wird.

Nach Mitternacht wird das System automatisch zurückgesetzt, sodass am nächsten Tag alle Zeiten erneut verwendet werden können. Die Funktion bleibt dabei kontinuierlich aktiv, bis sie manuell deaktiviert wird. Durch eine interne Zeitschleife wird sichergestellt, dass alle Triggerzeiten zuverlässig überprüft werden.

Außerdem werden zwei Protokollausgaben bereitgestellt: Eine dokumentiert die allgemeinen Aktivierungen oder Deaktivierungen, die andere dokumentiert, wann tatsächlich ein Auslöser erfolgt ist. Bei eventuellen Fehlern in der Ausführung wird ebenfalls ein Hinweis protokolliert, um eine einfache Fehleranalyse zu ermöglichen.

  • Activate (bool):
    Aktiviert oder deaktiviert die gesamte Funktion.
  • NumberOfTriggerByTime (int):
    Gibt an, wie viele verschiedene Uhrzeiten verwendet werden können. (Min: 1, Max: 30)
  • TriggerByTime (timespan): 
    • Eine Liste von Uhrzeiten (z. B. 07:30, 12:45 usw.), an denen das Ausgangssignal aktiviert werden soll. Die genaue Anzahl der möglichen Einträge hängt vom vorherigen Eingabewert ab.

    • Jeder Eintrag steht für eine separate Zeit, zu der das Signal ausgelöst werden kann.

    • Es darf kein Uhrzeitwert leer bleiben, sonst wird keine Ausführung vorgenommen.

  • Output (bool):
    Gibt ein Signal aus, wenn eine der festgelegten Uhrzeiten erreicht oder überschritten wurde. Dieses Signal kann für beliebige Folgeaktionen verwendet werden.
  • LogExecute (string):
    Protokolliert, wann die Funktion aktiviert oder deaktiviert wurde und ob dabei ein Fehler aufgetreten ist.
  • LogSchedule (string):
    Protokolliert, wann eine festgelegte Uhrzeit tatsächlich zu einem Signal geführt hat. Auch hier werden mögliche Fehler erfasst.

Beispiel 1 – Rolladensteuerung nach Tageszeit:

Morgens und abends sollen automatisch die Rollläden geöffnet bzw. geschlossen werden.

  • Eingabe:
    • Activate: true
    • NumberOfTriggerByTime: 2
    • TriggerByTime: 06:30, 21:00
  • Ausgabe:
    • Output: Um 06:30 wird ein Signal zum Öffnen gesendet. Um 21:00 folgt ein weiteres Signal zum Schließen.
Warum wird keine Aktion ausgeführt, obwohl ich Uhrzeiten eingetragen habe?

Stellen Sie sicher, dass alle eingetragenen Zeiten gültig sind und kein Feld leer bleibt. Zudem muss die Aktivierung eingeschaltet sein.

Kann ich auch mehrere Uhrzeiten für denselben Tag eingeben?

Ja, es können bis zu 30 verschiedene Uhrzeiten eingegeben werden – auch mehrere für denselben Tag.

Was passiert, wenn eine Uhrzeit in der Vergangenheit liegt?

Wenn eine eingetragene Uhrzeit am aktuellen Tag bereits vergangen ist, wird sie an diesem Tag nicht mehr ausgelöst. Ab dem nächsten Tag wird sie wieder berücksichtigt.

  • Version 3.0.10
    • First Release

Baustein-Support

Wenn Sie X1-Logik-Baustein-Support benötigen, senden Sie uns bitte zusätzlich den Log (LogExecute und LogSchedule, welcher als Ausgang des Bausteins ausgegeben wird) und eine detaillierte Beschreibung des Problems zu!