Misio Profile picture
Padre de la negra 🐾 y 💍 de @JoelAlejandro

May 30, 2021, 18 tweets

Hacer un bot de telegram es tan sencillo que te lo explico en un hilo. Así que agarra fuerte el teléfono y mira este increíble plan de sábado por la noche que les ofrezco; porque ante todo, se que son gente sola 🧵👇🏼

Para arrancar les cuento que voy a hacerlo en NodeJs, pero sepan que pueden hacerlo en cualquier lenguaje que pueda interactuar con una API y se haga respetar.

Capítulo I: Nace un bot 🤖
Tenemos que generar un token (una cadena de texto que nos autoriza el acceso) para la API. Telegram tiene un bot para hacer esto. Contrario a lo que esperarías para el nacimiento de cualquier cosa acá hay que pedirle esta validación a UN TIPO

El tipo es @BotFather, el padre de todos los bot. Lo podes encontrar en la barra de búsqueda de contactos. Con una imagen un poco confusa se ve así:

Ahora vamos a escribirle a esta cuenta al borde del plagio del padrino. Primero ‘/start’ a lo que nos va a responder las acciones posibles y un link al manual de Bot API (si, lo viste, no mires para otro lado abrilo y leelo un poco)

Para crear a nuestro nuevo pequeño amigo vamos a responderle ‘/newbot’, nos va a pedir un nombre y después un nombre para la cuenta (esto último por ahí tengas que intentar muchas veces, los buenos nombres ya los agarraron)

Si lo lograste, y en serio la parte difícil de esta guía es encontrar un nombre disponible, vas a recibir un mensaje como este con el token para usar la API. No compartas esa info porque como decía, es una clave de acceso.

Para ver que el nuevo peque esté bien pueden ir desde el navegador a api.telegram.org/bot<acá va el token>/getMe reemplazando el <acá va el token> por… bueno ¿Qué se imaginan? Y debería verse algo así:

Ahora vamos a escribir código:
Arranquemos creando un proyecto en una carpeta nueva, para esto abrimos la consola en esa ruta y escribimos el mágico: ✨ npm init ✨ Esto nos va a hacer un paso a paso en la creación del proyecto (Pueden dejarlo como esta, pero googleen).

Se nos debería haber creado un archivo package.json dentro de la carpeta con la info que elegimos en el paso anterior. Acá solo vamos a escribir dentro del objeto scripts “start”: “node index.js” para decir desde que archivo arrancar. Quedaría algo así:

De nuevo en la consola vamos a instalar el paquete de telegram para usarlo después escribiendo: npm install --save node-telegram-bot-api
De la misma manera vamos a instalar el paquete fetch que es el que elegí para consultas a terceros: npm i node-fetch

En la misma carpeta vamos a crear el archivo index.js que va a hacerlo todo (para arrancar, cuando avances plantéate una buena separation of concerns).

A continuación voy a mostrar el código con los comentarios que describen qué hacemos así que acá solo voy a escribir las canciones que más me gustan del indio.

Ciudad Baigon, la mejor canción de todos los tiempos.

To beef or not to beef, esta no envejece nunca

Las increíbles andanzas del capitan buscapina

Ahora vamos a la terminal a encender todo esto. Para eso escribimos: npm start así se ejecuta el archivo index. Deberíamos tener algo como esto:

Y si vamos a telegram podemos buscar a nuestro bot recién levantado con las acciones que le hayamos dado.

Share this Scrolly Tale with your friends.

A Scrolly Tale is a new way to read Twitter threads with a more visually immersive experience.
Discover more beautiful Scrolly Tales like this.

Keep scrolling