Compartilhe seu Template para sensores ou automações

Sensor que informa se a luz foi acionado por automação, Interruptor ou algum usuario (dashboard).
image

Usando:

<<: &triggered_by

e

<<: *triggered_by

Não é necessario repetir o state para cada sensor.

template.yaml

  - trigger:
    - platform: state
      entity_id: light.quarto
      to: ["on", "off"]
    sensor: 
      - name: "Quarto acionado por"
        <<: &acionado_por
          state: >
            {% set c_id = trigger.to_state.context.id %}
            {% set c_parent = trigger.to_state.context.parent_id %}
            {% set c_user = trigger.to_state.context.user_id %}
            {% set light_state = trigger.to_state.state %}
            {% set p = states.person | selectattr('attributes.user_id', 'eq', trigger.to_state.context.user_id) | list %}
            {% if c_id != none and c_parent == none and c_user == none %}
              Interruptor {{light_state}}
            {% elif c_id != none and c_parent == none and c_user != none %}
              {{ p[0].attributes.friendly_name|title if p | count == 1 else 'unknown' }} {{light_state}}
            {% elif c_id != none and c_parent != none and c_user == none %}
              Automação {{light_state}}
              {% else %}
              Desconhecido {{light_state}}
            {% endif %}

  - trigger:
    - platform: state
      entity_id: light.sanca_sala
      to: ["on", "off"]
    sensor:
      - name: "Sanca Sala acionado por"
        <<: *acionado_por

  - trigger:
    - platform: state
      entity_id: light.cozinha
      to: ["on", "off"]
    sensor:
      - name: "Cozinha acionado por"
        <<: *acionado_por

1 curtida