Bedingung Prüfzeitpunkt beim Auslösen und Ausführen

Bereich rings rum zum Thema Yaml und seine Tücken.


Antworten
mondface
Beiträge: 167
Registriert: Di 10. Mai 2022, 23:06
1
Has thanked: 110 times
Been thanked: 12 times

Bedingung Prüfzeitpunkt beim Auslösen und Ausführen

Beitrag von mondface »

Hallo,
wie setzte ich so etwas in ha um?
so habe ich es in homee bislang gemacht:

Dateianhänge
Screenshot 2022-10-25 202431.jpg
Screenshot 2022-10-25 202431.jpg (30.25 KiB) 92 mal betrachtet
Benutzeravatar
Osorkon
Administrator
Beiträge: 1905
Registriert: Sa 17. Jul 2021, 16:53
2
Wohnort: Langenargen
Has thanked: 60 times
Been thanked: 516 times
Kontaktdaten:

Re: Bedingung Prüfzeitpunkt beim Auslösen und Ausführen

Beitrag von Osorkon »

Auf deutsch, wenn Plug 10min lang ausgeschaltet, dann Plug einschalten?

Code: Alles auswählen

description: "Ikea Bridge einschalten"
mode: single
trigger:
  - platform: state
    entity_id:
      - switch.ikea_bridge
    from: "on"
    to: "off"
    for:
      hours: 0
      minutes: 10
      seconds: 1
condition: []
action:
  - service: switch.turn_on
    data: {}
    target:
      entity_id: switch.ikea_bridge

Gruß
Osorkon

Einer muss ja für Ordnung sorgen. :D
mondface
Beiträge: 167
Registriert: Di 10. Mai 2022, 23:06
1
Has thanked: 110 times
Been thanked: 12 times

Re: Bedingung Prüfzeitpunkt beim Auslösen und Ausführen

Beitrag von mondface »

damit klappt es
aber wenn der plug sich nicht einschalten lässt, dann soll 12 minuten nach ausschalten des plugs ein push mitteilung versendet werden.
wie macht man das dann?

Benutzeravatar
Osorkon
Administrator
Beiträge: 1905
Registriert: Sa 17. Jul 2021, 16:53
2
Wohnort: Langenargen
Has thanked: 60 times
Been thanked: 516 times
Kontaktdaten:

Re: Bedingung Prüfzeitpunkt beim Auslösen und Ausführen

Beitrag von Osorkon »

Gibt natürlich mehrer Möglichkeiten.
Ich würde den Trigger verwenden Plug ist 12min lang aus und alles in eine Automatisierung packen. Du kannst natürlich das ganze auch auf 2 Automatisierungen aufteilen.

Aber warum sollte sich Dein Plug nicht schalten lassen?! Hast Du Deinen Geräte nicht im Griff? 😉

Code: Alles auswählen

description: "Ikea Bridge einschalten"
mode: single
trigger:
  - platform: state
    entity_id:
      - switch.ikea_bridge
    from: "on"
    to: "off"
    for:
      hours: 0
      minutes: 10
      seconds: 0
    id: 10min
  - platform: state
    entity_id:
      - switch.ikea_bridge
    from: "on"
    to: "off"
    for:
      hours: 0
      minutes: 12
      seconds: 0
    id: 12min
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id: 10min
        sequence:
          - service: switch.turn_on
            data: {}
            target:
              entity_id: switch.ikea_bridge
      - conditions:
          - condition: trigger
            id: 12min
        sequence:
          - service: notify.telegram_xy
            data:
              message: Ich habe ein Zigbee Problem
              title: Mein Ikea Plug streikt mal wieder!

Gruß
Osorkon

Einer muss ja für Ordnung sorgen. :D
mondface
Beiträge: 167
Registriert: Di 10. Mai 2022, 23:06
1
Has thanked: 110 times
Been thanked: 12 times

Re: Bedingung Prüfzeitpunkt beim Auslösen und Ausführen

Beitrag von mondface »

sind funkprotokolle immer so zuverlässig wie drahtgebundene? ;^)

manchmal wird nur einer der beiden service ausgelöst, wenn ich die Reihenfolge ändere, klappt es besser.
hier ein Beispiel:

Code: Alles auswählen

action:
  - service: rest_command.homee
    data:
      variable: ManuellZuHause
  - service: automation.trigger
    data: {}
    target:
      entity_id: automation.zuhause
mode: single
Benutzeravatar
Osorkon
Administrator
Beiträge: 1905
Registriert: Sa 17. Jul 2021, 16:53
2
Wohnort: Langenargen
Has thanked: 60 times
Been thanked: 516 times
Kontaktdaten:

Re: Bedingung Prüfzeitpunkt beim Auslösen und Ausführen

Beitrag von Osorkon »

mondface hat geschrieben: Mi 26. Okt 2022, 09:45

sind funkprotokolle immer so zuverlässig wie drahtgebundene? ;^)

Kabel ist immer besser, aber ein Kabelbruch ist auch nicht auszuschließen. 😉

Spaß bei Seite. Ich würde behaupten, meinen Funkkomponenten Z-Wave oder ZigBee schalten zu 99,9%
Wenn Du andere Erfahrungen hast, solltest Du mal auf Fehlersuche gehen, warum dass bei Dir so unzuverlässig funktioniert.

Auch wenn das das Problem nicht löst, könnest Du den Befehl mehrmals abschicken bis der gewünschte Zustand erreicht ist.
Hier mal ein Bsp.

Gruß
Osorkon

Einer muss ja für Ordnung sorgen. :D
mondface
Beiträge: 167
Registriert: Di 10. Mai 2022, 23:06
1
Has thanked: 110 times
Been thanked: 12 times

Re: Bedingung Prüfzeitpunkt beim Auslösen und Ausführen

Beitrag von mondface »

danke für deine Antwort.
daher auch alles redundant verlegen und HA (High Availability) bei HA (Home Assistant) verwenden! ;^)

wird die Aktion eigentlich sequentiell abgearbeitet und bei einem Fehler unterbrochen?

also

Code: Alles auswählen

  - service: rest_command.homee
    data:
      variable: ManuellZuHause

macht einen fehlercode und dann wird dies nicht mehr ausgeführt:

Code: Alles auswählen

  - service: automation.trigger
    data: {}
    target:
      entity_id: automation.zuhause

oder werden alle unter action parallel ausgeführt?

Benutzeravatar
Osorkon
Administrator
Beiträge: 1905
Registriert: Sa 17. Jul 2021, 16:53
2
Wohnort: Langenargen
Has thanked: 60 times
Been thanked: 516 times
Kontaktdaten:

Re: Bedingung Prüfzeitpunkt beim Auslösen und Ausführen

Beitrag von Osorkon »

Wird sequentiell ausgeführt. Tritt ein Fehler auf, bricht die Automatisierung an der Stelle ab.

Willst Du Aktionen parallel ausführen, musst Du das explizit angeben.

Code: Alles auswählen


action:
  - parallel:
      - service: rest_command.homee
        data:
          variable: ManuellZuHause
      - service: automation.trigger
        data: {}
        target:
          entity_id: automation.zuhause

Gruß
Osorkon

Einer muss ja für Ordnung sorgen. :D
mondface
Beiträge: 167
Registriert: Di 10. Mai 2022, 23:06
1
Has thanked: 110 times
Been thanked: 12 times

Re: Bedingung Prüfzeitpunkt beim Auslösen und Ausführen

Beitrag von mondface »

danke!

also z.b. auch so:

Code: Alles auswählen

action:
  - choose:
      - conditions:
          - condition: trigger
            id: 10min
        sequence:
          - service: switch.turn_on
            data: {}
            target:
              entity_id: switch.on_off_plug_in_unit_12
      - conditions:
          - condition: trigger
            id: 12min
        sequence:
          - parallel:
            - service: rest_command.telegram
              data:
                variable: Plug Ikea Bridge ist aus
            - service: notify.notify
              data:
                message: Plug Ikea Bridge ist aus
mode: single
Antworten