merge temp schedule change #1

Merged
pierre merged 14 commits from dev into main 2025-12-30 12:46:33 +01:00
Showing only changes of commit 7042453358 - Show all commits

View File

@@ -224,6 +224,20 @@ variables:
{% else %}
false
{% endif %}
is_sensor_sync_needed: >
{% set current_remote = state_attr(trv, device_class ~ '_temperature') | default(state_attr(remote_temperature_entity, 'state'), none) | float(0) %}
{% set new_sensor = states(temperature_sensor) | float(0) %}
{% set target = safe_temperature | float(0) %}
{% set diff = (new_sensor - current_remote) | abs %}
{% if diff >= 0.5 %}
true
{% elif new_sensor < target and current_remote >= target %}
true
{% elif new_sensor > target and current_remote <= target %}
true
{% else %}
false
{% endif %}
scheduler_mismatch: >
{% set selected_friendly_name = states(active_scheduler_selector) %}
{% if selected_friendly_name not in ['unknown', '', none] %}
@@ -391,6 +405,8 @@ actions:
- condition: template
value_template: >
{{ temperature_sensor is defined and states(temperature_sensor) | is_number }}
- condition: template
value_template: "{{ is_sensor_sync_needed }}"
sequence:
- service: number.set_value
data:
@@ -407,14 +423,14 @@ actions:
{{ temperature_sensor is defined and states(temperature_sensor) | is_number }}
- condition: template
value_template: >
{{ (now() - states[temperature_sensor].last_changed).total_seconds() > 1199 }}
{{ (now() - states[temperature_sensor].last_changed).total_seconds() > 1499 }}
sequence:
- service: number.set_value
data:
value: "{{ states(temperature_sensor) | float }}"
target:
entity_id: "{{ remote_temperature_entity }}"
alias: Synchronisiere Temperatur am TRV (zeitbasiert, wenn länger als 20min unverändert)
alias: Synchronisiere Temperatur am TRV (zeitbasiert, wenn länger als 25min unverändert)
alias: Temperatursynchronisation
# setze Solltemperatur bei Schedule und Alarm-Status-Änderungen
- choose: