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?

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.

ESP32 IFTTT

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

  • 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:
http://maker.ifttt.com/trigger/EVENT_NAME/with/key/YOUR_KEY
  • O gatilho com uma variável:
http://maker.ifttt.com/trigger/EVENT_NAME/with/key/YOUR_KEY?value1=25
  • O gatilho com duas variáveis:
http://maker.ifttt.com/trigger/EVENT_NAME/with/key/YOUR_KEY?value1=25&value2=19
  • O gatilho com três variáveis:
http://maker.ifttt.com/trigger/EVENT_NAME/with/key/YOUR_KEY?value1=25&value2=19&value3=6

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:

  1. O ESP32 faz uma requisição HTTP/HTTPS ao serviço Webhooks do IFTTT
  2. O serviço Webhooks extrai os dados da requisição HTTP
  3. O serviço Webhooks aciona outro serviço do IFTTT e inclui os dados no gatilho.
  4. 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 o IFTTT Alexa funciona

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:

※ NOSSAS MENSAGENS

  • Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!