Scopriamo il sistema Text To Speech di Google in Home Assistant
di Antonio Mario Longo
02 Febbraio 2021
Home Assistant
In casa gli smart speaker sono diventati oramai un must have. Nella prima configurazione di Home Assistant di solito i Google Home (se presenti) sono i primi ad essere identificati dal sistema e sono riconosciuti come media player. In passato abbiamo visto con una stupenda guida di Vincenzo Caputo e il famoso software Tasker un piccolo accenno su come sfruttare le potenzialità di questo servizio (https://www.vincenzocaputo.com/tasker/come-realizzare-un-sistema-di-announcement-con-tasker-262).Oggi invece, inizieremo a visionare e dirigere al meglio lo stesso sistema con il servizio tts (Text To Speech) offerto dal nostro Hub Domotico per eccellenza Home Assistant.
Configurare il servizio TTS
Come prerequisito installate il file editor attraverso l'addon di Home Assistant, reperibile da questa guida: https://www.vincenzocaputo.com/home_assistant/hass.io-in-docker-cosa-fare-dopo-la-prima-installazione-vol.1-409 oppure potrete utilizzare il servizio Ftp o altro per poter accedere ai file di sistema di Home Assistant.
- Dirigetevi nella cartella Config e aprite il file configuration.yaml
- In fondo al file aggiungete queste righe di codice:
tts: - platform: google_translate cache: true cache_dir: /tmp/tts time_memory: 300 base_url: https://vostrodominio.duckdns.org service_name: google_say
- Modificate la base_url: con il vostro dominio che utilizzate per raggiungere Home Assistant da Remoto.
- Riavviate Home Assistant per rendere effetttive le modifiche
Utilizzo del servizio tts in script e automazioni
Per far riprodurre un messaggio contenente un semplice testo utilizziamo negli script o nelle automazioni le seguenti parti di codice:
service: tts.google_say
entity_id: media_player.floor
data:
message: 'Che la forza sia con te'
language: 'it'
Come potete vedere dall'esempio sopra riportato viene richiamato il servizio specifico per trasmettere il testo del messaggio: tts.google_translate_say.
In secondo luogo è stato specificato su quale dispositivo il servizio verrà applicato cioè 'media_player.floor' ma se ipoteticamente vorrete riprodurre il messaggio su tutti i dispositivi cambiate la stringa in "all".
Successivamente con la stringa message farete leggere al servizio tutte le parole inserite tra gli apici nel caso sopra indicato 'Che la forza sia con te'.
Un' ultima impostazione è la lingua, indicata con l'opzione language e l'abbreviazione it. Anche se, osservando accuratamente il language indica più che altro l'accentazione con la quale i nostri speaker dovranno eseguire la lettura della frase.
Infine è possibile far leggere a Google Home degli stati specifici di un determinato sensore identificando il messaggio come un template:
service: tts.google_say
entity_id: "all"
data:
Come avete potuto capire l'elaborazione del template è racchiusa da parentesi graffe dentro le quali potrete inserire la stringa relativa ad uno stato di un sensore, che il nostro servizio, sopra menzionato, potrà leggere. Ovviamente il servizio tts è in grado di leggere non solo lo stato numerico ma anche alfabetico di un determinato sensore.
Vi lascio infine, la video guida sulla quale potrete vedere in un atto pratico la potenza e la funzionalità del servizio:
Vi ricordo sempre di seguire i nostri canali
Telegram: https://t.me/vincenzocaputoblog
Youtube: https://www.youtube.com/channel/UC-_QPzJhqFr1p5oNljRPRDA e alla nostra pagina ufficiale
Pagina Facebook: https://www.facebook.com/caputovince e al
Gruppo Facebook: https://www.facebook.com/groups/homeassistantita
Produrre e aggiornare contenuti su vincenzocaputo.com richiede molto tempo e lavoro. Se il contenuto che hai appena letto è di tuo gradimento e vuoi supportarmi, clicca uno dei link qui sotto per fare una donazione.