Pular para o conteúdo principal

Telegram - Criando um BOT



O Telegram é um app de mensagens web, mobile e desktop, é possível utiliza-lo sem a necessidade de um número de celular e os usuários podem conversar uns com os outros sem trocarem seus telefones apenas o @usuário.

Uma das dezenas de funções únicas do Telegram é a possibilidade de qualquer pessoa criar um Bot, um usuário eletrônico que segue um algoritmo do criador por meio de comandos pré-definidos. Vou ensinar aqui como fazer um Bot que envia mensagens aleatórias de um arquivo TXT.

A primeira coisa a ser feita é você já ser um usuário Telegram. Com sua conta criada comece uma conversa com o @BotFather. Envie as mensagens na seguinte ordem:

  1. /newbot
  2. Envie o nome do bot, ainda não é o usuário.
  3. Agora sim, envie uma mensagem com o usuário do bot, por exemplo rtemtxtbot ou rtemtxt_bot, ele precisa terminar com a palavra bot e será encontrado por outros por meio desse nome por exemplo @rtemtxtbot ou @rtemtxt_bot
  4. Pronto seu Bot está pronto para ganhar o mundo.
Com o Bot criado agora é hora de instala-lo utiliza-lo, a mensagem final do @BotFather tem um token que será usado neste passo.

Iremos utilizar o Telepot, uma biblioteca do Python que te permite se conectar à API de Bots do Telegram. Vou focar em executar esse Bot no Raspberry Pi com Raspbian ou alguma destruição baseada no Debian.

Para instalar o Telepot no Raspbian são dois simples comandos:

$sudo apt-get install python-pip
$sudo pip install telepot

Pronto, já podemos criar o nosso primeiro script que se conectara à API de Bots do Telegram e executar a leitura aleatória do nosso arquivo TXT e enviara uma das linhas sorteadas.

O script será esse, crie por exemplo o script.py e apenas substitua os campos em amarelo com suas informações:

import random
import telepot
 
def handle(msg):
    chat_id = msg['chat']['id']
    command = msg['text']
    print ‘Comando recebido: %s' % command

    if command == ‘/COMANDO’:
        lines = open(‘arquivo.txt').read().splitlines()
        mensagem = random.choice(lines)
        bot.sendMessage(chat_id, mensagem)
    elif command == ‘/COMANDO@SEU BOT’:
        lines = open(‘arquivo.txt').read().splitlines()
        mensagem = random.choice(lines)
        bot.sendMessage(chat_id, mensagem)
 
bot = telepot.Bot(‘TOKEN’)
bot.message_loop(handle)
print 'Bruwonnnnn...'
while 1:
    time.sleep(10)
 
Feito isso salve na mesma pasta do script.py um arquivo chamado arquivo.txt, coloque várias linhas com textos que você quer usar no seu Bot, lembrando que esse é apenas um exemplo, você poderá criar todo tipo de ações e interações alterando o código acionado quando se recebe o comando pré-definido, você só precisa entender o básico de Python, a web é uma fonte infinita de conhecimento para tal.

Baixe aqui o script.py e o arquivo.txt.


Para colocar seu bot em ação execute o script.py e mantenha-o aberto, abra o seu Telegram procure seu Bot e envie o comando que você definiu no script.py. Você receberá de volta uma das linhas do arquivo.txt!


Alguma pergunta ou sugestão escreva nos comentários.


Ciao!

Postagens mais visitadas deste blog

Update 3 - Rover 2.0

Essa semana que passou acabei perdendo muito tempo vendo séries. Recomecei a ver Vikings, eu tinha já visto os três primeiros episódios mas perdi interesse! Agora não sei o motivo, a série é muito boa ou ando muito entediado. Também fiz uma entrevista de emprego em uma empresa muito legal aqui, eles tem um App no Brasil, Fing , ele faz um scan por devices na rede e guarda históricos e é bem útil pra encontrar o IP de devices recém conectados na rede, o Raspberry Pi por exemplo. Mas o principal serviço deles é o Domotz Pro , um aplicativo que monitora tudo que está na rede, faz testes de velocidade, rotas e mantém histórico em gráficos bem bacanas.

Aquário - Monitor de Temperatura

Dia 17 de Setembro compramos um aquário usado! Compramos pelo Facebook Marketplace, um meio bem bacana de achar muita coisa barata. Montamos o aquário que já veio com quase tudo e estamos ciclando ele antes de colocar qualquer peixe, é meio chato mas vale a pena. Aqui explica bem detalhadamente como se cicla um aquário: Ciclagem . Para a boa saúde dos peixes uma temperatura constante da água é necessária, mas como monitorar isso sem ficar toda hora indo no aquário fazer a leitura do termômetro? Foi pensando nisso que montei esse projeto simples e barato. O sensor que eu escolhi é um dos mais comuns e já vem em uma capsula a prova de água:   DS18B20 A ligação desse sensor com o Raspberry Pi foi feita da seguinte forma: Com isso basta configurar algumas coisas no Rapberry para fazer a leitura do sensor. Iremos adicionar suporte ao OneWire para fazer a leitura da temperatura. Adicione a seguinte linha ao arquivo / boot/config.txt dtover

Dia 1

Desde a última criação de conteúdo do canal do YouTube  até hoje já se passaram 1 ano e da última tentativa de retomada 8 meses, mas: