Compartilhe seu Template para sensores ou automações

Sensor que mostra quais sensores MQTT estão com bateria abaixo do nivel XX.

Criar o input_number.nivel_de_bateria_baixa.
image

image

template.yaml

      - name: "Dispositivos bateria baixa"
        unique_id: 86809d8e-1b46-485a-8ef9-956da8da36de
        icon: mdi:battery-low
        state: >
          {% set threshold = states('input_number.nivel_de_bateria_baixa') | int %}
          {%- set ns = namespace(sensors=[]) -%}
          {%- for state in states.sensor
            | selectattr('attributes.device_class', 'defined')
            | selectattr('attributes.state_class', 'defined')
            | selectattr('attributes.device_class', '==', 'battery')
            | selectattr('attributes.state_class', '==', 'measurement')
            | selectattr('entity_id', 'in', integration_entities('mqtt'))
            | selectattr('state', 'is_number') -%}
            {%- if state.state | int <= threshold -%}
              {%set ns.sensors = ns.sensors + [dict(name = state.name | replace(' battery', '') | replace(' Baterry', ''), state = state.state | int)] %}
            {%- endif -%}
          {%- endfor -%}
          {%- set batt = ns.sensors | sort(attribute='state') %}
          {%- set ns = namespace(batt='') -%}
          {%- for state in batt -%}
              {% set ns.batt= ns.batt + (state.name ~ ' (' ~ state.state ~'%)' ~ "\n") %}
          {% endfor -%}
        
          {% if ns.batt | count > 0 %}
            {{ ns.batt | truncate(255, true, '...') }}
          {%else %}
            {{ 'NA' }}
          {% endif %}

3 curtidas