¿Y si pudieras hablarle a tu billetera como le hablas a un amigo? Conectar tu aplicación con Telegram convierte tu app en un asistente conversacional al que le mandas notas de voz, fotos de tickets o preguntas rápidas sin abrir el navegador. La clave está en reutilizar el asistente que ya creamos y abrirle una nueva puerta de entrada.
¿Por qué usar Telegram como puerta de entrada a tu app?
La idea no es construir un asistente nuevo ni inventar reglas. Es reutilizar el mismo que armaste en la clase ocho y dejar que Telegram se encargue solo de recibir el mensaje.
Piensa en tu aplicación como un restaurante. El frontend es el comedor donde los clientes ven el menú y piden. El backend es la cocina donde se prepara todo. Los clientes nunca entran a la cocina.
Ahora imagina que quieres recibir pedidos por teléfono, no solo en el comedor. Necesitas un número específico que conecte directo con la cocina. Ese número, en el mundo del software, se llama webhook [02:00].
¿Qué es un webhook? Es una dirección pública donde servicios externos como Telegram envían información directamente a tu backend. Funciona como un teléfono que conecta el mundo exterior con la cocina de tu aplicación.
¿Cómo identifica tu app a cada usuario de Telegram?
Cuando alguien te escribe por Telegram, el mensaje viaja al webhook. Tu aplicación identifica al remitente con el chat ID, que es el identificador único de cada conversación.
Luego revisa si ese chat está vinculado a una cuenta de Firebase, que es donde vive tu base de datos. Solo cuando hay vínculo, el mensaje se procesa.
La relación clave es esta: chat ID de Telegram vinculado con el user ID de tu app. Así, cada mensaje cae en la cuenta correcta y nadie ve información ajena.
Hay dos detalles que no puedes omitir:
- El token del bot, que es la llave que Telegram usa para identificar tu bot. Vive como secreto.
- El chat de Telegram, que tiene que vincularse primero con tu cuenta de Firebase.
¿Cómo preparas el backend antes de conectar Telegram?
Telegram no puede depender del navegador. Si va a hablar con tu billetera, necesita un backend que reciba el mensaje y converse con Gemini desde el servidor [03:30].
Por eso vamos por partes. Primero resolvemos el servidor y Gemini. Después abrimos la puerta a Telegram.
Cuando llamas a Gemini desde el navegador, AI Studio puede usar un proxy y un valor de ejemplo. Imagina ese proxy como una puerta. Lo que estamos haciendo es mover esa puerta al servidor, donde una variable secreta guarda la llave real.
¿Qué endpoints necesita el servidor?
Para dejar la base lista, le pedimos a Google AI Studio crear dos endpoints fundamentales:
- API Health: una URL para verificar que el servidor responde correctamente.
- API Chat: el endpoint donde el frontend envía los mensajes al backend para que lleguen al asistente.
- Una regla estricta: el navegador solo habla por ese endpoint, y solo el servidor puede hablar con Gemini.
La cuarta pieza es la variable secreta. Usamos el Platzi Gemini API Key y nunca el Gemini API Key genérico. El modelo a veces inventa ejemplos, así que hay que pedirle de forma explícita que use la llave real.
¿Por qué guardar el API Key como secreto? Porque si vive en el navegador, cualquiera puede verlo y usarlo. Como secreto en el servidor, queda protegido y solo tu backend puede leerlo.
¿Cómo creas un bot de Telegram paso a paso?
Una vez que el servidor responde y el API Chat funciona con la llave de Platzi, toca crear el bot. Para esto usamos BotFather, el bot oficial de Telegram para crear otros bots [09:00].
Los pasos son simples:
- Abre la URL
telegram.me/botfather y dale clic en Iniciar.
- Escribe el comando para crear un nuevo bot y elige un nombre, por ejemplo Mi Platzi Billetera.
- Define un username único. Si está tomado, prueba variantes como
RafaPlatzi202601Bot.
- Guarda el token que BotFather te entrega. Esa es la llave del bot.
¿Dónde guardar el token del bot?
El token nunca debe quedar expuesto. Vuelve a Google AI Studio, entra a Configuraciones, abre la sección de Secrets y crea uno nuevo llamado Telegram bot token. Pega el valor y aplica los cambios.
Los nombres de las variables secretas los inventas tú. Lo importante es que el prompt que le diste al modelo use exactamente el mismo nombre de variable. Si hay desajuste entre el prompt y el secreto, nada funciona.
Un detalle que vale la pena recordar: cada vez que le das un prompt vago a Google AI Studio, el modelo termina inventando cosas que nunca pediste. La única forma de llegar a una integración limpia con Telegram es darle una lista de pasos muy bien definida. Tú diriges, el modelo ejecuta.
¿Ya creaste tu bot? Cuéntame en los comentarios qué nombre le pusiste y si BotFather te lo aceptó a la primera.