ESP32

Telegram bot com ESP32

Telegram bot com ESP32

às vezes os artigos são baseados em necessidades que tenho em meus projetos. Dessa vez, achei que seria uma boa ideia ter um bot para mandar mensagens de status para o celular em determinadas situações. Por exemplo, se houver uma tentativa de acesso a uma casa (acionando um sensor qualquer de passagem), ou para enviar aviso de consumo (água, luz) próximo ao limite mensal. Ou ainda, para avisar sobre a paralização de algum equipamento, a tempo de prestar suporte antes que o cliente mesmo saiba que haverá a necessidade de manutenção. Para isso, vamos usar o telegram bot com ESP32, mas poderia ser comESP8266, Arduino etc.

Baixe o Telegram para smartphone ou computador pessoal

Podemos receber notificações no celular ou no notebook, à sua escolha.

Para Android, o link da Play Store é esse. Para desktop, o Telegram está disponível nesse outro link.

Configurar Telegram bot

Após iniciar o programa, procure na caixa de pesquisas por @BotFather. Clique sobre ele e então clique no botão Reiniciar.

Para criar um novo bot, digite /newbot. Para selecionar um nome para o bot quando solicitado, apenas digite o nome. Se já houver um e quiser renomeá-lo, clique sobre ele quando ele aparecer na lista. Para trocar o nome, basta digitar /setname e então clicar no bot que aparecer.

Ao criar um novo bot, o token deve aparecer automaticamente após o processo de criação, com a devida orientação. Para um bot já criado, será necessário requisitar o token novamente. Para isso, digite /token.

Telegram com ESP32

A biblioteca pode ser baixada diretamente dos repositórios. Aqui prefiro utilizar a IDE Atom com PlatformIO porque tem auto-completação de código, split de tela (me permitindo colocar código lado a lado, sendo do mesmo arquivo ou de diferentes arquivos), me permite ver códigos dos exemplos sem ter que abrir um arquivo de exemplo etc.

Após criar um novo projeto para ESP32 (seja no Atom ou na IDE do Arduino), instale a biblioteca UniversalTelegramBot. Aproveite e instale a dependência  ArduinoJson versão 5.13.2.

Baseado no código de exemplo EchoBot, faça algo como:

Após, compile e suba o programa. Abra seu bot no telegram e digite alguma coisa nele. Haverá um atraso na resposta, mas a resposta deverá ser exatamente a mensagem enviada.

Com esse exemplo já podemos considerar enviar comandos para obter resposta sobre funcionalidades implementadas no projeto ou simplesmente criar limítrofes para geração de alarmes automaticamente.

Fácil ou não? Eis o Telegram bot com ESP32!

Telegram bot com ESP32

Até a próxima!