Datum und/oder Uhrzeit triggern

Ich möchte gerne auf ein von mir eingegebenes Datum/Uhrzeit triggern.

Hierzu dachte ich mir geht das am einfachsten mit dem Helfer “Datum und/oder Uhrzeit” über die UI.

Dort kann ich das gewünschte Datum und Uhrzeit eingeben und dann das Resultat in einer Automatisation verwenden.

Leider finde ich keinen Trigger der in der Automatisation greift. Auch der Helfer selbst scheint keinen Output zu liefern.

Hat das schon jemand in Benutzung und hätte einen Tip für mich?

vG
Franky

Moin,
bei mir läuft es ohne Probleme.

alias: Wecker
description: ""
trigger:
  - platform: time
    at: input_datetime.wecker

wen du in der UI bist ist das der Auslöser “Zeit” und da kannst du eine feste zeit einstellen oder eben ein Helfer auswählen.

LG
Tobi

Zeit gibt es bei mir nicht:

Ich hatte Zeitstempel probiert. Hier löst aber nichts aus

Ich möchte ja keine Auslösung auf nur “Zeit” sondern Zeit zu einem bestimmten Datum.

Wenn du auf “+AUSLÖSER HINZUFÜGEN” klickst dort “Zeit” auswählen.

LG

@Samhain du hast bei Auslöser bereits Zustand ausgewählt. Mach es so wie @totow geschrieben hat.

Ob der Helper ein Output liefert kannst du unter Entwicklerwerkzeuge - Template testen. Dort folgendes eingeben

{{ states('input_datetime.wecker') }}

und natürlich den richtigen Helper angeben.

Dank euch. Hat funktioniert :ok_hand:

Ich möchte gerne auf ein von mir eingegebenes Datum/Uhrzeit triggern.

Hierzu dachte ich mir geht das am einfachsten mit dem Helfer “Datum und/oder Uhrzeit” über die UI.

Dort kann ich das gewünschte Datum und Uhrzeit eingeben und dann das Resultat in einer

Habe einen Input helfer erstellt und dazu eine Automatisierung leider Funktioniert diese nicht z.b 31.07.2023 10:23 input helfer auf 31.07.2023 10.25 eingestellt und es passiert nichts.

Kann mir jemand helfen.

alias: "Zwischensaison Ein "
description: ""
trigger:
  - platform: time
    at: input_datetime.zwischensaison
  - platform: time
    at: input_datetime.zwischensaison_ende_fruhling
condition: []
action:
  - service: input_boolean.turn_on
    data: {}
    target:
      entity_id: input_boolean.sommer
mode: single

:crayon:by HarryP: Codezeilen in Code-TAG’s eingebunden.

@psp11
Warum stellst du deine Frage 2x im Forum, das macht es nicht besser.
Außerdem verstehe ich die verstümmelte Formulierung nicht ganz. Vielleicht formulierst du noch mal neu / ausführlicher.

:crayon:by HarryP: Crosspostings sind hier unerwünscht, habe das andere Thema gelöscht und die eine Antwort hierher verschoben!

Der Hauptgrund, warum Ihre Automatisierung nicht funktioniert, liegt wahrscheinlich daran, dass Sie den Helfer input_datetime in der trigger Plattform time mit der at Option direkt verwenden. Leider erlaubt Home Assistant diese direkte Verwendung nicht. Der Helfer input_datetime muss zuerst in einen String konvertiert werden, bevor er in der at Option verwendet werden kann.

Ihre Automatisierung sollte folgendermaßen aussehen:

alias: "Zwischensaison Ein"
description: “”
trigger:
  - platform: template
    value_template: "{{ as_timestamp(now()) | timestamp_custom('%Y-%m-%d, %H:%M') == states('input_datetime.zwischensaison') }}"
  - platform: template
    value_template: "{{ as_timestamp(now()) | timestamp_custom('%Y-%m-%d, %H:%M') == states('input_datetime.zwischensaison_ende_fruhling') }}"
condition: []
action:
  - service: input_boolean.turn_on
    target:
      entity_id: input_boolean.sommer
mode: single

In diesem Code werden die template-Triggers verwendet, um auf das Datum und die Uhrzeit des input_datetime-Helfers zu prüfen. Die Funktion as_timestamp(now()) | timestamp_custom('%Y-%m-%d, %H:%M') gibt die aktuelle Uhrzeit und das Datum zurück, während die Funktion states('input_datetime.zwischensaison') den Wert des input_datetime-Helfers zurückgibt. Wenn die beiden Werte übereinstimmen, wird der Trigger ausgelöst.

Bitte beachten Sie, dass die template-Trigger jede Minute überprüft werden, da now() jede Minute aktualisiert wird. Wenn Sie also eine genaue Sekunde für den Trigger benötigen, ist diese Methode möglicherweise nicht geeignet.

Vielen Dank für die Hilfe

Wie erstelle ich die Template für die Automation ?

Automatisierungen in Home Assistant basieren auf einer einfachen Struktur: Trigger, Bedingungen und Aktionen. Sie können jede dieser Komponenten über die Home Assistant-Oberfläche erstellen oder sie manuell in Ihrer Automations-YAML-Datei definieren.

Hier ist ein Beispiel, wie eine Automations-Template in einer YAML-Datei aussehen könnte:

automation:
  - alias: "Licht einschalten bei Sonnenuntergang"
    trigger:
      - platform: sun
        event: sunset
    action:
      - service: light.turn_on
        entity_id: light.dein_licht

In diesem Beispiel ist der Trigger der Sonnenuntergang. Es gibt keine Bedingungen, und die Aktion ist das Einschalten eines bestimmten Lichts.

Wenn Sie eine Bedingung hinzufügen möchten, könnte die Automation so aussehen:

automation:
  - alias: "Licht einschalten bei Sonnenuntergang wenn niemand zu Hause ist"
    trigger:
      - platform: sun
        event: sunset
    condition:
      - condition: state
        entity_id: group.all_devices
        state: 'not_home'
    action:
      - service: light.turn_on
        entity_id: light.dein_licht

In diesem Fall wird das Licht nur eingeschaltet, wenn niemand zu Hause ist.

Bitte beachten Sie, dass Sie “dein_licht” und “group.all_devices” durch die tatsächlichen Entitäts-IDs ersetzen müssen, die Sie in Ihrem System haben.

Zum Erstellen von komplexeren Automatisierungen mit Vorlagen könnten Sie den template Trigger, die template Bedingung oder die data_template für Aktionen verwenden. Diese erlauben es Ihnen, Jinja2-Vorlagen zu verwenden, um dynamische Ausdrücke zu erstellen. Hier ist ein Beispiel:

automation:
  - alias: "Licht einschalten wenn die Temperatur unter 20 Grad fällt"
    trigger:
      - platform: template
        value_template: "{{ states('sensor.temperature')|float < 20 }}"
    action:
      - service: light.turn_on
        entity_id: light.dein_licht

In diesem Fall prüft der Trigger, ob der Zustand des Temperatursensors unter 20 fällt. Beachten Sie, dass Sie ‘sensor.temperature’ durch die tatsächliche Entitäts-ID Ihres Temperatursensors ersetzen müssen.

Zur Erstellung von Automatisierungen mit Vorlagen empfehle ich, die offizielle Home Assistant Dokumentation und die Jinja2-Dokumentation zu konsultieren, um zu verstehen, wie Sie Ihre Ausdrücke erstellen können.

Guten Tag

Hat jetz geklappt danke für die schnelle Hilfe

Dank nicht mir, dank ChatGPT. :smiley:

Ich möchte so etwas ähnliches erstellen:

Eine Automation regelt über einen BM das Licht-Verhalten. Wenn ich diese Automation deaktiviere, möchte ich (über eine weitere Automation) dass die Licht-Automation um x:xx Uhr wieder aktiviert wird, aber NUR WENN die erste Automation deaktiviert wurde.
Geht das nur, wenn auf eine Uhrzeit getriggert wird?
Habe schon ziemlich viel versucht, aber jetzt brauche ich doch mal Hilfe :pray:t3:

Guten Morgen zusammen,

ich möchte etwas auslösen, nachdem eine gewisse Uhrzeit erreicht wurde (Wenn Uhrzeit = x:xx) und als Bedingung (zw. div. Aktionen wählen - Bedingungen) eine Bewegung detektiert wurde.
Ich bekomme es aber nur gelöst, wenn ich die Abfrage nach der Bewegung als Auslöser (Wenn) verwende und die Uhrzeit/Zeitraum als Bedingung.
Da dieser BWM ziemlich oft ausschlägt, würde diese Automation dann ziemlich oft im Log auftreten, anders herum nur 1x am Tag.
Gibt es eine Möglichkeit, mit der ich abfragen kann ob die Uhrzeit erreicht wurde und dann erst etwas mache, wenn der BWM ausschlägt?

Oder das ganze über eine 2. Automation realisieren :thinking: Wenn Uhrzeit erreicht, dann aktiviere 2. Automation, welche Abfrage nach Bewegung enthält… und nach Dauer x wieder deaktiviert wird (in diesem Zeitraum sollte die Bewegung erfolgt sein).

Du willst ja, dass um x:xx Uhr ausgelöst wird, somit ist es dein Trigger.
So könnte es evtl. aussehen

description: ""
mode: single
trigger:
  - platform: time
    at: "20:00:00"
condition:
  - condition: state
    entity_id: automation.xxx
    state: "off"
action:
  - action: automation.turn_on
    metadata: {}
    data: {}
    target:
      entity_id: automation.xxx

Hat es evtl. was hiermit zu tun?

Ja, genau.
Nochmal zum besseren Verständnis:

Die Automation soll um x Uhr starten, aber erst auslösen sobald Bewegung erkannt wird.
Wird vor x Uhr Bewegung erkannt, soll noch nichts passieren.

Jein, die Automation soll um x Uhr starten und erst dann auslösen sobald Bewegung erkannt wird.
Wird vor x Uhr Bewegung erkannt, soll noch nichts passieren.
Sorry, da hatte ich mich nicht richtig ausgedrückt.

Also in der 1. Automatisierung hast du ja den BWM als Trigger, korrekt?
Und in der 2. Automatisierung willst du die erste Automatisierung für einen gewissen Zeitraum deaktivieren?
Verstehe den Sinn von 2 Automatisierungen nicht.

Trigger: Bewegung erkannt
Bedingung: vor bzw. nach gewisser Zeit

Da wird dann im gewissen Zeitraum nix geschaltet.

Aber gut, du kannst ja die 1. Automatisierung mit BWM lassen und dann die 2. Automatisierung:

description: ""
mode: single
trigger:
  - platform: time
    at: "08:00:00"
    id: automation-aus
  - platform: time
    at: "20:00:00"
    id: automation-ein
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - automation-aus
        sequence:
          - action: automation.turn_off
            metadata: {}
            data:
              stop_actions: true
            target:
              entity_id: automation.bwm
      - conditions:
          - condition: trigger
            id:
              - automation-ein
        sequence:
          - action: automation.turn_on
            metadata: {}
            data:
              stop_actions: true
            target:
              entity_id: automation.bwm

Um 8 Uhr wird die BWM Automatisierung deaktiviert und um 20 Uhr wieder aktiviert.