manual override reset plus minor fixes #3
@@ -203,7 +203,7 @@ variables:
|
|||||||
{{ states(remote_temperature_entity) | float(0) if remote_temperature_entity and
|
{{ states(remote_temperature_entity) | float(0) if remote_temperature_entity and
|
||||||
states(remote_temperature_entity) not in ['unknown', 'unavailable', none] else 0 }}
|
states(remote_temperature_entity) not in ['unknown', 'unavailable', none] else 0 }}
|
||||||
remote_temperature_last_change: >
|
remote_temperature_last_change: >
|
||||||
{{ as_datetime(states[remote_temperature_entity].last_changed) if remote_temperature_entity and
|
{{ states[remote_temperature_entity].last_changed if remote_temperature_entity and
|
||||||
states(remote_temperature_entity) not in ['unknown', 'unavailable', none] else none }}
|
states(remote_temperature_entity) not in ['unknown', 'unavailable', none] else none }}
|
||||||
window_detection_entity: >
|
window_detection_entity: >
|
||||||
{{ device_entities(device_id(trv)) | select('search', 'window_detection') | list | first | default('') }}
|
{{ device_entities(device_id(trv)) | select('search', 'window_detection') | list | first | default('') }}
|
||||||
@@ -247,8 +247,17 @@ variables:
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
scheduler_mismatch: >
|
scheduler_mismatch: >
|
||||||
{% set selected = states(active_scheduler_selector) %}
|
{% set selected = states(active_scheduler_selector) %}
|
||||||
{{ selected not in ['unknown', '', none] and
|
{% if selected not in ['unknown', '', none] %}
|
||||||
selected not in radiator_schedules | map(attribute='attributes.friendly_name') | list }}
|
{% set found = namespace(value=false) %}
|
||||||
|
{% for schedule in radiator_schedules %}
|
||||||
|
{% if state_attr(schedule, 'friendly_name') == selected %}
|
||||||
|
{% set found.value = true %}
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
{{ not found.value }}
|
||||||
|
{% else %}
|
||||||
|
false
|
||||||
|
{% endif %}
|
||||||
is_manual_override: >
|
is_manual_override: >
|
||||||
{{ (state_attr(trv, 'temperature') | float(0) - safe_temperature | float(0)) | abs >= 0.4 }}
|
{{ (state_attr(trv, 'temperature') | float(0) - safe_temperature | float(0)) | abs >= 0.4 }}
|
||||||
override_reset_duration_seconds: >
|
override_reset_duration_seconds: >
|
||||||
@@ -442,10 +451,12 @@ actions:
|
|||||||
{{ temperature_sensor is defined and states(temperature_sensor) | is_number }}
|
{{ temperature_sensor is defined and states(temperature_sensor) | is_number }}
|
||||||
- condition: template
|
- condition: template
|
||||||
value_template: >
|
value_template: >
|
||||||
{{ remote_temperature_last_change != none and remote_temperature_last_change is not string }}
|
{% if remote_temperature_last_change != none %}
|
||||||
- condition: template
|
{% set last_change = as_datetime(remote_temperature_last_change) %}
|
||||||
value_template: >
|
{{ last_change != none and (now() - last_change).total_seconds() > 1499 }}
|
||||||
{{ (now() - remote_temperature_last_change).total_seconds() > 1499 }}
|
{% else %}
|
||||||
|
false
|
||||||
|
{% endif %}
|
||||||
sequence:
|
sequence:
|
||||||
- service: number.set_value
|
- service: number.set_value
|
||||||
data:
|
data:
|
||||||
|
|||||||
Reference in New Issue
Block a user