1. Introdução
O que você vai aprender
- Como planejar e programar 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 lâmpada inteligente ou outro dispositivo certificado para "Funciona com o Google Home" e que pode 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 ligado e desligado usando o app Home.
3. Planejar a automação com script
Vamos começar pensando no que queremos que a automação com script faça. Isso inclui considerações como:
- Quais dispositivos você quer automatizar.
- Qual iniciador (ou evento) precisa acionar a execução da automação com script.
- Quais condições adicionais, se houver, controlam se a automação com script será executada ou não quando acionada.
- Quais ações precisam ser realizadas.
Para este codelab, nosso plano é fazer com que a automação com script faça duas coisas:
- Acender 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 a automação faça, vamos abrir o editor de script e programar a automação.
4. Programar a automação com script
As automações com script são gravadas de forma declarativa usando a linguagem de serialização de dados YAML.
Uma automação com script é composta por duas seções principais:
- Metadados: o nome da automação com script e uma descrição do que ela faz.
- Regras de automação: define a lógica de iniciação e o comportamento da automação.
Metadados
Os metadados da automação informam ao usuário o nome e a função dela. Os metadados são especificados no bloco metadata
, que tem esta aparência:
metadata:
name: Scheduled light
description: Turn the light on and off at specific times
Regras de automação
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 Iniciantes | 2 Condições | 3 ações |
As ativações iniciam a automação. Pelo menos um ativador precisa ser avaliado como | Elas são opcionais e consistem em uma ou mais restrições adicionais que são avaliadas após a ativação de um ativador. Se as condições forem resolvidas para Ao incluir várias restrições, separe-as com as palavras-chave Uma condição não é a mesma coisa que uma notificação de mudança de estado:
| As ações são operações que são realizadas quando o iniciador e as condições de restrição são atendidas. |
O bloco automations
da 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 desliga. - Cada regra tem uma única ação.
on: true
significa acender a luz. Da mesma forma,on: false
significa desligar a luz.- Cada regra tem um único ativador
time.schedule
que informa à automação o horário de início. - Não há condições nesta automação.
5. A automação completa com script
Juntando todas essas partes, a automação completa com script fica 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 "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 sublinhou 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. Nesse caso, use o recurso de preenchimento automático para escolher um nome de dispositivo válido.
- Clique em Salvar.
- Verifique se a chave Ativar, abaixo do texto do script, está na posição ativada:
6. Testar a automação
- Verifique se o dispositivo está conectado e aparece no app Google Home.
- Se o dispositivo estiver ligado, desligue-o.
- Na página Automações do Google Home para Web, clique no botão "Executar" ao lado da automação.
- O dispositivo vai ser ligado.
Agora, vamos testar a automação.
- Desligue o dispositivo.
- Edite a automação e mude o horário de "ligar o dispositivo" na linha 7 para um horário cinco minutos no futuro.
- Mude o horário de desativação do dispositivo na linha 14 para um horário logo após o horário de ativação.
- Clique em Validar. Resolva os erros que aparecerem.
- Clique em Salvar.
- Verifique se a opção Ativar está na posição ativada.
- Aguarde o término dos dois tempos de início. O dispositivo vai acender e apagar nos horários especificados.
7. Parabéns!
Você criou uma automação com script.
Neste codelab, você aprendeu a:
- Como projetar e escrever 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 programar a ativação de um interruptor. Agora que você entendeu os conceitos básicos de criação de uma automação, pode conhecer os vários tipos de ativações, condições e ações disponíveis no ecossistema do Google Home.
Tente fazer estes exercícios:
- Adicione mais ativações
time.schedule
à automação. - Modifique a automação para ligar e desligar outro dispositivo na mesma programação.
- Sem remover os ativadores
time.schedule
, modifique a automação para ativar os dispositivos somente quando outro dispositivo estiver ligado. Consulte os exemplos de scripts que usam a cláusulacondition
. - Modifique a automação para ativar 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: