Hacking Google Nest Speaker usando Python
O script google-nest-python-tts é uma implementação de um servidor Flask para enviar mensagens tts ( Text to Speach ) para um Google Nest Speaker.
Download do projeto
Como utilizar
Primeiramente instale todas as bibliotecas necessárias para execução do script. Você pode fazer isto utilizando o comando abaixo:
pip3 -r requirements.txt
Depois de instalado as bibliotecas necessárias você deve configurar o arquivo config.json considerando as seguintes configurações:
- ip ( endereço ip do seu Google Nest Speaker )
- serverPort ( porta tcp do servidor temporária que será utilizado para a transmissão com o Google Nest )
- WebServerPort ( porta tcp do servidor web que será utilizado pelo Flask )
- defaultLanguage ( idioma padrão que será utilizada para transmissão das mensagens ).
Idiomas suportados
Local accent | Language code ( | Top-level domain ( |
---|---|---|
English (Australia) |
|
|
English (United Kingdom) |
|
|
English (United States) |
|
|
English (Canada) |
|
|
English (India) |
|
|
English (Ireland) |
|
|
English (South Africa) |
|
|
French (Canada) |
|
|
French (France) |
|
|
Mandarin (China Mainland) |
| any |
Mandarin (Taiwan) |
| any |
Portuguese (Brazil) |
|
|
Portuguese (Portugal) |
|
|
Spanish (Mexico) |
|
|
Spanish (Spain) |
|
|
Spanish (United States) |
|
|
Iniciano o servidor google-nest-python-tts
Para iniciar o servidor Google Nest você deve primeiramente certificar que as portas TCP que foram setadas no config.json estão livres para utilização.
Caso esteja tudo ok, basta executar o comando:
python3 gnestServer.py
Enviando textos para reprodução via API REST
O servidor GNest foi desenvolvido para receber mensagens no body com as variavéis:
- message: texto que será traduzido voz e reproduzido pelo Google Nest Speaker
- language: linguagem que você quer que seja utilizada para traduzir a mensagem de texto para voz
Exemplo de curl para importação no Postman
Para enviar as mensagens basta utilizar o curl ou caso esteja utilizando IDEs como o Postman, Insominia basta importar o curl abaixo:
curl --location --request POST 'http://192.168.1.153:5555/message' \
--header 'Content-Type: application/json' \
--data-raw '{
"message" : "a",
"lang" : "pt"
}'
Considerações finais
Este script eu desenvolvi para fins pessoais, para ter um maior controle e customizar meus bots para enviar mensagens, lembretes e alertas por voz em meu Google Home Speaker.
Me diga o que achou desta publicação no Linkedin, dê um like e compartilhe com seus amigos caso tenha gostado. Para comentar:
https://www.linkedin.com/posts/jaccon_enviando-mensagens-de-voz-para-google-mini-activity-7023133874775801856-wiRg?utm_source=share&utm_medium=member_desktop
Quer saber mais sobre Python fique antenado na Live que iremos codificar este script passo a passo. Acompanhe aqui no blog