Created
September 23, 2022 01:33
-
-
Save mstump/af7cf1f4f55740476547055ce59e6d9c to your computer and use it in GitHub Desktop.
Revisions
-
mstump created this gist
Sep 23, 2022 .There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,58 @@ 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