post home assistant update
This commit is contained in:
300
hass_trackers/dashboard.yaml
Normal file
300
hass_trackers/dashboard.yaml
Normal file
@@ -0,0 +1,300 @@
|
||||
type: grid
|
||||
square: false
|
||||
columns: 1
|
||||
cards:
|
||||
- type: markdown
|
||||
content: >
|
||||
{% set trackers = [
|
||||
{
|
||||
"counter": states("counter.days_since_fridge_water_filter") | int,
|
||||
"threshold": state_attr("binary_sensor.threshold_for_days_since_fridge_water_filter", "upper"),
|
||||
"percent": (int(states("counter.days_since_fridge_water_filter")) / state_attr("binary_sensor.threshold_for_days_since_fridge_water_filter", "upper")),
|
||||
"name": "Fridge Water Filter Replaced"
|
||||
},
|
||||
{
|
||||
"counter": states("counter.days_since_litter_boxes_cleaned") | int,
|
||||
"threshold": state_attr("binary_sensor.threshold_for_days_since_litter_boxes_cleaned", "upper"),
|
||||
"percent": (int(states("counter.days_since_litter_boxes_cleaned")) / state_attr("binary_sensor.threshold_for_days_since_litter_boxes_cleaned", "upper")),
|
||||
"name": "Litter Boxes Cleaned"
|
||||
},
|
||||
{
|
||||
"counter": states("counter.days_since_cat_water_fountain_cleaned") | int,
|
||||
"threshold": state_attr("binary_sensor.threshold_for_days_since_cat_water_fountain_cleaned", "upper"),
|
||||
"percent": (int(states("counter.days_since_cat_water_fountain_cleaned")) / state_attr("binary_sensor.threshold_for_days_since_cat_water_fountain_cleaned", "upper")),
|
||||
"name": "Cat Water Fountain Cleaned"
|
||||
},
|
||||
{
|
||||
"counter": states("counter.days_since_kitchen_cleaned") | int,
|
||||
"threshold": state_attr("binary_sensor.threshold_for_days_since_kitchen_cleaned", "upper"),
|
||||
"percent": (int(states("counter.days_since_kitchen_cleaned")) / state_attr("binary_sensor.threshold_for_days_since_kitchen_cleaned", "upper")),
|
||||
"name": "Kitchen Cleaned"
|
||||
},
|
||||
{
|
||||
"counter": states("counter.days_since_kitchen_counters_cleaned") | int,
|
||||
"threshold": state_attr("binary_sensor.threshold_for_days_since_kitchen_counters_cleaned", "upper"),
|
||||
"percent": (int(states("counter.days_since_kitchen_counters_cleaned")) / state_attr("binary_sensor.threshold_for_days_since_kitchen_counters_cleaned", "upper")),
|
||||
"name": "Kitchen Counters Cleaned"
|
||||
},
|
||||
{
|
||||
"counter": states("counter.days_since_living_room_cleaned") | int,
|
||||
"threshold": state_attr("binary_sensor.threshold_for_days_since_living_room_cleaned", "upper"),
|
||||
"percent": (int(states("counter.days_since_living_room_cleaned")) / state_attr("binary_sensor.threshold_for_days_since_living_room_cleaned", "upper")),
|
||||
"name": "Living Room Cleaned"
|
||||
},
|
||||
{
|
||||
"counter": states("counter.days_since_upstairs_vacuumed") | int,
|
||||
"threshold": state_attr("binary_sensor.threshold_for_days_since_upstairs_vacuumed", "upper"),
|
||||
"percent": (int(states("counter.days_since_upstairs_vacuumed")) / state_attr("binary_sensor.threshold_for_days_since_upstairs_vacuumed", "upper")),
|
||||
"name": "Upstairs Vacuumed"
|
||||
},
|
||||
{
|
||||
"counter": states("counter.days_since_bathroom_counters_cleaned") | int,
|
||||
"threshold": state_attr("binary_sensor.threshold_for_days_since_bathroom_counters_cleaned", "upper"),
|
||||
"percent": (int(states("counter.days_since_bathroom_counters_cleaned")) / state_attr("binary_sensor.threshold_for_days_since_bathroom_counters_cleaned", "upper")),
|
||||
"name": "Bathroom Counters Cleaned"
|
||||
},
|
||||
{
|
||||
"counter": states("counter.days_since_bedroom_vacuumed") | int,
|
||||
"threshold": state_attr("binary_sensor.threshold_for_days_since_bedroom_vacuumed", "upper"),
|
||||
"percent": (int(states("counter.days_since_bedroom_vacuumed")) / state_attr("binary_sensor.threshold_for_days_since_bedroom_vacuumed", "upper")),
|
||||
"name": "Bedroom Vacuumed"
|
||||
},
|
||||
{
|
||||
"counter": states("counter.days_since_toilets_cleaned") | int,
|
||||
"threshold": state_attr("binary_sensor.threshold_for_days_since_toilets_cleaned", "upper"),
|
||||
"percent": (int(states("counter.days_since_toilets_cleaned")) / state_attr("binary_sensor.threshold_for_days_since_toilets_cleaned", "upper")),
|
||||
"name": "Toilets Cleaned"
|
||||
},
|
||||
]%}
|
||||
|
||||
|
||||
{% for tracker in (trackers | sort(reverse=true, attribute='percent')) %}
|
||||
{% set days_left = ((tracker.threshold - tracker.counter) | int | string) %}
|
||||
{% set message = tracker.name + " completed " + tracker.counter | string + " days ago. Due again in " + days_left + " days." %}
|
||||
{% if tracker.percent > 1 %}
|
||||
<ha-alert alert-type="error">{{ message }}</ha-alert>
|
||||
{% elif tracker.percent > 0.8 %}
|
||||
<ha-alert alert-type="warning">{{ message }}</ha-alert>
|
||||
{% else %}
|
||||
<ha-alert alert-type="success">{{ message }}</ha-alert>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
- type: grid
|
||||
square: false
|
||||
columns: 2
|
||||
title: Days Since Fridge Water Filter Replaced
|
||||
cards:
|
||||
- type: button
|
||||
name: Reset
|
||||
entity: input_button.reset_days_since_fridge_water_filter
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: button
|
||||
entity: input_button.undo_reset_days_since_fridge_water_filter
|
||||
name: Undo
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: entity
|
||||
entity: counter.days_since_fridge_water_filter
|
||||
name: Days Since
|
||||
- type: entity
|
||||
entity: counter.last_non_zero_days_since_fridge_water_filter
|
||||
name: Last Non-Zero
|
||||
|
||||
- type: grid
|
||||
square: false
|
||||
columns: 2
|
||||
title: Days Since Litter Boxes Cleaned
|
||||
cards:
|
||||
- type: button
|
||||
name: Reset
|
||||
entity: input_button.reset_days_since_litter_boxes_cleaned
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: button
|
||||
entity: input_button.undo_reset_days_since_litter_boxes_cleaned
|
||||
name: Undo
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: entity
|
||||
entity: counter.days_since_litter_boxes_cleaned
|
||||
name: Days Since
|
||||
- type: entity
|
||||
entity: counter.last_non_zero_days_since_litter_boxes_cleaned
|
||||
name: Last Non-Zero
|
||||
|
||||
- type: grid
|
||||
square: false
|
||||
columns: 2
|
||||
title: Days Since Cat Water Fountain Cleaned
|
||||
cards:
|
||||
- type: button
|
||||
name: Reset
|
||||
entity: input_button.reset_days_since_cat_water_fountain_cleaned
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: button
|
||||
entity: input_button.undo_reset_days_since_cat_water_fountain_cleaned
|
||||
name: Undo
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: entity
|
||||
entity: counter.days_since_cat_water_fountain_cleaned
|
||||
name: Days Since
|
||||
- type: entity
|
||||
entity: counter.last_non_zero_days_since_cat_water_fountain_cleaned
|
||||
name: Last Non-Zero
|
||||
|
||||
- type: grid
|
||||
square: false
|
||||
columns: 2
|
||||
title: Days Since Kitchen Cleaned
|
||||
cards:
|
||||
- type: button
|
||||
name: Reset
|
||||
entity: input_button.reset_days_since_kitchen_cleaned
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: button
|
||||
entity: input_button.undo_reset_days_since_kitchen_cleaned
|
||||
name: Undo
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: entity
|
||||
entity: counter.days_since_kitchen_cleaned
|
||||
name: Days Since
|
||||
- type: entity
|
||||
entity: counter.last_non_zero_days_since_kitchen_cleaned
|
||||
name: Last Non-Zero
|
||||
|
||||
- type: grid
|
||||
square: false
|
||||
columns: 2
|
||||
title: Days Since Kitchen Counters Cleaned
|
||||
cards:
|
||||
- type: button
|
||||
name: Reset
|
||||
entity: input_button.reset_days_since_kitchen_counters_cleaned
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: button
|
||||
entity: input_button.undo_reset_days_since_kitchen_counters_cleaned
|
||||
name: Undo
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: entity
|
||||
entity: counter.days_since_kitchen_counters_cleaned
|
||||
name: Days Since
|
||||
- type: entity
|
||||
entity: counter.last_non_zero_days_since_kitchen_counters_cleaned
|
||||
name: Last Non-Zero
|
||||
|
||||
- type: grid
|
||||
square: false
|
||||
columns: 2
|
||||
title: Days Since Living Room Cleaned
|
||||
cards:
|
||||
- type: button
|
||||
name: Reset
|
||||
entity: input_button.reset_days_since_living_room_cleaned
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: button
|
||||
entity: input_button.undo_reset_days_since_living_room_cleaned
|
||||
name: Undo
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: entity
|
||||
entity: counter.days_since_living_room_cleaned
|
||||
name: Days Since
|
||||
- type: entity
|
||||
entity: counter.last_non_zero_days_since_living_room_cleaned
|
||||
name: Last Non-Zero
|
||||
|
||||
- type: grid
|
||||
square: false
|
||||
columns: 2
|
||||
title: Days Since Upstairs Vacuumed
|
||||
cards:
|
||||
- type: button
|
||||
name: Reset
|
||||
entity: input_button.reset_days_since_upstairs_vacuumed
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: button
|
||||
entity: input_button.undo_reset_days_since_upstairs_vacuumed
|
||||
name: Undo
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: entity
|
||||
entity: counter.days_since_upstairs_vacuumed
|
||||
name: Days Since
|
||||
- type: entity
|
||||
entity: counter.last_non_zero_days_since_upstairs_vacuumed
|
||||
name: Last Non-Zero
|
||||
|
||||
- type: grid
|
||||
square: false
|
||||
columns: 2
|
||||
title: Days Since Bathroom Counters Cleaned
|
||||
cards:
|
||||
- type: button
|
||||
name: Reset
|
||||
entity: input_button.reset_days_since_bathroom_counters_cleaned
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: button
|
||||
entity: input_button.undo_reset_days_since_bathroom_counters_cleaned
|
||||
name: Undo
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: entity
|
||||
entity: counter.days_since_bathroom_counters_cleaned
|
||||
name: Days Since
|
||||
- type: entity
|
||||
entity: counter.last_non_zero_days_since_bathroom_counters_cleaned
|
||||
name: Last Non-Zero
|
||||
|
||||
- type: grid
|
||||
square: false
|
||||
columns: 2
|
||||
title: Days Since Bedroom Vacuumed
|
||||
cards:
|
||||
- type: button
|
||||
name: Reset
|
||||
entity: input_button.reset_days_since_bedroom_vacuumed
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: button
|
||||
entity: input_button.undo_reset_days_since_bedroom_vacuumed
|
||||
name: Undo
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: entity
|
||||
entity: counter.days_since_bedroom_vacuumed
|
||||
name: Days Since
|
||||
- type: entity
|
||||
entity: counter.last_non_zero_days_since_bedroom_vacuumed
|
||||
name: Last Non-Zero
|
||||
|
||||
- type: grid
|
||||
square: false
|
||||
columns: 2
|
||||
title: Days Since Toilets Cleaned
|
||||
cards:
|
||||
- type: button
|
||||
name: Reset
|
||||
entity: input_button.reset_days_since_toilets_cleaned
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: button
|
||||
entity: input_button.undo_reset_days_since_toilets_cleaned
|
||||
name: Undo
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: entity
|
||||
entity: counter.days_since_toilets_cleaned
|
||||
name: Days Since
|
||||
- type: entity
|
||||
entity: counter.last_non_zero_days_since_toilets_cleaned
|
||||
name: Last Non-Zero
|
||||
Reference in New Issue
Block a user