Files
N22/include/automations/varme_styring.yaml
T

161 lines
5.5 KiB
YAML

##################################################
# Varme: Triggers der kalder script.varme_recalculate
# Scenarierne der kræver genberegning:
# - Morgen (input_datetime.varme_morgen_tid) - nat slut → komforttemp
# - Aften (input_datetime.varme_aften_tid) - nat start → natsænkning
# - Tilstedeværelse - hjemme/væk skifter
# - Ferietilstand - ferie til/fra
# - HA genstart - genopret korrekt temp
##################################################
- alias: "Varme - Genberegn: Morgen"
id: varme_recalc_morgen
description: "Slutter natsænkning - tidspunkt styret af input_datetime.varme_morgen_tid"
trigger:
- platform: time
at: input_datetime.varme_morgen_tid
action:
- service: script.varme_recalculate
- alias: "Varme - Genberegn: Nat"
id: varme_recalc_nat
description: "Starter natsænkning - tidspunkt styret af input_datetime.varme_aften_tid"
trigger:
- platform: time
at: input_datetime.varme_aften_tid
action:
- service: script.varme_recalculate
- alias: "Varme - Genberegn: Tilstedeværelse"
id: varme_recalc_presence
description: "Justerer temperaturer når family_presence ændres (hjemme/væk)"
trigger:
- platform: state
entity_id: binary_sensor.family_presence
action:
# Kort forsinkelse så person-sensorer er stabile
- delay: "00:01:00"
- service: script.varme_recalculate
- alias: "Varme - Genberegn: Ferie"
id: varme_recalc_vacation
description: "Skifter til ferie-/frosttemperatur når vacation_mode ændres"
trigger:
- platform: state
entity_id: input_boolean.vacation_mode
action:
- service: script.varme_recalculate
- alias: "Varme - Genberegn: HA genstart"
id: varme_recalc_ha_start
description: "Genopret korrekte temperaturer efter HA genstart"
trigger:
- platform: homeassistant
event: start
action:
# Vent til integrationer er loaded
- delay: "00:01:00"
- service: script.varme_recalculate
- alias: "Varme - Genberegn: Komforttemperatur ændret"
id: varme_recalc_komfort_changed
description: "Opdater varmeanlægget straks når en komforttemperatur justeres"
trigger:
- platform: state
entity_id:
- input_number.varme_komfort_andreas
- input_number.varme_komfort_daniel
- input_number.varme_komfort_sovevaerelse
- input_number.varme_komfort_kontor
- input_number.varme_komfort_gang
- input_number.varme_komfort_forgang
- input_number.varme_komfort_lille_bad
- input_number.varme_komfort_badevarelse
- input_number.varme_komfort_stue
action:
- service: script.varme_recalculate
- alias: "Varme - Ferietilstand: Aktiver ved afrejse"
id: varme_ferie_aktiver
description: "Slår vacation_mode til automatisk på afrejsetidspunktet (vacation_start)"
trigger:
- platform: time
at: input_datetime.vacation_start
action:
- service: input_boolean.turn_on
target:
entity_id: input_boolean.vacation_mode
- alias: "Varme - Ferieopvarmning: Start 2 dage før hjemkomst"
id: varme_ferie_forvarm
description: >
Slår vacation_mode fra 2 dage inden vacation_end så huset er
varmt ved hjemkomst. Kører dagligt ved morgen-tidspunktet.
trigger:
- platform: time
at: input_datetime.varme_morgen_tid
condition:
- condition: state
entity_id: input_boolean.vacation_mode
state: "on"
- condition: template
value_template: >
{% set end = states('input_datetime.vacation_end') %}
{% if end not in ['unknown', 'unavailable', ''] %}
{{ 0 < (as_timestamp(end) - as_timestamp(now())) < (2 * 86400) }}
{% else %}
false
{% endif %}
action:
- service: input_boolean.turn_off
target:
entity_id: input_boolean.vacation_mode
- alias: "Varme - Påmindelse: Luk håndklæde-varmer (sommer)"
id: varme_paamindelse_haandklaedevarmer_sommer
description: >
Sender en påmindelse 1. juni om at lukke den manuelle hane til
håndklæde-varmeren i badeværelset, så den ikke trækker fjernvarme
hele sommeren. Hanen kan ikke styres af HA, så det er en manuel handling.
trigger:
- platform: time
at: "09:00:00"
condition:
- condition: template
value_template: "{{ now().month == 6 and now().day == 1 }}"
action:
- service: notify.mobile_app_claus_iphone_15pro
data:
title: "Sommer: Luk håndklæde-varmeren"
message: >
Husk at lukke den manuelle hane til håndklæde-varmeren i badeværelset,
så den ikke trækker fjernvarme hele sommeren.
data:
push:
interruption-level: time-sensitive
tag: haandklaedevarmer_sommer
- alias: "Varme - Påmindelse: Åbn håndklæde-varmer (efterår)"
id: varme_paamindelse_haandklaedevarmer_efteraar
description: >
Sender en påmindelse 1. oktober om at åbne den manuelle hane til
håndklæde-varmeren i badeværelset igen før fyringssæsonen.
Hanen kan ikke styres af HA, så det er en manuel handling.
trigger:
- platform: time
at: "09:00:00"
condition:
- condition: template
value_template: "{{ now().month == 10 and now().day == 1 }}"
action:
- service: notify.mobile_app_claus_iphone_15pro
data:
title: "Efterår: Åbn håndklæde-varmeren"
message: >
Husk at åbne den manuelle hane til håndklæde-varmeren i badeværelset
igen, så den er klar til fyringssæsonen.
data:
push:
interruption-level: time-sensitive
tag: haandklaedevarmer_efteraar