161 lines
5.5 KiB
YAML
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
|