Tenha seu Home Assistant na Google Assistant - Manual

Esse tutorial permite a integração dos dispositivos do Home Assistant com a google_assistant
e permite controlar os dispositivos através do Google Assistant (no seu celular ou tablet) ou de um dispositivo Google Home.

nuvem

Atualmente há duas maneiras de ter seus dispositivos do HA no google assistant.

1) Configuração automática via Home Assistant Cloud

Com o Home Assistant Cloud, você pode conectar sua instância do Home Assistant com apenas alguns cliques ao Google Assistant. Além disso, com o Home Assistant Cloud, você não precisa lidar com certificados DNS dinâmicos, SSL ou abrir portas no seu roteador. Basta fazer login através da interface do usuário e uma conexão segura com a nuvem será estabelecida. O Home Assistant Cloud requer uma assinatura paga após uma avaliação gratuita de 30 dias.

Este serviço é executado pelo parceiro Nabu Casa, uma empresa fundada pelos fundadores da Home Assistant e do Supervisor.

Após o teste gratuito, a assinatura custa US $ 5 por mês .

Para configurar, basta acessar seu HA, menu “Configurações” → “Home Assistant Cloud”. Criar uma conta, fazer a autenticação e iniciar o teste gratuito dos primeiros dias.

2) Configuração manual

Caso você queira ver mais detalhes, acesse o site com o manual oficial do home assistant:

Para ter seus dispositivos do HA no Google Assistant de forma manual, requer um pouco mais de configuração do que a maioria devido à maneira como o Google exige a instalação de aplicativos assistentes.

ATENÇÃO!

Para usar o Google Assistant, sua configuração do Home Assistant deve estar acessível externamente com um nome de host e um certificado SSL. Se você ainda não configurou isso, deve fazê-lo antes de continuar.

https://forum.homeassistantbrasil.com.br/t/instalando-o-duckdns-tenha-acesso-ao-home-assistant-interno-e-externo-http-e-https/1136

Ou seja, você deve ter configurado o Duckdns, ou algum outro domínio a qual você consegue acessar seu Home Assistant através de qualquer local sem estar conectado a sua rede.

Etapa 1

Você precisa criar uma chave de API com o Google Cloud API Console, que permite atualizar dispositivos sem desvincular e vincular novamente uma conta. Se você não fornecer um, o serviço google_assistant.request_sync não será exposto. É recomendável definir essa chave de configuração, pois também permite o uso do comando a seguir, " Ok Google, sincronize meus dispositivos ". Depois de configurar esse componente, você precisará chamar este serviço (ou comando) sempre que adicionar um novo dispositivo que deseja controlar por meio da integração do Google Assistant.

  1. Clique no botão Ativar APIs e serviços.
  2. Pesquise, encontre e ative a “API Homegraph”.
  3. Em seguida, clique em Credenciais e crie uma nova chave de API.
  4. Anote a chave da API mostrada. Você pode terminar aqui, mas sugiro que você clique em Restringir chave ( Restrict Key).

No mínimo, forneça um nome para a Chave da API para que você possa reconhecer para que foi gerada. Se você souber o que está fazendo, poderá restringir a API ao IP da WAN do assistente doméstico ou fornecer outras restrições para o uso da chave. Mas isso não é necessário.

Etapa 2

2.1 - Criando um projeto

  1. Acesse Actions On Google;
  2. Crie um novo projeto no console Actions no Google;
  3. Se for a primeira vez, você precisa aceitar os temos de serviço, selecionando seu País;
  4. Defina um nome para seu projeto (Home Assistant, Google Assistant), selecione o idioma, país, e clique em “Create project”.
  5. Agora você precisa selecionar a categoria do projeto: “Smart Home”;
  6. Em seguida, o tipo do projeto: “Smart home”;

2.2 - Configurando um projeto

  1. Para iniciar a configuração do projeto, defina um nome clicando em “Name your Smart Home action”;

  1. Defina um nome, e fique atento. O Google tem várias regras para a definição de nome para não conflitar com outros recursos que são utilizado, por exemplo não pode ter Assistant. Você pode testar a pronúncia, e em seguida clique em “Save”. Se o google não aceitar o nome, escolha outro nome;
    Futuramente é possível alterar.
  2. Adicione uma vinculação a sua conta, e no item “Account creation” apenas clique em “Next”;
  3. Em Linking type preencha com os seguintes valores (Em seguida clique em Next):
    • OAuth
    • Authotization code

  1. Agora clique em “Overview” e na tela seguinte em “Setup account liking” para iniciar a configuração;

  1. Nos campos que irá solicitar, preencha com os seguintes valores:
    • https://oauth-redirect.googleusercontent.com/
    • Sua senha não importa, você pode digitar algo como “meuhomeassistant” ou “1234”
    • https://[YOUR HOME ASSISTANT URL:PORT]/auth/authorize
    • https://[YOUR HOME ASSISTANT URL:PORT]/auth/token

  1. Em seguida, adicione os campos email e name, conforme a imagem;

  1. Preencha na descrição um “test” e clica em "Save;

  1. Actions: Acesse o menu ações, e preencha o campo com seu domínio e clique em save:
    https://[YOUR HOME ASSISTANT URL:PORT]/api/google_assistant

2.3 - Testando o projeto

  1. Clique na aba Test, e tente acionar seu assistant solicitando para falar com ele;
    Não se preocupe se mostrar um erro, não testará nada neste momento .
  2. Agora você precisa pegar o id do projeto. Acesso a opção Project settings e copie o “Projet ID”. Será necessário para incluir no arquivo de configuração do seu HA.

Etapa 3

Configure seu Home Assistant, abra seu arquivo configuration.yaml e adicione o seguinte código, pode ser adicionado em qualquer parte do arquivo.

google_assistant:
  project_id: Coloque aqui o ID Do projeto na etapa 2
  api_key: Coloque aqui o código API criado na Etapa 1
  report_state: true
  exposed_domains: #Lista de domínios de entidades a serem expostos ao Google Assistant
    - switch
    - light

Nesse código você pode customizar em quais tipos de entidades do seu Home Assistant o Google Home vai ter acesso!

É na parte de exposed_domains:

    - switch
    - light
    - sensor
    - camera
    - script
    - scene
    - input_boolean
    - climate
    - media_player
    - fan
    - alarm_control_panel
    - group
    - input_select
    - lock
    - cover
    - vacuum
    - humidifier

Após adicionar o código e adicionar quais entidade do Home Assistant o Google Home vai ter acesso, você precisará reiniciar seu Home Assistant.

Etapa 4 - APP Google Home

No seu dispositivo Android, abra o aplicativo Google Home usando a mesma conta do Google usada para criar os projetos acima e vá ao menu configurar dispositivos conforme a imagem abaixo:

Na lista de dispositivos, você verá a ação do Smart Home que você criou acima. No exemplo da imagem acima é o Mr. Pippin. Observe que o [test] à frente indica que ele é rascunho e não está disponível ao público para mais ninguém, o que é bom.

Depois de selecionar sua ação criada do Smart Home, o APP Google Home se autentica e deve fornecer uma lista de dispositivos encontrados fornecidos pelo seu Home Assistant.

Um abraço!

Vídeo:

6 curtidas

Obrigado Douglas, estava quebrando a cabeça para colocar pra funcionar. Seguindo os passos que colocou dá certinho!!

3 curtidas

Valeu @douglas. Tava surtando aki já e nenhum tutorial dava certo. Voltou a funcionar agora seguindo os passos do tuto. Obrigado!!

1 curtida

Uma pergunta de inciante, essa integração do Google Assistant não substituiu o alto-falante(home mini)?
No meu caso o Home Assistant está instalado em um Notebook, consigo dar o comando utilizando o microfone do notebook?

1 curtida

Com o Google mini, vc pode pedir para ele reproduzir um arquivo de áudio ou pedir para ele falar o que vc escrever (TTS). Não sei se foi está a pergunta!

Ah sim, minha dúvida é se, sem o Google Mini eu consigo fazer as solicitações por comando de voz pelo microfone do notebook

Ah entendi, consegui dar comandos de voz pelo celular ou tablet usando o aplicativo do Assistant, no microfone do computador não sei como fazer Hehehe…

Então, comecei a “fuçar” no HA a pouco tempo, e estou um pouco confuso em relação a esse tipo de integração do Google Assistant e Alexa, por exemplo no Add-on store tem o “Google Assistant SDK”
não sei se ele tem a mesma finalidade do que o do tópico aqui.

O Google Assistant e a Alexa existem apenas 2 maneiras de integrar. 1º ( Automátic ) é usando Nabu, que vc paga por mês U$ 5,00/Mês e só coloca login e senha e pronto. A 2º ( Manual ) é grátis, mas tem que configurar o https e é um pouco mais complicado, mas é só seguir este tutorial que consegui.

Google Assistant é o assistante virtual da google que tem dentro do google home, dentro do seu celular (se vc baixar o APP Google Assistant), dentro das caixas JBL com google assistant… O que você faz é integrar para poder usar os seus dispositivos que estão no Home Assistant para executar por comando de voz através desses equipamentos que possuem o google assistant. Isso está na explicação do tutorial.
image
Você não consegue acessar pelo microfone do seu notebook, pois você só faz uma integração dos seus dispositivos, você não instala o google assistant no seu HA ou notebook.

Até tem opção de instalar o Google Assistant no PC, mas é outros 500, nada em relação ao HA, e não sei como faz também, só sei que tem uma possibilidade, mas acho que não é simples.

Ah entendi Douglas, era exatamente essa a minha dúvida, achei que a configuração do Google Assistant SDK era para o acesso ao comando de voz do notebook ou outro dispositivo, já que nas configurações do mesmo tem as opções de Input e Output.

Agradeço pelas respostas, vou aguardar chegar os meus Sonoff e os NodeMCU ESP8266 para fazer os teste, e pesquisar mais sobre o “Google Assistant SDK” que acredito que seja diferente do tutorial aqui do tópico, e assim que conseguir posto os resultados.

Boa noite pessoal. tem algum tutorial para configurar a Alexa da Amazon no home assistant?

Eu tenho acesso através do duck dns, mas meu link do navegador não aparece como https e sim http, como faço pra mudar isto?

1 curtida

Para eu entender, você consegue acessar seu HA pelo HTTP?
Exemplo: http://meuhome.duckdns.org.br ?

Se sim, basta colocar isso dentro do seu configuration.yaml

http:
  base_url: https://my-domain.duckdns.org:8123
  ssl_certificate: /ssl/fullchain.pem
  ssl_key: /ssl/privkey.pem

Repare que no código acima está com endereço HTTPS.

Fiz as alterações no configuration.yaml, mas deu erro na verificação. Observei que a pasta “/ssl”, a qual vc indica o caminho do certificado está fazia. Pode ser esse o problema? Se for como consigo o certificado?

Então você me passou a informação incorreta. Você não tem acesso através do duckdns. Se não isso já estaria configurado.

A configuração do DuckDNS é outros 500. Você precisa seguir esse tutorial:

Mas antes, você precisa ter:

  • IP público na sua rede, caso contrário não irá funcionar.
  • Reserva de IP para o MAC do seu HA.
  • Aplicar o redirecionamento da porta do seu HA 8123 para 8123 e eu tive que fazer da 443 para a porta 8123.

Para mais detalhes, sugiro você criar um tópico para como configurar o DuckDNS e deixar esse apenas para Google Assistant.

consegui resolver e gostaria de deixar a solução caso alguém esteja com o mesmo problema. Instalei o duck-dns através da add-ons e os certificados foram criados automaticamente.

1 curtida

Olá Douglas, excelente tutorial.
Fiquei com uma dúvida: se eu usar a opção de " Configuração automática via Home Assistant Cloud" eu pulo a Etapa 1 e 2 e começo a configuração do meu HA à partir da Etapa 3, no arquivo configuration.yaml, só que com a parte do google_assistant já estará configurada, é isso?
Agradeço desde já.

Se você usar o Nabu casa, você não precisa configurar praticamente nada.

Recomendo você assistir o vídeo a seguir para entender melhor.

Nesse codigo, abaixo de entity_config, eu devo configurar minhas entidades, ou apenas copiar da mesma forma como descrito?