Buenos días a tod@s!
Hoy os vengo a contar una de las funcionalidades que mas me ha llamado la atención de Telegram. Como sabeis, Telegram es un sistema de mensajería instantánea, muy similar a WatsApp, pero con algunas funcionalidades extra, por ejemplo los bots. Transcribiendo de la Wikipedia, un bot es un programa informático, imitando el comportamiento de un humano. Pues bien, vamos a crear uno de esos bots para que nos envíe notificaciones de nuestra infraestructura. Cualquier “cosa” que sea capaz de invocar una URL será capaz de enviarnos notificaciones via Telegram.
Vamos al lío! Lo primero que necesitaremos es “hacernos amigo” del gran BotFather, es el bot que pone Telegram a disposición de los usuarios para crear otros bot.
Con el comando /newbot
arrancaremos el asistente de creación que nos guiará paso a paso
Una vez finalizado, BotFather nos dará un token único con el que podremos acceder vía HTTP a la API de nuestro nuevo bot. Recordemos los datos…
1 |
|
Con la siguiente URL /getUpdates
podremos ver si nuestro bot está up & ready
https://api.telegram.org/bot304017237:AAHpKXZBaw_wOF3H-ryhWl3F3wqIVP_Zqf8/getUpdates
El resultado deberia ser algo similar a este:
1 |
|
De la misma forma que inicialmente hemos buscado el BotFather, ahora podremos encontrar nuestro bot en la búsqueda global e iniciar un chat con él
En cuanto tengamos un chat abierto con nuestro bot, la información del /getUpdates
cambiará
Recordad:
https://api.telegram.org/bot304017237:AAHpKXZBaw_wOF3H-ryhWl3F3wqIVP_Zqf8/getUpdates
La información será similar a esta, y lo mas importante es el ID del chat, en mi caso 6343788
1 |
|
Con la información del token y la del chat_id, ya estaremos en disposición de invocar a nuestro bot vía http, por ejemplo:
https://api.telegram.org/bot304017237:AAHpKXZBaw_wOF3H-ryhWl3F3wqIVP_Zqf8/sendMessage?chat_id=6343788&text=Hello+World
El resultado de la API será algo similar a esto:
1 |
|
Y en nuestro chat, tendremos el mensaje de nuestro bot :)
Por cierto, que casi se me olvida, a parte de crear nuevos bots, el BotFather nos puede ayudar a customizar nuestros bots, como por ejemplo, asignándoles una imagen de perfil
Y ya tendríamos foto de perfil para nuestro bot :)
Con todo esto, ya queda a la imaginación de cada uno ver que uso le podemos dar a nuestro bot. Por ejemplo, los usos mas comunes que yo le estoy dando son:
- Alertas del sistema de monitorización (PRTG, Zabbix, Nagios)
- Alertas del propio vCenter
- Scripts que se ejecutan periodicamente en nuestro crontab y/o tareas programadas de windows
- …
¿Y a vosotros, que utilidad se os ocurre?
Un saludo
Miquel.