Crea tu propio Bot para Telegram usando Python.

Saludos a todos, espero se encuentren bien. Estoy seguro has escuchado hablar de Telegram, o quizás ya eres un usuario de esta red social. Desde mi punto de vista, Telegram, está años luz de cualquier otra plataforma de mensajería instantánea y una de sus características preferidas es la posibilidad de crear bots de forma rápida y fácil. Crea tu propio bot para Telegram usando Python y deja volar tu creatividad para darle infinidad de usos.

Con estos sencillos pasos , voy a explicarte como creamos un Bot en Telegram usando Python.

¿Cómo crear un Bot usando Telegram?

  1. Lo que primero que tienes que hacer es mandar un mensaje desde Telegram al BotFather (@BotFather), en concreto el de «/newbot».
  2. Posteriormente el propio bot te preguntará por el nombre que quieres para tu bot. Importante, tiene que terminar en la palabra Bot. Ejemplo: SuperBot o super_Bot.
  3. Si todo está correcto, te verificará la creación de tu Bot.
  4. Bot creado y listo para personalizar. El BotFather no asignara un TOKEN o código único de nuestro Bot para poder usarlo más adelante.
  5. Es opcional configurar la privacidad de tu bot, pero es recomendable. Escribimos «/setprivacy» y posteriormente, el nombre de tu bot mencionándolo por su nombre «@Bot». El BotFather te responderá con las opciones que puedes configurar, por ejemplo que cualquiera lo pueda usar o que responda solo a determinados grupos o usuarios.
Bot Telegram API Python Comandos

Comandos avanzados para configurar un Bot en Telegram

Si queremos personalizar el BotFather aún más, podemos cambiar la imagen del bot, agregar una descripción y los comandos que puede entender. La instrucción /help con el BotFather te detalla los comandos que él puede recibir. Puede parecer algo difícil de entender tal y como te lo explican aquí, así que vamos a describir cada uno de ellos.

/newbot – Crea un nuevo bot, te pedirá el nombre y lo creará.
/token – Te da el Token HTTP para una API que quieras hacer, por ejemplo.
/revoke – Elimina el acceso mediante el Token a tu Bot.
/setname – Cambia el nombre de tu bot
/setdescription – Cambia la descripción de tu bot, muy útil para presentarlo y explicar lo que hace
/setabouttext – Modifica la información sobre tu bot.
/setuserpic – Cambia la imagen de perfil de tu bot.
/setinline – Permite modificar los permisos con respecto a los bots integrados, si los entiende o no.
/setinlinefeedback – Configura las respuestas a los mensajes con bot integrados.
/setcommands – Cambia los comandos con los que se podrá interactuar con tu bot
/setjoingroups – Habilita o deshabilita la opción de añadir tu bot a grupos
/setprivacy – Ajustes de privacidad, si el bot puede ver todos los mensajes o sólo los que lo mencionen
/deletebot – Eliminar un bot.
/cancel – Cancelar la operación vigente con el BotFather
Bot Telegram API Python Ejemplos TOKEN

Programando un Bot de Telegram con Python

Vamos a ampliar las opciones de nuestro Bot a través de la programación, hay muchas librerías gratis en internet, vamos a utilizar una que es muy cómoda y sencilla de usar en Python, aunque los bots se pueden programar en cualquier lenguaje de programación siempre y cuando se integre su API.

Instalamos la librería en Python Telebot para Telegram

pip3 install pyTelegramBotAPI

Puedes usar estas rutas para validar los datos de tu bot y los grupos a los cuales está asociado. Esto es muy importante, ya que a veces los bot no funcionan como no están correctamente configurados, por ejemplo no tienen permiso de escribir en grupos, etc.

https://api.telegram.org/bot<TU_TOKEN>/getMe
https://api.telegram.org/bot<TU_TOKEN/getUpdates

lo primero que hacemos en instanciar el bot con el TOKEN de seguridad que nos proporciono el BotFather

import telebot # Importamos las librería
TOKEN = "TU_TOKEN" # Ponemos nuestro Token generado con el @BotFather
bot = telebot.TeleBot(TOKEN)  #Creamos nuestra instancia "bot" a partir de ese TOKEN

La siguiente rutina le permite al bot permanecer en espera, cuando sea llamado a través de los comandos /start o /help el bot respondera al usuario con el mensaje «¿Me ha llamado maestro?»

@bot.message_handler(commands=['start', 'help'])
def send_welcome(message):
	bot.reply_to(message, "¿Me ha llamado maestro?")

@bot.message_handler(func=lambda message: True)
def echo_all(message):
	bot.reply_to(message, message.text)

bot.polling()

Otra prueba que podemos hacer es enviar un mensaje a un grupo en donde hayamos agregado a nuestro bot, para ello nos hará falta saber el chat_id del grupo origen. Para ello usaremos estos métodos

user = bot.get_me()
print(user)
#Es equivalente a esto 
#https://api.telegram.org/bot<TU_TOKEN>/getMe

# Saber información de los grupos del Bot
updates = bot.get_updates()
print(updates)
#Es equivalente a esto 
#https://api.telegram.org/bot<TU_TOKEN/getUpdates

Ya con el numero del CHAT_ID, podemos llamar al método para enviar mensajes de la siguiente manera:

chat_id = "-237232674"
bot.send_message(chat_id, "Me copio de tu texto")

Estos son algunos de los métodos que podemos usar con Telebot para poder interactuar con los bot creados en Telegram, hay muchos más, por ejemplo poder enviar imagenes, audios, crear encuestas, crear teclados en pantalla para poder interactuar con preguntas y respuestas al bot, esto ultimo se logra a través del uso de su WebHooks.

Esto es sólo la punta del iceberg si tenemos en cuenta que los Bots ofrecen una fuente casi infinita de posibilidades. Son solo conocimientos básicos y los primeros pasos para hacer un bot a nivel PRO.

Si te ha gustado deja tus comentarios y compártelo en tus redes sociales.

2 respuestas a «Crea tu propio Bot para Telegram usando Python.»

  1. Excelente información.
    Me gustaría saber como programar un flujo de pasos dentro del bot con python. Si pudieras hacer un tutorial de esto, seria genial.

    Saludos!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *