- Anuncios domóticos en altavoces Google Home con Home Assistant
- ¿Qué es un script en Home Assistant?
- Mi problema y la idea detrás del script
- Estructura del script
- Ejemplo: anuncio TTS en altavoces Google Home
- Ejemplo: anuncio TTS con imagen en pantallas Google Nest Hub
- Uso cotidiano
- Ventajas del script
- FAQ
- Glosario
Anuncios domóticos en altavoces Google Home con Home Assistant
He querido utilizar mis altavoces de Google Home en el Smart Home no sólo para música o temporizadores, sino también para anuncios automáticos. Ya sea que el cocedor de huevos haya terminado, sea el día de recogida de basura o alguien llame al timbre – un breve anuncio de voz en el momento adecuado puede hacer la vida cotidiana mucho sencillo.
Con Home Assistant, esto se puede implementar excelentemente a través del servicio integrado de texto a voz (TTS). El problema: Después de una salida de voz, el altavoz a menudo se queda atascado en modo de reproducción y muestra permanentemente el icono TTS o la última imagen mostrada. Sólo después de algún tiempo o manualmente la vista estándar, por ejemplo el tiempo, se muestra de nuevo.
Eso me molestó, así que he desarrollado dos costumbres Home Assistant scripts eso arregla el problema de una vez por todas.
¿Qué es un script en Home Assistant?
En Home Assistant, las automatizaciones y los procesos se pueden controlar no sólo con los desencadenantes y las condiciones, sino también como Scripts tienda. Los scripts son secuencias de acción predefinidas que pueden iniciarse manualmente o llamarse de otras automatizaciones. Esto permite que las tareas recurrentes, como anuncios o controles de iluminación, sean gestionadas de forma centralizada y adaptarlas fácilmente.
Mi problema y la idea detrás del script
Uso alrededor de 15 dispositivos de Google Home en casa – incluyendo varias pantallas de Google Nest Hub y Google Home Minis – repartidos a través de mi apartamento y el apartamento de mis padres (todos en la misma red y edificio).
En mis automatizaciones, por ejemplo para recordatorios, la cocedor de huevos o avisos de puerta, siempre he tenido dos problemas:
- La reproducción de los medios permanecería activa después de que el mensaje TTS terminara.
- Tuve que crear manualmente múltiples acciones de “parada de medios” para cada altavoz.
Esto se volvió rápidamente confuso. Por lo tanto, he creado dos scripts universales que combinan todas las funciones deseadas en un solo flujo:
- Script “Anuncio – TTS”
Reproduce un mensaje Text-to-Speech en los altavoces seleccionados de Google y detiene automáticamente la reproducción después. - Script “Anuncio – Medios”
Además muestra una imagen —por ejemplo, un símbolo de advertencia o el icono de la basura que se recogerá (verde, amarillo o negro)— y luego detiene la reproducción también.
Estructura del script
Ambos scripts son modulares y utilizan variables que se pueden personalizar cuando se ejecutan:
- varmessage: El mensaje a hablar
- Varspeaker: lista de altavoces de Google Home
- varrepeat: Número de repeticiones
- vardelay: retardo entre los anuncios
- varimage (opcional): Archivo de imagen para mostrar en pantallas Nest Hub
Esto permite que el mismo script se utilice en muchas automatizaciones, por ejemplo para recordatorios de calendario, notificaciones de dispositivos o alertas de seguridad.
Ejemplo: anuncio TTS en altavoces 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
El script reproduce el texto en todos los altavoces especificados y luego detiene automáticamente la reproducción. Como resultado, los dispositivos cambian inmediatamente al modo inactivo.
Ejemplo: anuncio TTS con imagen en pantallas Google Nest Hub
El segundo script amplía la funcionalidad mostrando una imagen en las pantallas Nest Hub, perfecta para alertas visuales o recordatorios.

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
Uso cotidiano
Uso estos scripts para una amplia gama de automatizaciones, como:
- Recordatorios de recogida de basura o citas (entrada de Google Calendar)
- Mensajes de estado al inicio o al final de la cocedor de huevos (automatización con enchufe inteligente Tasmota) (*)
- Avisos cuando las puertas, garaje o ventanas todavía están abiertas por la noche ()Sensor de contacto ventana con batería AAA para un cambio sencillo) (*)
- Anuncios para visitantes o llamadas (Google Home Mini, Google Nest Hub)
- Anuncios automáticos para eventos en Home Assistant
Los scripts son lo suficientemente flexibles para ser utilizados en casi cualquier automatizaciones. Los cambios sólo tienen que hacerse una vez en el script – ya no en cada automatizaciones.
Ventajas del script
- Anuncios de TTS centralizados a través de varios altavoces
- Detiene automáticamente la reproducción después del anuncio del anuncio
- Visualización opcional de imágenes en las pantallas de Google Nest Hub
- Anuncios repetidos varias veces
- Personalización sencilla mediante variables
- Configuración limpia, reutilizable y escalable
FAQ
¿Puedo usar también otros idiomas?
Sí, puede ajustar el servicio TTS en la acción, por ejemplo, tts.google_translate_en_us para inglés.
¿Funciona con Alexa o Sonos altavoces?
Sí, con pequeñas modificaciones — solo necesita cambiar el servicio TTS y los nombres de las entidades.
¿Hay que almacenar las imágenes localmente?
No, también puede utilizar URL de imágenes externas o archivos de su carpeta multimedia.
¿Qué pasa si un altavoz está fuera de línea?
Home Assistant salta automáticamente esa entidad y continúa con los demás.
Glosario
Home Assistant: Plataforma domótica de código abierto para automatizar dispositivos y rutinas.
TTS (Text-to-Speech): Convierte texto en audio hablado.
Entidad de reproductor multimedia: Un dispositivo de reproducción en Home Assistant, como un altavoz o pantalla.
Automatización: Un conjunto de acciones desencadenadas por eventos o condiciones.
YAML: Un lenguaje de configuración estructurado utilizado para scripts y automatizaciones.
(*) Enlaces de afiliación
Este artículo ha sido traducido con ayuda de IA.

