89 lines
2.1 KiB
YAML
89 lines
2.1 KiB
YAML
- alias: 'Counter: Increment {{ item.id }}'
|
|
description: ''
|
|
trigger:
|
|
- platform: time
|
|
at: 00:00:00
|
|
condition: []
|
|
action:
|
|
- service: counter.increment
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: counter.days_since_{{ item.id }}
|
|
mode: single
|
|
- alias: 'Counter: Reset {{ item.id }}'
|
|
description: ''
|
|
trigger:
|
|
- platform: state
|
|
entity_id:
|
|
- input_button.reset_days_since_{{ item.id }}
|
|
condition: []
|
|
action:
|
|
- service: counter.reset
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: counter.days_since_{{ item.id }}
|
|
mode: single
|
|
- alias: 'Counter: Update last_non_zero_days_since_{{ item.id }}'
|
|
description: ''
|
|
trigger:
|
|
- platform: state
|
|
entity_id:
|
|
- counter.days_since_{{ item.id }}
|
|
condition:
|
|
- condition: numeric_state
|
|
entity_id: counter.days_since_{{ item.id }}
|
|
above: 0
|
|
action:
|
|
- service: counter.increment
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: counter.last_non_zero_days_since_{{ item.id }}
|
|
mode: single
|
|
- alias: 'Counter: Reset last_non_zero_days_since_{{ item.id }}'
|
|
description: ''
|
|
trigger:
|
|
- platform: numeric_state
|
|
entity_id:
|
|
- counter.days_since_{{ item.id }}
|
|
above: 0
|
|
below: 2
|
|
condition: []
|
|
action:
|
|
- service: counter.reset
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: counter.last_non_zero_days_since_{{ item.id }}
|
|
- service: counter.increment
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: counter.last_non_zero_days_since_{{ item.id }}
|
|
mode: single
|
|
- alias: 'Counter: Undo Reset {{ item.id }}'
|
|
description: ''
|
|
trigger:
|
|
- platform: state
|
|
entity_id:
|
|
- input_button.undo_reset_days_since_{{ item.id }}
|
|
condition:
|
|
- condition: numeric_state
|
|
entity_id: counter.days_since_{{ item.id }}
|
|
below: 1
|
|
action:
|
|
- service: counter.set_value
|
|
metadata: {}
|
|
data:
|
|
value: "{{ '{{' }} int(states('counter.last_non_zero_days_since_{{ item.id }}')) {{ '}}' }}"
|
|
target:
|
|
entity_id: counter.days_since_{{ item.id }}
|
|
- service: counter.decrement
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: counter.last_non_zero_days_since_{{ item.id }}
|
|
mode: single
|