4h32, samedi matin. Une annonce dans les 6 Alexa de la maison déchire le silence : « Il commence à pleuvoir ! » Alexa, vient de réveiller toute la maison. Je ne vous dis pas l’ambiance au petit-déjeuner. Super début de week-end.
La cause ? Mon capteur de pluie ZG-223Z avait détecté quelques gouttes à 4h25, et mon automatisation avait déclenché une annonce Alexa sans réfléchir à l’heure.
Je voulais une solution simple, native Home Assistant pour dire : « Tu annonces SEULEMENT entre 9h et 21h30 en semaine, 10h-22h le weekend« . Après avoir testé input_datetime, automatisations multiples et scripts complexes, j’ai découvert LE planificateur. 5 minutes de config, et plus jamais de réveil intempestif.
Je vous raconte tout mon parcours, étape par étape, exactement comme je l’ai fait.
🎯 Mon plan d’attaque
Objectif : Créer un « gardien des horaires » qui dit OUI/NON aux annonces Alexa selon l’heure + jour. J’ai choisi le Planificateur HA car :
- Je glisse-dépose mes plages horaires
- Il me donne un état ON/OFF automatique
- Zéro code, 100% interface Home Assistant
- Je le conditionne dans TOUTES mes automatisations
🔧 Étape 1 : Je crée mon Planificateur
Je clique Paramètres → Appareils & Services → Entrées (Helpers)
Je clique Créer une entrée → Planificateur
Je nomme : Message Alexa Autorisé → Entity ID automatique : schedule.message_alexa_autorise
Je configure mes plages :
- Lundi à Vendredi : 09:00 → 21:30 (bleu)
- Samedi : 08:30 → 21:30 (bleu)
- Dimanche : 10:00 → 21:30 (bleu)

Je sauvegarde et je visualise le capteur.

Ainsi quand le capteur est activé, c’est qu’Alexa a le droit de notifier soit :
schedule.message_alexa_autorise=ON
📊 Étape 2 : Je crée un capteur visuel (facultatif)
Pour mon dashboard, je code ce binary_sensor dans mon templates.yaml :
- name: "Alexa Messages Autorisés"
unique_id: binary_sensor.alexa_messages_allowed
state: >
{{ is_state('schedule.message_alexa_autorise', 'on') }}
device_class: connectivity
icon: >
{% if is_state('schedule.message_alexa_autorise', 'on') %}
mdi:bell-badge
{% else %}
mdi:bell-off
{% endif %}
Redémarrage HA → binary_sensor.alexa_messages_allowed apparaît. Je l’ajoute à mon dashboard picture-elements :

⚙️ Étape 3 : Je sécurise mes automatisations
Mon exemple type : Notification pluie (qui m’avait réveillé !)
AVANT (dangereux) : Pluie → Annonce directe → 4h32 réveil familial
APRÈS (sécurisé) : Pluie + Schedule ON → Annonce. Sinon : silence.
alias: Notification Pluie Sécurisée
description: "🚨 Pluie détectée ET horaire OK"
triggers:
- entity_id: binary_sensor.pluie_en_cours # Mon ZG-223Z
from: "off"
to: "on"
for:
seconds: 20 # Anti-faux positif
conditions:
- condition: state
entity_id: schedule.message_alexa_autorise # ← MON GARDIEN !
state: "on"
actions:
- service: notify.alexa_media_partout
data:
message: "🚨 Il commence à pleuvoir dehors ! Stores fermés, arrosage coupé."
data:
type: announce
- delay: "00:00:02"
mode: single

TEST : 16h → Pluie simulée → « Il pleut ! » sur tous les Echo ✅
TEST : 23h → Pluie simulée → Silence total ✅
🛠️ Mes astuces de pro (explicitées pour débutants)
1. Badge dashboard intelligent
- type: conditional
conditions:
- entity: binary_sensor.alexa_messages_allowed
state: "on"
elements:
- type: state-badge
entity: binary_sensor.alexa_messages_allowed
style:
top: 85%
left: 5%
'--card-mod-icon-color': green
Apparaît en VERT si OK, invisible sinon. Magique !
2. Debug facile
Developer Tools → Template → {{ states('schedule.message_alexa_autorise') }} → Instantané !
Pour tester et vérifier les valeurs des capteurs.
💬 Mon verdict après 1 semaine
✅ Plus un seul réveil intempestif. La famille dort, je suis zen.
✅ 5 MINUTES de config initiale, puis tout automatique.
✅ VISUEL : Plages colorées, badges dashboard, logs clairs.
✅ NATIF : Zéro dépendance externe, upgradable facilement.

