From 12465b08b3ebc91cb05146a38c39d0ec0ec66c21 Mon Sep 17 00:00:00 2001 From: ttrabatt Date: Tue, 11 Mar 2025 17:41:49 +0100 Subject: [PATCH] Added some sensors and example of other sensors --- examples/more_sensors_with_templates.yaml | 67 +++++++++++++++++++++++ sensors.yaml | 17 ++++++ 2 files changed, 84 insertions(+) create mode 100644 examples/more_sensors_with_templates.yaml diff --git a/examples/more_sensors_with_templates.yaml b/examples/more_sensors_with_templates.yaml new file mode 100644 index 0000000..e50db89 --- /dev/null +++ b/examples/more_sensors_with_templates.yaml @@ -0,0 +1,67 @@ +- platform: template + sensors: + sensor_count: + friendly_name: 'Number of Sensors' + value_template: >- + {{ states.sensor | rejectattr('state', 'eq', 'unavailable') | list | count }} + automation_count: + friendly_name: 'Number of Automations' + value_template: >- + {{ states.automation| rejectattr('state', 'eq', 'unavailable') | list | count }} + script_count: + friendly_name: 'Number of Scripts' + value_template: >- + {{ states.script | rejectattr('state', 'eq', 'unavailable') | list | count }} + binary_sensor_count: + friendly_name: 'Number of Binary Sensors' + value_template: >- + {{ states.binary_sensor | rejectattr('state', 'eq', 'unavailable') | list | count }} + tracker_count: + friendly_name: 'Number of Devices' + value_template: >- + {{ states.device_tracker| rejectattr('state', 'eq', 'unavailable') | list | count }} + lights_count: + friendly_name: 'Number of Lights' + value_template: >- + {{ states.light | rejectattr('state', 'eq', 'unavailable') | list | count }} + switches_count: + friendly_name: 'Number of Switches' + value_template: >- + {{ states.switch | rejectattr('state', 'eq', 'unavailable') | list | count }} + camera_count: + friendly_name: 'Number of online Cameras' + value_template: >- + {{ states.camera | rejectattr('state', 'eq', 'unavailable') | list | count }} + entities_count: + friendly_name: 'Number of Entities' + value_template: >- + {{ states | rejectattr('state', 'eq', 'unavailable') | list | count}} + na_entities_count: + friendly_name: 'Number of NA Entities' + value_template: >- + {{ states | selectattr('state', 'eq', 'unavailable') | map(attribute='entity_id') | list | count }} + today_is: + friendly_name: 'Today is' + value_template: "{{ ['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday'][now().weekday()] }}" + month_is: + friendly_name: 'Month is' + value_template: "{{ ['January','February','March','April','May','June','August','September','October','November','December'][now().month-1] }}" + holiday: + friendly_name: 'Holiday' + value_template: >- + {% if states.calendar.holidays_in_united_states.state == 'on' %} + {{ states.calendar.holidays_in_united_states.attributes.message }} + {% elif states.calendar.anchorage_holidays.state == 'on' %} + {{ states.calendar.anchorage_holidays.attributes.message }} + {% else %} + none + {% endif %} + school_tomorrow: + friendly_name: 'School Tomorrow' + value_template: >- + {%- set test=(as_timestamp(now())+ (86400)) | timestamp_custom("%Y-%m-%d",true) %} + {% if states.calendar.school.attributes.start_time == test + " 07:10:00" %} + on + {% else %} + off + {% endif %} \ No newline at end of file diff --git a/sensors.yaml b/sensors.yaml index 0efe138..d7876b0 100644 --- a/sensors.yaml +++ b/sensors.yaml @@ -12,3 +12,20 @@ off {% endif %} icon_template: mdi:motion-sensor + + entities_count: + friendly_name: "Number of Entities" + value_template: >- + {{ states | rejectattr('state', 'eq', 'unavailable') | list | count}} + na_entities_count: + friendly_name: "Number of NA Entities" + value_template: >- + {{ states | selectattr('state', 'eq', 'unavailable') | map(attribute='entity_id') | list | count }} + holiday: + friendly_name: "Holiday" + value_template: >- + {% if states.calendar.holidays_in_italy.state == 'on' %} + {{ states.calendar.holidays_in_italy.attributes.message }} + {% else %} + none + {% endif %}