TL;DR Ma maison diffuse quinze annonces vocales un jour d'école, du lever au coucher, sur deux enceintes. Au début, elles passaient très bien et personne ne bougeait. Le son n'était pas en cause, le texte l'était. J'ai réécrit les treize messages d'alors avec huit règles, et la plus surprenante consiste à retirer tous les choix. Le réveil, lui, a été réécrit trois fois dans la même journée. La musique démarre maintenant en premier, la voix arrive 90 secondes plus tard. C'est le seul épisode de la série où il n'est question d'aucun protocole.


19 h 31. L'enceinte du salon annonce : « C'est le temps calme. Tu peux lire, dessiner ou jouer. »

Le message part à la bonne heure, au bon volume, dans la bonne pièce. Personne ne bouge.

J'ai passé les trois épisodes précédents à vérifier ce que les machines me racontent. Ici, la machine dit vrai : l'annonce est bien partie, à l'heure. La technique a marché dès le premier jour. C'est le texte qui ne marchait pas.

Le son n'était pas en cause

Deux phrases suffisent. Je l'ai montée en une soirée et je n'y ai plus touché. La synthèse vocale est assurée par Piper, dans un conteneur, en français, sans service externe. Les annonces n'appellent jamais directement une enceinte. Elles passent toutes par un seul script Home Assistant, qui choisit la pièce et le volume et qui applique les heures calmes. Quand une enceinte change de nom, je corrige à un seul endroit.

Huit règles, écrites après coup

Le vrai travail était dans les textes. J'ai réécrit les treize messages d'alors en une seule passe, puis j'ai mis la grille par écrit.

  1. Le prénom en tête. Une consigne impersonnelle ne désigne personne, donc personne ne bouge. « On range ses affaires » ne s'adresse à personne en particulier.
  2. Une seule action par annonce. Pas deux consignes dans le même message.
  3. Un verbe à l'impératif et un objet concret. « Brosse tes dents », pas « c'est l'heure du brossage ».
  4. Jamais de question. « En pyjama ? Alors… » ouvre une discussion.
  5. Borner le temps quand la tâche est ouverte. Les devoirs sont devenus « Quinze minutes, puis on mange ».
  6. Séquencer explicitement quand il y a un ordre. « Chaussures, puis manteau. »
  7. Aucun choix proposé. Chaque option proposée est une décision à prendre avant d'agir.
  8. Rien de la logistique des adultes dans un message pour un enfant. L'annonce de 7 h 50 donnait l'emploi du temps des autres, et la seule consigne utile s'y perdait.

Un script a appliqué la grille : il parcourt chaque appel du script d'annonce et corrige le texte sur place. Treize automatisations réécrites et rechargées, sans erreur de configuration, le temps d'un café. Il y en a deux de plus aujourd'hui. Cela ne coûtait presque rien, donc j'ai pu réessayer jusqu'à obtenir une version qui marche, au lieu de garder la première qui semblait raisonnable.

La règle 7 est celle qui m'a le plus surpris. Elle vient du message de temps calme.

TEMPS CALME · 19 H 31 · TROIS VERSIONS Trois versions du même message. VERSION 1 · TROIS DÉCISIONS AVANT D'AGIR « PRÉNOM, c'est le temps calme. Tu peux lire, dessiner ou jouer. » VERSION 2 · UNE DÉCISION « PRÉNOM, temps calme. Tu peux lire ou dessiner. » VERSION 3 · AUCUNE « PRÉNOM, temps calme. » La partie en couleur n'a jamais changé. Le reste a été supprimé.

La première version proposait trois activités. Je pensais bien faire : offrir un choix, c'est respecter l'enfant. Avec deux options, ça marchait un peu mieux. Sans option, ça a marché. L'annonce dit ce qui est attendu, elle ne propose pas de menu.

La grille a eu un autre effet, qui m'a gêné au début. Deux annonces avaient une version « mercredi » et une version « jour d'école » qui disaient la même chose avec des mots différents. Je les ai fusionnées. Un message identique chaque jour se reconnaît dès les premiers mots.

Une règle m'a coûté quelque chose. L'annonce du petit-déjeuner rappelait « tu dois être habillé ». Elle ne le fait plus, à cause de la règle 2. Seul le réveil le dit encore, 90 secondes après le début de la musique. Plus personne ne vérifie à l'étape du petit-déjeuner. Je ne sais pas si c'est le bon compromis.

Trois messages s'écartent de la grille aujourd'hui. Le plus net est une annonce de télévision, ajoutée après la réécriture : « PRÉNOM, dents finies ? Tu peux aller regarder la télé jusqu'à sept heures et demie. » Elle pose une question et laisse une option, donc elle enfreint les règles 3, 4 et 7. Je ne l'ai pas encore corrigée. Le message du réveil enchaîne deux consignes : « PRÉNOM, debout. Sept heures quinze. Tu t'habilles d'abord. » (règle 2). Celui du portail à 7 h 55, adressé à toute la famille, dit « On y va » sans prénom (règle 1).

Une annonce a marché si quelqu'un a bougé. Qu'elle ait été jouée ne prouve rien.

Les messages pour les adultes gardent leur logistique. Celui de 8 h 00 dit « Vous êtes en retard » et rappelle où chacun doit être. À cette heure-là, seuls ceux qui ne sont pas partis l'entendent.

Le réveil, trois versions dans la même journée

La première version du réveil annonçait d'abord, puis lançait la musique. Elle a duré une matinée. Se faire réveiller par une voix ne passait pas.

J'ai inversé l'ordre le jour même. La musique démarre en premier, et la voix arrive 90 secondes plus tard, par-dessus.

RÉVEIL · VERSION DU 18 SEPTEMBRE La musique d'abord, la voix ensuite. 10 % 15 % 20 % 25 % 30 % T+90 s 0 s · la musique démarre Trois réglages le même jour, jusqu'à 30 %. Le volume de l'enceinte n'est pas restauré ensuite.

Le réglage important est la rampe. L'enceinte démarre à 10 %. Elle monte de 5 points toutes les 20 secondes, jusqu'à 30 %. La voix arrive à 90 secondes, quelle que soit la rampe. J'ai essayé trois réglages : un palier unique à 20 %, une rampe jusqu'à 20 %, puis une rampe jusqu'à 30 %.

J'ai aussi abandonné une de mes consignes de départ. J'avais demandé que la musique reprenne « au volume courant de l'enceinte ». La musique est maintenant le réveil, et hériter du volume de la veille au soir le rend imprévisible. Un matin c'est trop fort, le lendemain on n'entend rien.

Deux limites. Le volume n'est pas remis comme avant après le réveil, donc l'enceinte reste à 30 % tant que personne n'y touche. Et la rampe écrase toute baisse manuelle faite pendant les 80 premières secondes, parce que rien ne détecte cette action.

Choisir la musique m'a réservé une surprise. L'enceinte n'avait aucune liste de lecture locale et ses favoris étaient vides. La seule liste que j'écoutais venait d'un service de streaming, envoyée depuis le téléphone. J'ai donc enregistré la file en cours comme liste locale. Home Assistant retrouve cette liste par son titre exact : la renommer dans l'application casse le réveil. Dernier détail, la lecture repart sur la première piste. Le réglage de lecture aléatoire reste celui de l'enceinte, l'automatisation n'y touche pas.

Aucune automatisation dédiée n'arrête la musique. L'annonce de 8 h 00 met en pause les enceintes qui jouent à ce moment-là. La liste est filtrée sur l'état « playing » plutôt qu'écrite en dur, pour qu'une enceinte à l'arrêt ne provoque pas d'erreur. Si aucune enceinte ne joue, la liste est vide et rien ne se passe.

Le jour où l'enceinte ne répond pas

Si une annonce de routine rate, ce n'est pas grave. Si le réveil rate, personne n'est réveillé.

L'automatisation du lever vérifie donc d'abord que l'enceinte de la chambre est disponible. Si oui, elle lance la musique puis appelle le script d'annonce. Sinon, elle envoie deux notifications : une notification prioritaire sur les téléphones, et une notification persistante dans l'interface. Les deux donnent l'état de l'enceinte et l'heure, et disent que le réveil n'a pas été diffusé.

Cette branche de repli m'a pris dix minutes à écrire. À ce prix, il n'y avait aucune raison de s'en passer.

Ce que la maison ne dit pas

Quelques interdits se sont ajoutés aux règles de rédaction.

La maison est de plain-pied. Je n'écris jamais « monte », « descends », « en haut » ni « en bas », ni dans les annonces ni dans les notifications. On les écrit par réflexe.

Rien n'est diffusé entre 21 h 45 et 7 h 00, sauf si l'appel le demande. Un lave-linge qui se termine à deux heures du matin ne réveille donc personne. Les alertes de sécurité le demandent : portail resté ouvert, présence à l'extérieur, panne du congélateur.

Une branche du script ne fait rien pour l'instant, volontairement. Elle vise la chambre d'un second enfant, qui n'a pas encore d'enceinte. Quand elle en aura une, il suffira de lui donner le bon nom dans l'application du fabricant pour que le script la trouve.

Ce qui reste aux humains

Savoir qu'un enfant n'aime pas être réveillé par une voix. Aucune donnée de l'installation ne le montre : on s'en rend compte à 7 h 15.

Regarder si l'annonce produit une action. Home Assistant sait que le clip a été joué. Il ne sait pas si quelqu'un a bougé, et c'est la seule mesure qui compte ici.

Décider ce que la maison impose. Le temps calme à 19 h 31, la télévision coupée à 19 h 30, le coucher à 20 h 30 : ce sont des décisions de parent, pas des optimisations. Aucun capteur ne les produit.

Ce que j'en retiens

  • Écrire la grille, pas seulement les messages. Un texte finit toujours par changer, et la grille sert à relire le suivant. Le message de télévision, ajouté après, montre qu'il faut la rouvrir à chaque nouvelle annonce.
  • Tester sans faire de bruit. Une automatisation jetable qui affiche le texte reçu vaut mieux qu'un essai à sept heures du matin.

Le prochain épisode revient à la physique du bâtiment : six volets qui décident seuls de leur position à partir de la température de leur pièce et de la course du soleil sur leur façade, un cadastre, et un bureau à 29 °C en pleine nuit sans le moindre rayon de soleil.

À télécharger

  • annonce-vocale.yaml : le script par lequel passent toutes les annonces. Une seule chose à adapter, la table des enceintes.
  • LISEZMOI.md : l'installation, la mécanique décrite sans Home Assistant, et la grille de rédaction en huit lignes.

Lire la série : Dix ans de domotique tout seul, un an avec un agent : l'inventaire de l'installation et la mesure de ce qui a changé. L'IA n'a pas automatisé ma maison : pourquoi le gain se mesure sur les chantiers qu'on ne commençait pas. J'ai changé le calendrier du soir trois fois en une semaine : portail, télévision, volets et calendrier scolaire. Mon bureau est à 29 °C la nuit : six volets qui décident seuls, et ce que le modèle m'a dit de ne pas faire.