H8. Un experimento para ayudarme a… – Telegram Group

H8

H8 fue un bot que hice a finales de 2018 con la intención de experimentar con la arquitectura serverless y la API de Telegram.

Fue un experimento rápido que me entretuvo una buena cantidad de horas.

Diseño

Tenía que escoger una plataforma y no tenía ningún criterio en particular. Sabía que existía Lambda de Amazon y también estaban las ofertas de Microsoft y Google. Entonces, por un thread de Twitter, encontré Apache OpenWhisk.

Cómo el proyecto hacía exactamente lo que quería, lo podía montar en mi ambiente local, y además estaba hecho en Scala, inmediatamente decidí usarlo.

Apache OpenWhisk

OpenWhisk es un proyecto desarrollado por IBM para su plataforma de servicios en la nube que luego donaron a la fundación Apache. Cuenta con las nociones de “Action”, para ejecutar código, y “Trigger” y “Feed” para agendar ejecuciones. También incluye una interface REST para operar la plataforma.

La manera de trabajar es muy sencilla: en mi caso, escribí mis funciones en NodeJS, y ya después de hacer un módulo de npm tuve que comprimir el módulo a un archivo zip. Ya con el archivo zip bastaba con correr algunos comandos de la CLI para habitar el código para ser ejecutado.

Funciones

Hice algunas funciones de servicios que usaba; la idea era hacer una especie de asistente personal combinándolas para después producir un resumen diario en Telegram que fuera interactivo. Si mal no recuerdo, Telegram tenía una un framework de elementos muy bueno para interactuar con el bot.

Hice integraciones con la API de Todoist, Wunderground, Telegram, y otras dos fuentes más para prototipar una especie de registro de transacciones monetarias a partir del scraping de emails de Banorte.

Todoist Tasks Summary

Era una función muy sencilla que usaba la API de Todoist para extraer mi lista de pendientes y hacer un resumen de tareas atrasadas y al corriente.

Weather Forecast Summary

Hacia una llamada a la API de Wunderground para crear un resumen del clima de una determinada zona a partir de unas coordenadas.

Telegram Daily Summary

Era una función que usaba la API de OpenWhisk para invocar las dos funciones anteriores y combinarlas para formar un mensaje en Markdown que sería enviado a H8 por medio de la API de Telegram.

Así se veía un mensaje de H8.

Demencia espacial

Con esas tres funciones me las arregle para hacer más o menos mi prototipo de mi super asistente del futuro. Dejé de lado el proyecto porque me tuve que concentrar en otras cosas pero quien sabe, me quedé con muchas ganas de hacer más cosas con la idea. Quizás algún día vuelva a estar entre trucos sucios y juegos retorcidos.

Detalles para nerds

En mi Github.

Ten articles before and after

11 Tools for Managing Chats and Channels in the Telegram – Telegram Group

¿Cómo hacer un bot exclusivo para ciertos usuarios en Telegram? – Telegram Group

How to schedule recurring messages on Telegram (no code!) – Telegram Group

World Leaders, War & Digital Diplomacy on Telegram – Telegram Group

How Telegram Bots Pose Cyberthreats to Crypto Investors – Telegram Group

️?Celebration of 100,000 members mark in KDG Telegram group ?? – Telegram Group

Understanding Telegram’s ecosystem of far-right channels in the US – Telegram Group

Should I buy fake followers for my NFT/Web3 projects Twitter/Telegram accounts? – Telegram Group

Communication in Times of Russian Invasion: Telegram, Viber or Something Better? – Telegram Group

7 Builders For No-Code Creation of Chatbots in Telegram – Telegram Group