Last active
July 26, 2024 21:27
-
-
Save andrelung/dceb11b9a14a11668f9366658956b24f to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
blueprint: | |
name: Low moisture level detection & notification for all plant sensors | |
description: Regularly test all plant sensors with 'moisture' crossing | |
under their threshold. | |
domain: automation | |
input: | |
time: | |
name: Time to test on | |
description: Test is run at configured time | |
default: '10:00:00' | |
selector: | |
time: {} | |
day: | |
name: Weekday to test on | |
description: 'Test is run at configured time either everyday (0) or on a given | |
weekday (1: Monday ... 7: Sunday)' | |
default: 0 | |
selector: | |
number: | |
min: 0.0 | |
max: 7.0 | |
mode: slider | |
step: 1.0 | |
exclude: | |
name: Excluded Sensors | |
description: Plant sensors (e.g. cactus) to exclude from detection. Only entities are supported, devices must be expanded! | |
default: {entity_id: []} | |
selector: | |
target: | |
entity: | |
domain: plant | |
actions: | |
name: Actions | |
description: Notifications or similar to be run. {{sensors}} is replaced with | |
the names of sensors being low on moisture. | |
selector: | |
action: {} | |
variables: | |
day: !input 'day' | |
exclude: !input 'exclude' | |
sensors: >- | |
{% set result = namespace(sensors=[]) %} | |
{% for state in states.plant if 'moisture low' in state.attributes.problem %} | |
{% if not state.entity_id in exclude.entity_id %} | |
{% set result.sensors = result.sensors + [state.attributes.friendly_name] %} | |
{% endif %} | |
{% endfor %} | |
{{result.sensors|join(', ')}} | |
trigger: | |
- platform: time | |
at: !input 'time' | |
condition: | |
- '{{ sensors != '''' and (day | int == 0 or day | int == now().isoweekday()) }}' | |
action: | |
- choose: [] | |
default: !input 'actions' | |
mode: single |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment