Telegram bots en golang

¡Hola nómadas!

Aquí os traemos una serie de entradas para que podáis realizar tareas con los bots de Telegram. Para quien no conozca telegram haré una pequeña introducción.

¿Qué es Telegram?

Telegram es un sistema de mensajería instantánea como lo es Whatsapp o Signal. Lo interesante de Telegram es la versatilidad que ofrece para crear grupos, canales, chats secretos y lo que nos incumbe en esta serie de entradas, los bots. Los bots son programas que interactúan con Telegram mediante la API que nos ofrece Telegram.

Vamos a dividir el contenido en varias entradas para que sea mucho más cómodo.

Los Bots

Lo primero que tenemos que saber del mundo de los bots de Telegram es que hay un bot “para gobernarlos a todos” y éste es @BotFather. Para poder crear nuestro bot debemos de hablar con el @BotFather, pero antes de hablar con él, vamos a contar un poco que podemos hacer con un bot.

La verdad que el uso que se le puede dar a un bot es casi infinito, podríamos decir que el límite está en tu imaginación.

Bots de ejemplo

@ImageBot
Un bot al que le puedes pedir imágenes de cualquier cosa. Su uso es muy sencillo: sólo tienes que abrirle un chat y escribir /get seguido de la palabra clave relacionada con lo que estés buscando. También puede localizar GIFs animados con el comando /getgif.

Te puede interesar  Go con Gin, el mega tutorial (VII)

@AlertBot
Un bot que puedes programar para que te envíe un mensaje determinado a una hora concreta, a modo de recordatorio.

@BabelgramBot
Un bot que puedes usar para traducir texto utilizando la API del traductor de Google. Hay que recalcar que no se trata de un Bot oficial de Google. Para traducir texto tan solo envía un mensaje con el siguiente formato: `@BabelgramBot [idioma] [idioma] [texto]`.

Crar nuestro Bot

Estos son algunos ejemplos de bots ya públicos, pero ¿qué pasa si nuestra idea no está diseñada en los bots públicos? Básicamente que tenemos que programarnos nuestro propio bot, además, siempre que podamos y tengamos la capacidad, recomendamos desde cibernomadas programarse el bot uno mismo. Así toda la información que pasa por el bot queda controlada por nosotros y no por un tercero.

Bueno, ahora que ya sabemos para qué nos puede ser útiles los bots vamos a crear nuestro primer bot. El proceso es sencillo, pero lo dividiremos en dos partes, la primera será como hablar con el @BotFather y la segunda como programar el bot.

Para hablar con el @BotFather es tan sencillo como buscarlo en la barra para buscar chats de Telegram a haciendo clic en el siguiente enlace @BotFather (https://t.me/botfather).

@BotFather en Telegram

Lo primero que veremos es un botón para iniciar el bot donde de normal está la barra para escribir el mensaje. Si no apareciera el botón que comento, tan solo sería necesario enviarle al bot el mensaje `/start`. Realmente se trata de un comando (lo veremos más adelante).

Comando /start

Como se puede ver después de enviarle el comando `/start` al @BotFather nos muestra un mensaje con instrucciones para interactuar con el mismo.

Te puede interesar  Go con Gin, el mega tutorial (II)

Primer comando para el @BotFather

Si os fijáis el mensaje contiene texto, pero también contiene una especie de enlaces y que casualmente todos empiezan por `/`, pues bien, esos enlaces son realmente comandos. Los comandos son unos mensajes especiales que el bot entiende y con los que podemos interactuar con los bots. Esto lo entenderemos mejor cuando empecemos a programar el bot, de momento centrémonos en crearlo.

Comando /newbot

Siguiendo los comandos que nos ofrece el @BotFather haremos clic en /newbot. Este comando inicia el proceso de creación del bot y para ello nos solicitará alguna información básica necesaria para configurar el bot.

Solicitando un nuevo Bot

Completar proceso del @BotFather

En este punto @BotFather nos pide que le demos un nombre para nuestro bot. En nuestro caso queremos llamar al bot cibernomadas.

Nombre de nuestro Bot

El siguiente paso es dar un nombre por el que se pueda nombrar al bot, en realidad es dar el nombre de usuario o username. El nombre de usuario para los bots tiene una peculiaridad y es que necesita que el nombre termine con bot. Puede ser nombreBot o nombre_bot. Nosotros en cibernomadas hemos elegidos la segunda nomenclatura y le hemos dicho al @BotFather que el username de nuestro bot es cibernomadas_bot.

Registro completado

Como podéis ver en la imagen anterior una vez indicado el nombre de usuario de nuestro bot el @BotFather nos responde con un mensaje de felicitación y nos da un token de acceso a la API. Este token lo usaremos en los siguientes posts, de momento guardadlo (bueno @BotFather se encarga de ello).  El token es privado y no debe compartirse, aunque se puede regenerar un nuevo token en caso de perder el actual o de publicarlo accidentalmente en algún sitio.

Te puede interesar  Go con Gin, el mega tutorial (IV)

Nuestro Bot

Ahora podemos hablar con nuestro Bot desde la dirección https://t.me/<nombre del bot>. En nuestro caso podremos hablar con el Bot desde la dirección https://t.me/cibernomadas_bot.

Hablando con el Bot por primera vez

Si iniciáis vuestro Bot veréis que el primer comando que se envía es /start y no responderá nada y es lógico, pues no hemos implementado el código del Bot para poder interactuar con él todavía.

Con esto llegamos al final del post de hoy. Hemos aprendido a registrar bots de Telegram mediante @BotFather. En las próximas entregas veremos cómo programar el bot.

¡Hasta la próxima!

Telegram bots en golang
Etiquetado en:         

Deja un comentario

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