Academia Deltamontero · Documentación
Arquitectura

Integraciones

Servicios externos con los que se conecta la Academia - YouTube, Cloudflare (R2 y proxy), Office 365, Groq, PowerBuilder y la app móvil.

Resumen

IntegraciónEstadoDirecciónDetalle
YouTubeEn usoNavegador → YouTube; servidor → YouTube (comprobación)Videos embebidos en mod_interactivevideo
Cloudflare R2 (videos)En uso según docs/drp.mdPor confirmarAlojamiento de videos fuera del servidor
Cloudflare (proxy y DNS)Planificado (hoy la Academia se usa en la red interna, en http://192.168.0.192)Usuarios → Cloudflare → servidorVer Infraestructura
Office 365 (SMTP)Configurado en producciónServidor → smtp.office365.com:587Ver Correo
GroqEn usoServidor → api.groq.comVer Inteligencia artificial
Cliente MCP externoDisponibleCliente → /webservice/mcp/server.phpVer Inteligencia artificial
PowerBuilderPendientePor definirSolo se guarda el código de documento de cada tema
App Moodle MobilePrevistaApp → servicios web REST sobre HTTPSConfiguración del servicio móvil Por confirmar
DifyPlanificada (Fase 5)Moodle → Dify → proveedor LLMNo desplegada

YouTube

  • Los cerca de 400 videos de capacitación de la empresa son videos no listados de YouTube. Está prohibido alojarlos en el servidor interno (política de respaldo).
  • Se insertan con actividades de mod_interactivevideo (tipo YouTube), que permiten agregar interactividad sobre el video. El constructor de módulos (local_deltamodules\builder) normaliza el enlace y crea siempre actividades de este tipo.
  • Completado: la actividad se marca "Hecho" al ver el video hasta el final. Para el usuario, el reproductor se muestra en modo sin distracciones, sin herramientas de autor y sin confeti al terminar (parche).
  • Comprobación de disponibilidad: la revisión de módulos (local_deltamodules\health, página de revisión de módulos) consulta el servicio oEmbed de YouTube para cada video. Un video eliminado, privado o que no permite insertarse nunca llega al final, así que nadie podría completarlo. Requiere salida del servidor a www.youtube.com.
  • El inventario de temas con sus enlaces vive en docs/modules-info/academia_dm_contenido.json. El README.md registra un chequeo del 2026-08-26: de 128 videos, 122 disponibles y 6 caídos (5 eliminados y 1 privado), pendientes de volver a subir o corregir en el canal de la empresa.

Las URL del inventario son mixtas: YouTube, Google Drive (PDF), TikTok, un blog externo y el SRI. Algunos temas no tienen enlace todavía.

Cloudflare R2

docs/drp.md indica que parte de los videos están alojados en Cloudflare R2 (fuera del servidor y fuera del respaldo) y que la cuenta usada para los videos es personal y debe migrarse a una cuenta de la empresa.

R2 es también el destino recomendado para la copia externa cifrada de los respaldos (bucket previsto delta-lms-backups, con un token de API limitado a ese bucket), pendiente de configurar.

Por confirmar:

  • Qué videos están en R2 y cómo se insertan en las actividades (el código del repositorio solo crea actividades de YouTube).
  • La fecha y el responsable de la migración de la cuenta de R2 a la empresa.

Office 365

Correo saliente de la Academia con la cuenta info@deltamontero.com por SMTP autenticado (puerto 587, STARTTLS). Requisitos del lado de Microsoft 365: SMTP AUTH activo en el buzón y que ninguna política de acceso condicional por ubicación o IP bloquee el inicio de sesión del servidor. Detalle en Correo.

Groq

Proveedor de IA del chat por su API compatible con OpenAI, con la clave en GROQ_API_KEY. Detalle, modelos y frontera de datos en Inteligencia artificial.

PowerBuilder

Deltamontero tiene un sistema de gestión heredado en PowerBuilder, con una base de datos por empresa cliente. Cada video o tema de la Academia tiene un código de documento de ese sistema (por ejemplo G-3-OP-01-GE-01002), que funciona como identificador único del contenido.

Lo que existe hoy:

  • El código PowerBuilder se guarda junto a cada tema en el inventario y se usa al crear módulos (columna "Código PowerBuilder", opcional, en la plantilla de importación).

Lo que está pendiente:

  • La integración entre sistemas. El protocolo (HTTP/REST o COM+/DCOM) no está definido; la sincronización por VPN la maneja el equipo de TI.

App Moodle Mobile

La app oficial de Moodle consume los servicios web REST sobre HTTPS; no necesita WebSockets para las funciones básicas (el chat de IA podría necesitarlos para respuestas en streaming).

Cuidados documentados para el proxy: no comprimir las respuestas JSON, no modificar la cabecera Authorization y dar tiempos de espera generosos para subir archivos.

Por confirmar: en moodle-config.sh se activan los servicios web y los protocolos rest y mcp, pero no se configura explícitamente el servicio de la app móvil (enablemobilewebservice). Su estado en producción y si la app forma parte del alcance de esta entrega deben verificarse. El tema theme_boost_union no afecta a la app, que tiene su propia interfaz.

Empresas cliente

No es una integración técnica con otro sistema, sino un canal de acceso externo: cada empresa cliente es una cohorte (cli_*) con módulos asignados por matrícula de cohorte y un código de registro con vencimiento y número de usos. Una tarea diaria suspende a los usuarios de las empresas cuyo acceso venció. Ver Roles y permisos.

En esta página