Problema
Grupo IOE / UNADE imparte muchas sesiones en directo por Zoom dentro de Moodle, y el módulo estándar mod_zoom obliga a crear cada videoconferencia a mano, una por una, dentro de cada curso. Con decenas de sesiones programadas por los coordinadores cada periodo, ese alta manual era lenta, repetitiva y propensa a errores: fechas mal puestas, sesiones en el curso equivocado o profesores mal asignados. Además, el control de asistencia de serie no encajaba con cómo UNADE necesita justificar la participación real, sobre todo cuando alguien entra a Zoom con un nombre que no coincide con su cuenta de Moodle.
Solución
Partí del módulo oficial mod_zoom y construí un fork propio, mod_zoomioe, manteniendo la integración con la API de Zoom y añadiendo encima una cola de videoconferencias (vc_queue). La pieza central es una tabla nueva y un modelo que resuelve el curso por ID o por idnumber, calcula la duración a partir de las horas de inicio y fin, y valida cada fila con una máquina de estados (borrador, pendiente, en cola, creada, error). El coordinador sube un CSV con las sesiones del periodo, las revisa en una tabla con filtros y lanza la creación en bloque: una tarea adhoc da de alta cada actividad Zoom, registra el resultado por fila y envía un correo resumen con los enlaces. Añadí además páginas propias de asistencia y de gestión de participantes para reasignar entradas de Zoom a usuarios reales de Moodle.
Resultado
Un módulo de actividad completo y estable en uso real en la plataforma de UNADE. Lo que antes era crear las videoconferencias una a una pasa a ser subir un CSV, revisar y pulsar un botón, con estados claros y trazabilidad de errores fila a fila. Sobre las 10 tablas y las 23 páginas heredadas de mod_zoom, la capa vc_queue (unas 2.300 líneas nuevas, bilingüe ES/EN) aporta el alta masiva y el control de asistencia que el módulo estándar no cubre, todo protegido por una capacidad propia para que solo los gestores operen la cola.