Template: how to filter out based on 'solaredge' being in the entity_id

Thanks, this thread helped to solve my issue where the new button entities showed up in my unavailable/unknown list of entities (intended to debug system issues, which means it’s not useful to see buttons).

template:
  - trigger:
      - platform: time_pattern
        minutes: "*"
    sensor:
      - name: Unavailable Entities
        icon: mdi:help-circle-outline
        state: "{{ states | selectattr('state', 'in',['unavailable', 'unknown', 'none']) | map(attribute='entity_id') | reject('==', 'sensor.unavailable_entities') | reject('match', 'button') | list | length }}"
        unit_of_measurement: entities
        state_class: measurement
        attributes:
          # buttons don't have state – we don't care about buttons here
          unavailable: "{{ states | selectattr('state', 'in', ['unavailable']) | map(attribute='entity_id') | reject('==', 'sensor.unavailable_entities') | reject('match', 'button') | list }}"
          unknown: "{{ states | selectattr('state', 'in', ['unknown']) | map(attribute='entity_id') | reject('==', 'sensor.unavailable_entities') | reject('match', 'button') | list }}"
          none: "{{ states | selectattr('state', 'in', ['none']) | map(attribute='entity_id') | reject('==', 'sensor.unavailable_entities') | reject('match', 'button') | list }}"

Related posts:

1 Like