Ir al contenido

Bot de soporte y reserva de llamadas

Para el equipo de Velora: el bot de soporte de Telegram y el calendario de iCloud de las llamadas.

15 min

Esta guía es para el equipo que gestiona Velora, no para las agencias. Conecta dos cosas: el bot de Telegram que responde a las preguntas desde la página de Soporte, y la página Reservar una llamada enlazada al calendario de iCloud.

Antes de empezar

  • Acceso a las variables de entorno de la app (Railway o Vercel).
  • Telegram en tu móvil.
  • La cuenta de Apple que tiene el calendario «Réunion».

El bot de Telegram

  1. Crea el bot. En Telegram, abre @BotFather, envía /newbot y elige un nombre de usuario que termine en bot, por ejemplo VeloraSupportBot. Copia el token.
  2. Crea el grupo del equipo. Un grupo de Telegram contigo y la asistente, y añade el bot como miembro. El bot solo lee las respuestas a sus propios mensajes: no hace falta hacerlo administrador.
  3. Consigue el id del grupo. Envía un mensaje en el grupo y abre https://api.telegram.org/bot<TOKEN>/getUpdates en tu navegador antes del paso 5. El id empieza por -100.
  4. Rellena las variables. SUPPORT_TELEGRAM_BOT_TOKEN (el token), SUPPORT_TELEGRAM_WEBHOOK_SECRET (el resultado de openssl rand -hex 32), SUPPORT_TEAM_CHAT_ID (el id del grupo) y NEXT_PUBLIC_SUPPORT_TELEGRAM_URL (por ejemplo https://t.me/VeloraSupportBot). ANTHROPIC_API_KEY es opcional: con ella, Claude responde a partir de las guías; sin ella, el bot busca por palabras clave.
  5. Conecta el webhook. Cuando la app esté desplegada de nuevo, lanza el script desde apps/web: ../../packages/db/node_modules/.bin/tsx scripts/support-bot-setup.ts. Pone el webhook con su secreto y el menú de comandos en francés, inglés y español. --check muestra el estado sin cambiar nada.
  6. Prueba. Envía /start al bot y toca «Hablar con una persona». El mensaje llega al grupo: contéstalo con la función Responder de Telegram y la persona recibe tu respuesta. Responde /fin para devolver la conversación al bot.

El calendario de iCloud

  1. Crea una contraseña de aplicación. En appleid.apple.com, abre Inicio de sesión y seguridad, luego Contraseñas de aplicación, y crea una llamada «Velora». No es la contraseña de tu Apple ID.
  2. Rellena las variables. ICLOUD_CALDAV_USER (el correo del Apple ID), ICLOUD_CALDAV_APP_PASSWORD (la contraseña de aplicación) y ICLOUD_CALDAV_CALENDAR (Réunion, el nombre exacto del calendario).
  3. Elige qué bloquea los horarios. Por defecto, solo los eventos del calendario «Réunion» ocupan un horario. Pon ICLOUD_CALDAV_BUSY_CALENDARS=* para tener en cuenta todos tus calendarios, o una lista de nombres separados por comas.
  4. Añade tu enlace de videollamada si tienes uno. BOOKING_MEETING_URL (un enlace https fijo) va en el correo y en el evento.
  5. Prueba. Reserva un horario en /es/reserver-un-appel. La llamada aparece en «Réunion», llega el correo de confirmación con la invitación y el grupo de Telegram recibe el aviso. El enlace de cancelación del correo libera el horario y quita el evento.

Si no funciona

  • El bot no responde → lanza el script con --check: muestra el último error del webhook. Comprueba que el secreto es el mismo en la app y en el script.
  • La respuesta de la asistente no llega → tiene que contestar al mensaje del bot con Responder, no escribir un mensaje nuevo.
  • Ningún horario en la página → el calendario de iCloud no responde o el nombre no coincide. Sin las variables de iCloud, la página funciona solo con las reservas ya hechas.
  • La contraseña de aplicación se ha filtrado → revócala en appleid.apple.com y crea otra.

Enlaces oficiales