add away_section, set target_temperature when (dis-)arming alarm_control_panel
This commit is contained in:
@@ -16,6 +16,14 @@ blueprint:
|
|||||||
multiple: false
|
multiple: false
|
||||||
filter:
|
filter:
|
||||||
- domain: climate
|
- domain: climate
|
||||||
|
temperature_sensor:
|
||||||
|
name: Temperatursensor
|
||||||
|
selector:
|
||||||
|
entity:
|
||||||
|
multiple: false
|
||||||
|
filter:
|
||||||
|
- domain: sensor
|
||||||
|
device_class: temperature
|
||||||
window_section:
|
window_section:
|
||||||
name: Fenster-/Türsensor Konfiguration
|
name: Fenster-/Türsensor Konfiguration
|
||||||
description: Konfiguration für den Fenster-/Türsensor.
|
description: Konfiguration für den Fenster-/Türsensor.
|
||||||
@@ -50,19 +58,11 @@ blueprint:
|
|||||||
max: 3600.0
|
max: 3600.0
|
||||||
unit_of_measurement: seconds
|
unit_of_measurement: seconds
|
||||||
step: 1.0
|
step: 1.0
|
||||||
remaining_section:
|
schedule_section:
|
||||||
name: Weitere Konfiguration
|
name: Heizplan Konfiguration
|
||||||
description: Sonstige Konfigurationen für die Automation
|
description: Konfiguration der Heizpläne die für den Radiator berücksichtigt werden sollen
|
||||||
collapsed: false
|
collapsed: false
|
||||||
input:
|
input:
|
||||||
temperature_sensor:
|
|
||||||
name: Temperatursensor
|
|
||||||
selector:
|
|
||||||
entity:
|
|
||||||
multiple: false
|
|
||||||
filter:
|
|
||||||
- domain: sensor
|
|
||||||
device_class: temperature
|
|
||||||
radiator_schedules:
|
radiator_schedules:
|
||||||
name: Heizpläne
|
name: Heizpläne
|
||||||
description: Alle Heizpläne die für den Radiator berücksichtigt werden sollen. Sind mehrere Schedules aktiv, wird der erste mit einem gültigen Slot verwendet.
|
description: Alle Heizpläne die für den Radiator berücksichtigt werden sollen. Sind mehrere Schedules aktiv, wird der erste mit einem gültigen Slot verwendet.
|
||||||
@@ -72,6 +72,11 @@ blueprint:
|
|||||||
multiple: true
|
multiple: true
|
||||||
filter:
|
filter:
|
||||||
- domain: switch
|
- domain: switch
|
||||||
|
away_section:
|
||||||
|
name: Konfiguration für Abwesenheitsmodus
|
||||||
|
description: Konfiguration für das Absenken der Heizung im Abwesenheitsmodus eines Alarmsystems
|
||||||
|
collapsed: false
|
||||||
|
input:
|
||||||
alarm_control_panel:
|
alarm_control_panel:
|
||||||
name: Alarm Control Panel
|
name: Alarm Control Panel
|
||||||
description: Optional: Alarm Control Panel um Heizung abzusenken, wenn Alarm im Abwesendmodus ist
|
description: Optional: Alarm Control Panel um Heizung abzusenken, wenn Alarm im Abwesendmodus ist
|
||||||
@@ -89,14 +94,16 @@ blueprint:
|
|||||||
number:
|
number:
|
||||||
mode: box
|
mode: box
|
||||||
min: 15.0
|
min: 15.0
|
||||||
max: 22.0
|
max: 25.0
|
||||||
unit_of_measurement: "°C"
|
unit_of_measurement: "°C"
|
||||||
step: 0.5
|
step: 0.5
|
||||||
|
|
||||||
variables:
|
variables:
|
||||||
trv: !input trv
|
trv: !input trv
|
||||||
radiator_schedules: !input radiator_schedules
|
|
||||||
temperature_sensor: !input temperature_sensor
|
temperature_sensor: !input temperature_sensor
|
||||||
|
radiator_schedules: !input radiator_schedules
|
||||||
|
away_temperature: !input away_temperature
|
||||||
|
alarm_control_panel: !input alarm_control_panel
|
||||||
remote_temperature_entity: >
|
remote_temperature_entity: >
|
||||||
{% set entities = device_entities(device_id(trv)) %}
|
{% set entities = device_entities(device_id(trv)) %}
|
||||||
{% set remote_temperature_entity_id = namespace(id='') %}
|
{% set remote_temperature_entity_id = namespace(id='') %}
|
||||||
@@ -123,7 +130,7 @@ variables:
|
|||||||
{% set actions = state_attr(schedule, 'actions') %}
|
{% set actions = state_attr(schedule, 'actions') %}
|
||||||
{% if actions is not none and actions | length > current_slot %}
|
{% if actions is not none and actions | length > current_slot %}
|
||||||
{% set action = actions[current_slot] %}
|
{% set action = actions[current_slot] %}
|
||||||
{% if action.data.temperature is defined %}
|
{% if action.data.temperature is defined and action.data.temperature | is_number %}
|
||||||
{% set ns.current_temperature = action.data.temperature %}
|
{% set ns.current_temperature = action.data.temperature %}
|
||||||
{% break %}
|
{% break %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -131,6 +138,12 @@ variables:
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{{ ns.current_temperature }}
|
{{ ns.current_temperature }}
|
||||||
|
target_temperature: >
|
||||||
|
{% if alarm_control_panel is defined and is_state(alarm_control_panel, 'armed_away') %}
|
||||||
|
{{ away_temperature }}
|
||||||
|
{% else %}
|
||||||
|
{{ scheduled_temperature | default(away_temperature) }}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
triggers:
|
triggers:
|
||||||
- trigger: state
|
- trigger: state
|
||||||
@@ -165,6 +178,7 @@ triggers:
|
|||||||
id: ALARM_DISARMED_AWAY
|
id: ALARM_DISARMED_AWAY
|
||||||
|
|
||||||
actions:
|
actions:
|
||||||
|
# setze Fenster auf offen/geschlossen
|
||||||
- choose:
|
- choose:
|
||||||
- conditions:
|
- conditions:
|
||||||
- condition: trigger
|
- condition: trigger
|
||||||
@@ -192,7 +206,7 @@ actions:
|
|||||||
- if:
|
- if:
|
||||||
- condition: template
|
- condition: template
|
||||||
value_template: >
|
value_template: >
|
||||||
{{ scheduled_temperature is not none }}
|
{{ scheduled_temperature is not none and scheduled_temperature | is_number }}
|
||||||
then:
|
then:
|
||||||
- action: climate.set_temperature
|
- action: climate.set_temperature
|
||||||
target:
|
target:
|
||||||
@@ -207,10 +221,32 @@ actions:
|
|||||||
id:
|
id:
|
||||||
- SYNC_TEMPERATURE
|
- SYNC_TEMPERATURE
|
||||||
- TEMP_CHANGED
|
- TEMP_CHANGED
|
||||||
|
- condition: template
|
||||||
|
value_template: >
|
||||||
|
{{ temperature_sensor is defined and states(temperature_sensor) | is_number }}
|
||||||
sequence:
|
sequence:
|
||||||
- service: number.set_value
|
- service: number.set_value
|
||||||
data:
|
data:
|
||||||
value: "{{ states(temperature_sensor) | float }}"
|
value: "{{ states(temperature_sensor) | float }}"
|
||||||
target:
|
target:
|
||||||
entity_id: "{{ remote_temperature_entity }}"
|
entity_id: "{{ remote_temperature_entity }}"
|
||||||
alias: Synchronisiere Temperatur am TRV
|
alias: Synchronisiere Temperatur am TRV
|
||||||
|
# setze Solltemperatur basierend auf Alarm-Status
|
||||||
|
- choose:
|
||||||
|
- conditions:
|
||||||
|
- condition: trigger
|
||||||
|
id:
|
||||||
|
- ALARM_ARMED_AWAY
|
||||||
|
- ALARM_DISARMED_AWAY
|
||||||
|
sequence:
|
||||||
|
- if:
|
||||||
|
- condition: template
|
||||||
|
value_template: >
|
||||||
|
{{ target_temperature is not none and target_temperature | is_number }}
|
||||||
|
then:
|
||||||
|
- action: climate.set_temperature
|
||||||
|
target:
|
||||||
|
entity_id: !input trv
|
||||||
|
data:
|
||||||
|
temperature: "{{ target_temperature | float }}"
|
||||||
|
alias: Setze Solltemperatur basierend auf Alarm-Status
|
||||||
Reference in New Issue
Block a user