diff --git a/Climate/bosch_bth-ra_control_dev.yaml b/Climate/bosch_bth-ra_control_dev.yaml index 3ef97e7..d246ad6 100644 --- a/Climate/bosch_bth-ra_control_dev.yaml +++ b/Climate/bosch_bth-ra_control_dev.yaml @@ -51,6 +51,14 @@ blueprint: filter: - domain: sensor device_class: temperature + radiator_schedules: + name: Heizpläne + description: Alle Heizpläne die für den Radiator berücksichtigt werden sollen + selector: + entity: + multiple: true + filter: + - domain: switch triggers: - trigger: state @@ -77,6 +85,7 @@ triggers: variables: trv: !input radiator_entity + schedules: !input radiator_schedules remote_temperature_entity: > {% set entities = device_entities(device_id(trv)) %} {% set remote_temperature_entity_id = namespace(id='') %} @@ -96,6 +105,23 @@ variables: {% endfor %} {{ window_detection_entity_id.id }} current_temperature: !input temperature_sensor + scheduled_temperature: > + {% set schedules = ['switch.schedule_bed7e4', 'switch.schedule_28375d', 'switch.schedule_0cc5de'] %} + {% set ns = namespace(current_temperature = none) %} + {% for schedule in schedules %} + {% if states(schedule) == 'on' and state_attr(schedule, 'current_slot') is not none %} + {% set current_slot = state_attr(schedule, 'current_slot') %} + {% set actions = state_attr(schedule, 'actions') %} + {% if actions is not none and actions | length > current_slot %} + {% set action = actions[current_slot] %} + {% if action.data.temperature is defined %} + {% set ns.current_temperature = action.data.temperature %} + {% break %} + {% endif %} + {% endif %} + {% endif %} + {% endfor %} + {{ ns.current_temperature }} actions: - if: