Zur Info: Wie unterscheiden ob ein Helfer über Automatisation oder Dashboard Klick verändert wurde?

Falls jemand wie ich seltener in die Doku schaut und folgendes Szenario abfangen möchte:

Ich habe auf dem Dashboard einen Helfer (input_boolean), der bestimmt ob ich per Mail bei Bewegung benachrichtigt werden will.


Dieser Helfer wird entweder

  • über Dashboard manuell gesetzt
  • oder über eine Automatisation nach bestimmten Kriterien wie bspw. keiner ist zu Hause

In der Automatisation hatte ich aber das Problem, daß zwischen dem Zustandswechsel aufgrund der Automatisation oder Dashboard nicht unterschieden wird.

Lösung 1 was hier auch öfters schon im Forum gesagt wurde:

Stelle sicher Automatisation wurde nicht z.B. in den letzten 10 s gestartet.
{{ state_attr(this.entity_id,'last_triggered') is none or (now()-state_attr(this.entity_id,'last_triggered')).total_seconds()>10 }}

Lösung 2 user_id <> none wenn jemand auf Dashboard klickt

image

Aha, wenn also ich oder jemand anderes auf dem Dashboard den Helfer klicke, ist die User_ID also nicht none.

Damit habe ich das gesuchte Unterscheidungsmerkmal

      - conditions:
          - condition: or
            conditions:
              - condition: trigger
                id:
                  - DashboardANgeschaltet
              - condition: trigger
                id:
                  - DashboardAUSgeschaltet
            condition: template
            value_template: '{{ trigger.to_state.context.user_id is not none }}'

Es gibt hier im Forum immer wieder den Hinweis: Lest die Doku und sicher tun dies viel zu wenige. Ich jedenfalls habe mich gerade riesig gefreut, daß ich es getan hatte.