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

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:

Projeto Rover 2.0

Enquanto a tralha não chega vamos ao planejamento do que pretendo fazer: Vou utilizar a mesma base que utilizei no primeiro, o "Tamiya 70100 Track and Wheel Set". Ele teoricamente consegue andar em "qualquer" terreno:
Fonte: https://www.pololu.com/product/106, custa $7.95 atualmente.