Problema
Grupo IOE / UNADE gestiona su formación en Moodle, pero la operativa real vive en Zoho CRM: matrículas, leads y materiales almacenados en WorkDrive. Sin un puente entre ambos, cada alta de curso, cada recurso y cada seguimiento de alumno exigía trabajo manual y duplicado, con riesgo de incoherencias entre el CRM y el campus.
Solución
Diseñé e implementé local_ioe, un plugin local de Moodle que centraliza toda la integración. Construí 15 web services para crear y actualizar de forma remota secciones, recursos, SCORM, etiquetas, carpetas y foros, además de consultar notas y primer acceso. Desarrollé un conector a Zoho WorkDrive con autenticación OAuth y cacheo del token de acceso (reutilizado 59 minutos) para descargar materiales directamente al almacenamiento de Moodle. Añadí hooks de la API de salida de Moodle 4.5+ y scripts Deluge que disparan las altas desde el propio CRM. Todo siguiendo el estándar Moodle: capacidades, PHPDoc, provider de privacidad y licencia GPL v3.
Resultado
El plugin está en producción (v1.0.0) y actúa como capa única de integración Moodle↔Zoho CRM. Permite orquestar el ciclo de vida de los cursos desde el CRM y automatiza el seguimiento de alumnos mediante una tarea programada diaria que envía mensajes escalonados según los días transcurridos, con umbrales y plantillas configurables desde el panel de administración.