1. Introdução
O que você vai aprender
- Como planejar e escrever uma automação com script.
- Como testar uma automação com script.
O que é necessário
- Um smartphone Android ou iOS com o app Google Home.
- Uma iluminação inteligente ou outro dispositivo certificado para Compatível com o Google Home e que possa ser ligado ou desligado.
2. Configurar o dispositivo
Se o dispositivo ainda não estiver configurado, faça isso na sua casa.
Confirme se o dispositivo aparece no app Google Home e se ele pode ser ativado e desativado pelo app Home.
3. Planeje sua automação com script
Vamos começar pensando no que queremos que nossa automação com script faça. Isso inclui considerações como:
- quais dispositivos você quer automatizar;
- Qual ativação (ou evento) deve acionar a execução da automação com script.
- Quais condições adicionais, se houver, controlam se a automação com script é executada ou não quando acionada?
- Quais ações devem ser executadas.
Para os fins deste codelab, nosso plano é que a automação com script faça duas coisas:
- Acenda a luz (ou outro dispositivo inteligente) em um horário específico.
- Desligue o dispositivo em um horário específico.
Agora que sabemos exatamente o que queremos que nossa automação com script faça, vamos abrir o editor e escrever a automação.
4. Escrever a automação com script
As automações com script são escritas de maneira declarativa usando a linguagem de serialização de dados YAML.
Uma automação com script é composta de duas seções principais:
- Metadados: o nome da automação com script e uma descrição do que ela faz.
- Regras de automação — Definem a lógica de início e o comportamento da automação.
Metadados
Os metadados da nossa automação informam ao usuário o nome da automação e o que ela faz. Os metadados são especificados no bloco metadata
, que tem a seguinte aparência:
metadata:
name: Scheduled light
description: Turn the light on and off at specific times
Regras Automation
Uma regra de automação é onde o trabalho real acontece. Ele consiste em três partes: ativações, condições e ações, que são avaliadas em ordem:
1 Ativações | 2 Condições | 3 ações |
São elas que iniciam a automação. Pelo menos uma ativação precisa ser avaliada como | Elas são opcionais e consistem em uma ou mais restrições extras que são avaliadas após a ativação de uma ativação. Se as condições forem resolvidas como Ao incluir várias restrições, separe-as com palavras-chave Uma condição não é igual a uma notificação de alteração de estado:
| As ações são operações realizadas quando o inicializador e as condições de restrição são atendidos. |
O bloco automations
da nossa automação contém duas regras:
automations:
- starters:
- type: time.schedule
at: 1:00 PM
actions:
- type: device.command.OnOff
devices: Desk light - Office
on: true
- starters:
- type: time.schedule
at: 1:05 PM
actions:
- type: device.command.OnOff
devices: Desk light - Office
on: false
Observe o seguinte:
- Há duas regras
automations
. O primeiro acende a luz e o segundo a apaga. - Cada regra tem uma única ação.
on: true
significa acender a luz. Da mesma forma,on: false
significa apagar a luz.- Cada regra tem uma única ativação
time.schedule
que informa a hora de início da automação. - Não há condições nesta automação.
5. A automação completa com script
Juntando todas essas peças, a automação com script completa vai ficar assim:
metadata:
name: Scheduled light
description: Turn the light on and off at specific times
automations:
- starters:
- type: time.schedule
at: 1:00 PM
actions:
- type: device.command.OnOff
devices: Desk light - Office
on: true
- starters:
- type: time.schedule
at: 1:05 PM
actions:
- type: device.command.OnOff
devices: Desk light - Office
on: false
- Copie a automação (acima).
- Acesse o Google Home para Web.
- Selecione a guia de automações, representada por um ícone com três estrelas:
- Clique em + Adicionar novo.
- No editor de script, exclua o modelo de automação.
- Cole a automação.
- Substitua
Desk light - Office
pelo nome e local do dispositivo. - Clique em Validar. O editor de script sublinha as seções da automação com script que contêm erros. Resolva todos os erros que surgirem e continue validando e corrigindo até que não haja mais erros. Por exemplo, o nome do dispositivo pode ser diferente. Se esse for o caso, você pode usar o recurso de preenchimento automático para escolher um nome de dispositivo válido.
- Clique em Salvar.
- Confira se a chave Ativar, abaixo do texto do script, está na posição ativada:
6. Testar a automação
- Confira se o dispositivo está conectado e visível no app Google Home.
- Se o dispositivo estiver ligado, desligue-o.
- Na página Automações do Google Home para Web, clique em "Executar". ao lado da automação.
- O dispositivo vai ligar.
Agora, vamos testar a automação.
- Desligue o dispositivo.
- Editar a automação e mudar a opção "Dispositivo ligado" tempo na linha 7 para um horário de cinco minutos no futuro.
- Mude o botão "Desligado" na linha 14 para um horário logo após o "no horário".
- Clique em Validar. Resolva todos os erros que possam surgir.
- Clique em Salvar.
- Confira se a chave Ativar está na posição ligado.
- Aguarde os dois tempos de ativação passarem. O dispositivo será ligado e desligado nos horários especificados.
7. Parabéns!
Você criou uma automação com script. Incrível!
Neste codelab, você aprendeu a:
- Como projetar e programar uma automação.
- Como testar uma automação.
Próximas etapas
Neste codelab, criamos uma automação muito simples. As automações podem fazer muito mais do que só programar a ativação de um interruptor. Agora que você conhece os fundamentos da criação de uma automação, conheça os vários tipos de ativações, condições e ações disponíveis no ecossistema do Google Home.
Faça os exercícios a seguir:
- Adicione mais ativações
time.schedule
à automação. - Modifique a automação para ligar e desligar outro dispositivo na mesma programação.
- Sem remover as ativações
time.schedule
, modifique a automação para ligar os dispositivos apenas quando outro dispositivo estiver ligado. Consulte os scripts de exemplo que usam a cláusulacondition
. - Modifique a automação para ligar os dispositivos apenas quando alguém estiver em casa.
Leitura adicional
Para saber mais sobre as automações do Google Home, consulte a documentação de referência da seção "Automações":