- Annonces domotiques sur les enceintes Google Home avec Home Assistant
- Qu’est-ce qu’un script dans Home Assistant ?
- Mon problème et l’idée derrière le script
- Structure du script
- Exemple : annonce TTS sur les enceintes Google Home
- Exemple : annonce TTS avec image sur les écrans Google Nest Hub
- Utilisation au quotidien
- Avantages du script
- FAQ
- Glossaire
Annonces domotiques sur les enceintes Google Home avec Home Assistant
J’ai longtemps voulu utiliser mes enceintes Google Home dans le Smart Home non seulement pour la musique ou les minuteries, mais aussi pour les annonces automatiques. Que le cuiseur à œufs soit prête, que le jour de collecte des déchets arrive ou que quelqu’un sonne à la porte – une courte annonce au bon moment peut faciliter la vie quotidienne.
Avec Home Assistant, cela peut être mis en œuvre de manière optimale via le service de texte à la parole intégré (TTS). Le problème : Après une annonce vocale, l’enceinte est souvent coincée en mode lecture et affiche en permanence l’icône TTS ou la dernière image affichée. Seulement après un certain temps ou manuellement l’affichage par défaut – par exemple le temps – s’affiche à nouveau.
Cela m’a dérangé — donc j’ai développé deux coutumes scripts d’assistant à la maison qui résolvent le problème une fois pour toutes.
Qu’est-ce qu’un script dans Home Assistant ?
Dans Home Assistant, les automatismes et les processus peuvent être contrôlés non seulement avec des déclencheurs et des conditions, mais aussi comme Scripts En magasin. Les scripts sont des séquences d’actions prédéfinies qui peuvent être démarrées manuellement ou appelées depuis d’autres automatismes. Cela permet de gérer les tâches récurrentes – comme les annonces ou les commandes d’éclairage – de manière centralisée et facilement modifiées.
Mon problème et l’idée derrière le script
J’utilise environ 15 appareils Google Home à la maison – y compris plusieurs écrans Google Nest Hub et Google Home Minis – répartis dans mon appartement et mes parents (tous sur le même réseau et dans le même bâtiment).
Dans mes automatismes, par exemple pour les rappels, le cuiseur à œufs ou les avertissements de porte, j’ai toujours eu deux problèmes:
- La lecture des médias resterait active après la fin du message TTS.
- J’ai dû créer manuellement plusieurs actions d’arrêt de la lecture pour chaque enceinte.
C’est vite devenu confus. Par conséquent, j’ai créé deux scripts universels qui combinent toutes les fonctions souhaitées en un seul flux:
- Script : Annonce – TTS
Diffuse un message Text-to-Speech sur des haut-parleurs Google sélectionnés et arrête automatiquement la lecture après. - Script : Annonce – Média
En outre, affiche une image — par exemple, un symbole d’avertissement ou l’icône de la poubelle à collecter (vert, jaune ou noir) — puis arrête également la lecture.
Structure du script
Les deux scripts sont modulaires et utilisent des variables qui peuvent être personnalisées lors de l’exécution:
- varmessage: Le message à prononcer
- haut-parleur: liste des enceintes Google Home
- varrepeat: Nombre de répétitions
- vardelay: délai entre les annonces
- varimage (facultatif): Fichier image à afficher sur les écrans Nest Hub
Cela permet d’utiliser le même script dans de nombreuses automatisations – par exemple pour les rappels de calendrier, les notifications de périphérique ou les alertes de sécurité.
Exemple : annonce TTS sur les enceintes Google Home
sequence:
- sequence:
- repeat:
count: "{{varrepeat}}"
sequence:
- repeat:
for_each: "{{ varspeaker }}"
sequence:
- action: tts.speak
metadata: {}
data:
cache: true
message: "{{varmessage}}"
media_player_entity_id: "{{ repeat.item }}"
target:
entity_id: tts.google_translate_de_de
- delay: "{{ vardelay }}"
- repeat:
for_each: "{{ varspeaker }}"
sequence:
- action: media_player.media_stop
metadata: {}
data: {}
target:
entity_id: "{{ repeat.item }}"
alias: Durchsage - TTS
description: ""
fields:
varmessage:
selector:
text: null
name: varMessage
description: Nachricht für die Sprachausgabe
varspeaker:
selector:
entity:
multiple: true
name: varSpeaker
description: Lautsprecher für Sprach und Bild ausgabe
required: true
default:
- media_player.eg_wohnzimmer
varrepeat:
selector:
number:
min: 1
max: 100
name: varRepeat
default: 3
required: true
vardelay:
selector:
duration: {}
name: varDelay
default:
hours: 0
minutes: 1
seconds: 0
description: Wartezeit zwischen Druchsagen, Standard 1min
Le script diffuse le texte sur tous les haut-parleurs spécifiés et arrête automatiquement la lecture. Par conséquent, les appareils retournent immédiatement en mode inactif.
Exemple : annonce TTS avec image sur les écrans Google Nest Hub
Le deuxième script élargit la fonctionnalité en affichant une image sur vos écrans Nest Hub, ce qui est parfait pour les alertes visuelles ou les rappels.

sequence:
- sequence:
- alias: TTS
if:
- condition: template
value_template: "{{ varmessage != '' }}"
then:
- repeat:
for_each: "{{ varspeaker }}"
sequence:
- action: tts.speak
metadata: {}
data:
cache: true
message: "{{varmessage}}"
media_player_entity_id: "{{ repeat.item }}"
target:
entity_id: tts.google_translate_de_de
- delay:
hours: 0
minutes: 0
seconds: 10
milliseconds: 0
- alias: Bild
repeat:
for_each: "{{ varspeaker }}"
sequence:
- target:
entity_id: "{{ repeat.item }}"
data:
media:
media_content_id: >-
media-source://media_source/local/Media/Nachrichten/{{varimage}}
media_content_type: image/jpeg
metadata:
title: "{{varimage}}"
thumbnail: null
media_class: image
children_media_class: null
navigateIds:
- {}
- media_content_type: app
media_content_id: media-source://media_source
- media_content_type: ""
media_content_id: media-source://media_source/local/Media
- media_content_type: ""
media_content_id: media-source://media_source/local/Media/Nachrichten
action: media_player.play_media
- delay:
hours: 0
minutes: 1
seconds: 0
milliseconds: 0
- alias: Media Player - Stop
repeat:
for_each: "{{ varspeaker }}"
sequence:
- action: media_player.media_stop
metadata: {}
data: {}
target:
entity_id: "{{ repeat.item }}"
alias: Durchsage - Medien
description: ""
fields:
varmessage:
selector:
text: null
name: varMessage
description: Nachricht für die Sprachausgabe
varspeaker:
selector:
entity:
multiple: true
name: varSpeaker
description: Lautsprecher für Sprach und Bild ausgabe
required: true
default:
- media_player.eg_wohnzimmer
varimage:
selector:
text: {}
name: varImage
description: Pfad zum Bild
required: true
default: Achtung.jpg
vardelay:
selector:
duration: {}
name: vardelay
description: Anzeigedauer des Bildes
default:
hours: 0
minutes: 1
seconds: 0
Utilisation au quotidien
J’utilise ces scripts pour une large gamme d’automatisations, telles que:
- Rappels de collecte des ordures ou rendez-vous (entrée Google Agenda)
- Messages d’état au début ou à la fin de la cuiseur à œufs (automation avec prise connectée Tasmota) (*)
- Notification si les portes, garages ou fenêtres sont encore ouverts le soir ()Capteur de contact de la fenêtre avec batterie AAA pour faciliter la commutation) (*)
- Annonces pour les visiteurs ou les appels (Google Home Mini, Google Nest Hub)
- Annonces automatiques pour les événements dans Home Assistant
Les scripts sont suffisamment flexibles pour être utilisés dans presque n’importe quelle automatisation. Les changements ne doivent être effectués qu’une fois dans le script – et non dans chaque automatisation.
Avantages du script
- Annonces TTS centralisées sur plusieurs enceintes
- Arrêt automatique de la lecture après l’annonce l’annonce
- Affichage en option de l’image sur les écrans Google Nest Hub
- Répétition configurable des annonces
- Personnalisation facile grâce aux variables
- Configuration propre, réutilisable et évolutive
FAQ
Puis-je également utiliser d’autres langues?
Oui, vous pouvez ajuster le service TTS dans l’action, p. ex. B. le tts.google_translate_en_us pour l’anglais.
Cela fonctionne-t-il avec Alexa ou Sonos ?
Oui, avec de petites modifications — vous devez seulement changer le service TTS et les noms d’entité.
Les images doivent-elles être stockées localement?
Non, vous pouvez également utiliser des URL d’images externes ou des fichiers de votre dossier multimédia.
Que se passe-t-il si un haut-parleur est hors ligne?
Home Assistant saute automatiquement cette entité et continue avec les autres.
Glossaire
Home Assistant : Plateforme domotique open source pour automatiser les appareils et les routines.
TTS (Text-to-Speech): Convertit le texte en audio parlé.
Entité de lecteur multimédia : Un appareil de lecture dans Home Assistant comme un haut-parleur ou un écran.
Automatisation : Un ensemble d’actions déclenchées par des événements ou des conditions.
Oui. Un langage de configuration structuré utilisé pour les scripts et les automatisations.
(*) Liens d’affiliation
Cet article a été traduit à l’aide de l’IA.

