manual override reset plus minor fixes #3

Merged
pierre merged 31 commits from dev into main 2026-01-15 14:23:00 +01:00
Showing only changes of commit e72365df0a - Show all commits

View File

@@ -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: