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

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.

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: