118 lines
4.5 KiB
YAML
118 lines
4.5 KiB
YAML
blueprint:
|
|
# Nom et description du blueprint
|
|
name: Gestion éclairage entre 3 pièces
|
|
description: Gère les éclairages entre trois pièces avec détection, modes diurne/nocturne, et gestion du soleil.
|
|
domain: automation
|
|
|
|
# Définition des entrées nécessaires à l'automatisation
|
|
input:
|
|
porte_1:
|
|
name: Porte 1 (A ↔ B)
|
|
selector:
|
|
entity:
|
|
domain: binary_sensor # Détecteur d'état pour la porte 1
|
|
porte_2:
|
|
name: Porte 2 (B ↔ C)
|
|
selector:
|
|
entity:
|
|
domain: binary_sensor # Détecteur d'état pour la porte 2
|
|
eclairage_a:
|
|
name: Éclairage A (Pièce A)
|
|
selector:
|
|
entity:
|
|
domain: light # Entité pour contrôler l'éclairage de la pièce A
|
|
eclairage_b:
|
|
name: Éclairage B (Pièce B)
|
|
selector:
|
|
entity:
|
|
domain: light # Entité pour contrôler l'éclairage de la pièce B
|
|
eclairage_c:
|
|
name: Éclairage C (Pièce C)
|
|
selector:
|
|
entity:
|
|
domain: light # Entité pour contrôler l'éclairage de la pièce C
|
|
mode_diurne_nocturne:
|
|
name: Activer mode diurne/nocturne
|
|
selector:
|
|
boolean: {} # Permet d'activer ou non la gestion selon la position du soleil
|
|
default: false
|
|
seuil_diurne_nocturne:
|
|
name: Seuil d'élévation du soleil (en degrés)
|
|
description: Permet de définir l'angle du soleil pour activer le mode nocturne.
|
|
selector:
|
|
number:
|
|
min: -10
|
|
max: 90
|
|
step: 0.5
|
|
unit_of_measurement: degrees # Unité de mesure en degrés pour la position du soleil
|
|
default: -4.0 # Par défaut, -4° correspond à un seuil couramment utilisé pour définir le crépuscule
|
|
delai_auto_extinction:
|
|
name: Délai avant extinction automatique (en secondes)
|
|
selector:
|
|
number:
|
|
min: 0
|
|
max: 3600
|
|
step: 10 # Permet de configurer un délai avant que les lumières s'éteignent automatiquement
|
|
default: 300 # Valeur par défaut de 5 minutes (300 secondes)
|
|
|
|
# Variables utilisées pour configurer dynamiquement certaines parties de l'automatisation
|
|
variables:
|
|
seuil_diurne_nocturne: !input seuil_diurne_nocturne
|
|
delai_auto_extinction: !input delai_auto_extinction
|
|
|
|
# Déclencheurs : Ce qui active l'automatisation
|
|
trigger:
|
|
- platform: state
|
|
entity_id: !input porte_1 # Activation lorsque l'état de la porte 1 change
|
|
- platform: state
|
|
entity_id: !input porte_2 # Activation lorsque l'état de la porte 2 change
|
|
- platform: numeric_state
|
|
entity_id: sun.sun # Activation lorsque la position du soleil passe en dessous du seuil configuré
|
|
attribute: elevation
|
|
below: !input seuil_diurne_nocturne
|
|
|
|
# Conditions : Vérifie si les actions doivent s'exécuter
|
|
condition:
|
|
- condition: or # Les actions s'exécutent si l'une des conditions est remplie
|
|
conditions:
|
|
- condition: template
|
|
value_template: >
|
|
{{ not is_state('!input mode_diurne_nocturne', 'true') }} # Vérifie si le mode diurne/nocturne est désactivé
|
|
- condition: numeric_state
|
|
entity_id: sun.sun
|
|
attribute: elevation
|
|
below: !input seuil_diurne_nocturne # Vérifie si le soleil est en dessous du seuil configuré
|
|
|
|
# Actions : Ce que l'automatisation fait lorsqu'elle est déclenchée
|
|
action:
|
|
- choose:
|
|
- conditions:
|
|
- condition: state
|
|
entity_id: !input porte_1
|
|
state: "on" # Vérifie si la porte 1 est ouverte
|
|
sequence:
|
|
- service: light.turn_on
|
|
target:
|
|
entity_id: !input eclairage_b # Allume la lumière de la pièce B
|
|
- service: light.turn_off
|
|
target:
|
|
entity_id: !input eclairage_a # Éteint la lumière de la pièce A
|
|
- conditions:
|
|
- condition: state
|
|
entity_id: !input porte_2
|
|
state: "on" # Vérifie si la porte 2 est ouverte
|
|
sequence:
|
|
- service: light.turn_on
|
|
target:
|
|
entity_id: !input eclairage_c # Allume la lumière de la pièce C
|
|
- service: light.turn_off
|
|
target:
|
|
entity_id: !input eclairage_b # Éteint la lumière de la pièce B
|
|
- delay: !input delai_auto_extinction # Attend le délai configuré avant d'éteindre les lumières
|
|
- service: light.turn_off
|
|
target:
|
|
entity_id:
|
|
- !input eclairage_a # Éteint la lumière de la pièce A
|
|
- !input eclairage_b # Éteint la lumière de la pièce B
|
|
- !input eclairage_c # Éteint la lumière de la pièce C
|