El Problema
Los despliegues modernos de Moodle rara vez son sistemas aislados; comúnmente se conectan a sistemas ERP, plataformas de analítica y brokers de mensajería. Sin embargo, integrar servicios externos en Moodle genera código frágil y duplicado. Cada plugin implementa su propia lógica de red, la autenticación está dispersa, no hay tolerancia a fallos unificada, y un fallo de conexión externo puede bloquear acciones críticas directas de los usuarios en Moodle.
La Solución
Integration Hub for Moodle™ (MIH) resuelve la dispersión de integraciones proporcionando una capa centralizada construida sobre dos pilares de ingeniería:
- Gateway de Servicios (Capa API): Un componente singleton de PHP que cualquier otro plugin de Moodle puede invocar. Soporta múltiples protocolos de transporte (REST, SOAP, AMQP), inyección automática de tokens de seguridad, circuit breaking nativo que previene sobrecargar servicios caídos, reintentos con temporizador exponencial (backoff) y un registro centralizado de auditoría.
- Event Bridge (Integración No-Code): Un motor asíncrono que intercepta todos los eventos de Moodle y los despacha dinámicamente según reglas UI, sin escribir PHP. Delega la carga enrutando la ejecución hacia Adhoc tasks que no penalizan el hilo general de la request HTTP. Incluye prevención de duplicados, evaluación de condicionales en el payload de los eventos y una Dead Letter Queue (DLQ) integrada para gestionar e inspeccionar interrupciones permanentes.
Diseñado desde el core, el Hub eleva un monolito Moodle tradicional hacia una verdadera arquitectura dirigida por microservicios tolerantes a fallos, utilizando exclusívamente el marco nativo de Moodle.
Si te interesa explorar la documentación técnica completa, con guías de instalación, esquemas de arquitectura, flujos de datos y referencia de clases, te invito a visitar el portal de la documentación técnica. Y para ver más Plugins for Moodle™ de mi autoría, puedes visitar mi catálogo de proyectos.