ESP32 - IFTTT
Este tutorial ensina você a usar o ESP32 com o IFTTT. Os principais conteúdos abaixo serão apresentados:
- O que é o IFTTT?
- Como usar o ESP32 para interagir com o IFTTT, e vice-versa
- Como usar o ESP32 para acionar ou enviar dados a outros serviços (por exemplo, e-mail, SMS, chamada VoIP) via IFTTT
- Como controlar o ESP32 remotamente a partir de outros serviços (por exemplo, Alexa, Siri, Google Assistant ...) via IFTTT
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables ESP32 Starter Kit (ESP32 included) | |
| 1 | × | DIYables ESP32 S3 Starter Kit (ESP32 S3 included) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
O que é o IFTTT?
O IFTTT é um serviço web gratuito que conecta diferentes serviços (por exemplo, Twitter, Facebook, serviço de clima, e-mail ...). Por exemplo:
- O IFFTT pode ajudar você a salvar automaticamente no Dropbox as imagens que você publica no Facebook.
- O IFFTT pode ajudar você a enviar um e-mail automaticamente se chover amanhã.
IFTTT significa If This Then That (Se Isto Então Aquilo). Isso quer dizer que, se um serviço for acionado, outro serviço do IFTTT executa a ação
Do ponto de vista do ESP32, o IFTTT é uma ponte entre o ESP32 e outros serviços. Com o IFTTT, o ESP32 consegue fazer coisas difíceis com facilidade. Por exemplo:
- O ESP32 envia a notificação para o smartphone
- O ESP32 envia o e-mail e a mensagem SMS
- O Google Assistant e a Alexa controlam o ESP32
- Agendamento para o ESP32 via Google Calendar
Ao aprender sobre o IFTTT, você precisa conhecer quatro termos importantes: Applet, serviço, gatilho (trigger) e ação.
- O IFTTT é composto por Applets.
- O Applet normalmente é composto por dois serviços do IFTTT (por exemplo, Evernote, Facebook, serviço de clima, e-mail...):
- Um serviço é chamado de gatilho
- Um serviço é chamado de ação
- ⇒ Quando algo acontece no gatilho, a ação é executada
- Alguns serviços podem ser o gatilho. Alguns serviços podem ser a ação. Alguns serviços podem ser tanto gatilho quanto ação:
Um Applet pode ser criado:
- pela empresa IFTTT: Para usar esse tipo de Applet, você só precisa ativá-lo
- por terceiros: Para usar esse tipo de Applet, você só precisa ativá-lo
- por você mesmo: Para usar esse tipo de Applet, você precisa primeiro criar o seu próprio Applet e depois ativá-lo.
Para usar um Applet do IFTTT com o ESP32, você precisa criar um Applet por conta própria. Não se preocupe, é muito fácil.
O Applet criado por você mesmo para o ESP32 é composto por:
- Serviço Webhooks: este serviço interage diretamente com o ESP32
- Outro serviço: qualquer serviço que você queira usar (por exemplo, Twitter, Facebook, serviço de clima, e-mail ...)
Existem dois casos de uso:
- O ESP32 aciona o IFTTT: o ESP32 aciona o IFTTT para fazer algo. Por exemplo, o ESP32 aciona o IFTTT para enviar um e-mail
- O IFTTT aciona o ESP32: Um serviço externo aciona o IFTTT, e então o IFTTT aciona o ESP32 para fazer algo. Por exemplo, a Alexa manda o ESP32 acender a luz
Vamos aprender os dois casos, um por um.

Como o ESP32 aciona o IFTTT
Precisamos criar um Applet do IFTTT em que:
- O serviço Webhooks atua como gatilho
- O outro serviço (por exemplo, e-mail) atua como ação
Depois de criar um Applet do IFTTT para o ESP32:
- O ESP32 interage com o serviço Webhooks no IFTTT fazendo uma requisição HTTP/HTTPS ao serviço Webhooks.
- O serviço Webhooks aciona automaticamente o outro serviço no IFTTT
- O outro serviço no IFTTT executa a ação (por exemplo, enviar e-mail)
Como fazer o ESP32 acionar o IFTTT
- Crie uma conta no IFTTT
- Faça login no IFTTT
- Crie um Applet que conecte o Webhooks ao serviço desejado (por exemplo, e-mail, Twitter, VoIP ...)
- Vá à página de documentação do Webhooks para obter a chave do Webhooks.
- Escreva o código ESP32 para fazer uma requisição HTTP (POST ou GET) ao Webhooks.
Para aprender como fazer uma requisição HTTP usando o ESP32.
O que precisamos incluir na requisição HTTP
- Chave do Webhooks: fornecida pelo IFTTT. É uma chave única e secreta que identifica o seu Webhooks. Você encontra essa chave ao fazer login no site do IFTTT
- Nome do evento: definido por você ao criar o applet. É o nome que identifica o evento.
- (Opcional) Dados: o ESP32 pode incluir dados na requisição HTTP enviada ao IFTTT
A chave do Webhooks e o nome do evento fazem parte da URL. Os dados são opcionais e são incluídos na query string. O Webhook do IFTTT permite que a query string tenha até 3 variáveis com nomes fixos: value1, value2, value3.
Os formatos da URL da requisição HTTP GET:
- O gatilho sem dados:
- O gatilho com uma variável:
- O gatilho com duas variáveis:
- O gatilho com três variáveis:
Substitua EVENT_NAME e YOUR_KEY nos formatos acima.
Como enviar dados do ESP32 para o IFTTT
Para enviar dados do ESP32 para outro serviço do IFTTT (por exemplo, e-mail, Facebook), precisamos fazer:
- No ESP32: incluir os dados na requisição HTTP
- No Applet: modificar a configuração para extrair os dados da requisição HTTP.
O fluxo de trabalho:
- O ESP32 faz uma requisição HTTP/HTTPS ao serviço Webhooks do IFTTT
- O serviço Webhooks extrai os dados da requisição HTTP
- O serviço Webhooks aciona outro serviço do IFTTT e inclui os dados no gatilho.
- O outro serviço executa a ação
Existem cinco variáveis que podem ser especificadas na configuração do Webhooks ao criar o Applet:
| {{EventName}} | Quando esta variável é especificada, os dados serão extraídos da requisição HTTP |
|---|---|
| {{OccurredAt}} | Quando esta variável é especificada, os dados serão a hora do sistema do IFTTT |
| {{Value1}} | Quando esta variável é especificada, os dados serão extraídos da variável value1 na query string da requisição HTTP |
| {{Value2}} | Quando esta variável é especificada, os dados serão extraídos da variável value2 na query string da requisição HTTP |
| {{Value3}} | Quando esta variável é especificada, os dados serão extraídos da variável value3 na query string da requisição HTTP |
As instruções detalhadas serão apresentadas em tutoriais específicos.
Código de Exemplo
As instruções e o código de exemplo do ESP32 que envia dados para outro serviço do IFTTT estão disponíveis nos tutoriais abaixo:
Como o IFTTT aciona o ESP32
- Um serviço externo aciona um serviço do IFTTT
- O serviço do IFTTT aciona automaticamente o serviço Webhooks
- O serviço Webhooks faz automaticamente uma requisição HTTP/HTTPS ao ESP32. Nesse caso, o ESP32 deve funcionar como servidor web para tratar a requisição do serviço Webhooks do IFTTT
Abaixo está um exemplo de como o ESP32 interage com o Amazon Echo dot.

Como fazer o IFTTT acionar o ESP32
- Faça login no IFTTT
- Crie um Applet que conecte um serviço (por exemplo, Google Assistant, Amazon Alexa, Google Calendar ...) ao serviço Webhooks:
- O outro serviço é o gatilho
- O serviço Webhooks é a ação
- Escreva o código ESP32 para tratar as requisições HTTP vindas do Webhooks.
Ao criar o Applet com o serviço Webhooks como gatilho, o Webhook exige que você informe o endereço IP do ESP32 na configuração. Quando um evento é acionado, o IFTTT faz uma requisição HTTP ao ESP32 pelo endereço IP informado.
As instruções detalhadas serão apresentadas em tutoriais específicos.
Código de Exemplo
As instruções e o código de exemplo de como o IFTT aciona o ESP32 estão disponíveis nos tutoriais abaixo: