Importación y Sincronización de Datos
Cómo Importar y Sincronizar Datos desde Moodle Una de las funcionalidades principales de MoodleManagement es la importación de datos desde Moodle hacia FacturaScripts. Esta guía explica cómo importar usuarios, cursos, categorías, cohorts y roles, y cómo funciona la sincronización continua.
Importar usuarios La importación de usuarios crea un mapeo entre un usuario de Moodle y un contacto de FacturaScripts. Si el contacto no existe, se crea automáticamente.
Importación masiva:
- Acceda a Gestión Moodle > Usuarios Moodle
- Haga clic en el botón "Importar Usuarios"
- Seleccione la instancia Moodle de origen
- El sistema consulta la API de Moodle y obtiene la lista de usuarios
- Se muestra un listado con los usuarios disponibles para importar (excluye los ya mapeados)
- Confirme la importación
- Por cada usuario importado, el sistema:
- Busca un contacto en FS por email coincidente
- Si no existe, crea un nuevo contacto con los datos de Moodle (nombre, apellido, email, ciudad, país)
- Crea un nuevo cliente si el contacto no tiene uno asociado
- Crea el registro de mapeo MoodleUserMap vinculando ambos
Importación individual:
- Acceda a Gestión Moodle > Usuarios Moodle
- Haga clic en "+ Nuevo"
- Seleccione la instancia, introduzca el moodle_userid o busque por email/nombre
- Seleccione o cree el contacto de FS destino
- Guarde
Importar cursos La importación de cursos crea un mapeo entre un curso de Moodle y un producto de FacturaScripts.
- Acceda a Gestión Moodle > Cursos Moodle
- Haga clic en "Importar Cursos"
- Seleccione la instancia Moodle
- El sistema obtiene la lista de cursos disponibles
- Por cada curso importado, el sistema puede:
- Crear un producto en FS con el nombre y descripción del curso
- Crear una familia de productos basada en la categoría del curso
- Vincular el producto con el curso Moodle
- Sincronizar la imagen de portada del curso como imagen del producto
Importar categorías de cursos
- Las categorías organizan los cursos en Moodle y se mapean con familias de productos en FacturaScripts.
- Acceda a Gestión Moodle > Categorías
- Haga clic en "Importar Categorías"
- Seleccione la instancia
- El sistema importa el árbol completo de categorías respetando la jerarquía
Importar cohorts
- Las cohorts son agrupaciones de usuarios en Moodle, útiles para matricular grupos enteros en cursos.
- Acceda a Gestión Moodle > Cohorts
- Haga clic en "Importar Cohorts"
- Seleccione la instancia
- Se importan las cohorts con sus datos básicos
- Para importar los miembros de cada cohort, haga clic en "Sincronizar Miembros" en el detalle de cada cohort
Importar roles Los roles definen los permisos de los usuarios en Moodle (estudiante, profesor, manager, etc.).
- Acceda a Gestión Moodle > Roles
- Haga clic en "Importar Roles" para la instancia deseada
- Se importan los 8 roles estándar de Moodle: Manager, Course Creator, Teacher, Non-editing Teacher, Student, Guest, Authenticated User, Authenticated User on Frontpage
Sincronización continua Una vez importados los datos iniciales, MoodleManagement mantiene la información actualizada de dos formas:
-
Sincronización automática (cron):
- Cada 6 horas, el sistema consulta Moodle para detectar cambios en usuarios y cursos
- Los registros modificados se actualizan automáticamente en FS
- Los nuevos registros NO se importan automáticamente (solo se sincronizan los ya mapeados)
-
Sincronización manual:
- En el listado de usuarios o cursos, puede hacer clic en "Sincronizar" para actualizar un registro individual
- El botón "Sincronizar Todo" actualiza todos los registros mapeados de la instancia seleccionada
-
Sincronización bidireccional (workers):
- Cuando modifica un contacto en FS que está mapeado con un usuario Moodle, el ContactSyncWorker actualiza automáticamente los datos en Moodle (nombre, apellido, email, ciudad, país)
- Esta sincronización es inmediata (no espera al cron)
Gestión del contenido de cursos Una vez importado un curso, puede gestionar su contenido (secciones y actividades) directamente desde FacturaScripts:
- Ver todas las secciones y actividades del curso en tiempo real
- Crear nuevas secciones
- Mostrar/ocultar secciones y actividades
- Mover actividades entre secciones
- Duplicar actividades
- Eliminar secciones y actividades
- Cambiar la indentación de actividades
- Cambiar el modo de grupo de actividades (sin grupos, grupos separados, grupos visibles)
- Activar el modo stealth (solo enlace) en actividades
- Realizar acciones masivas seleccionando múltiples elementos
- Ver el detalle completo de un módulo/actividad en un modal
Todas estas operaciones se ejecutan en tiempo real a través de la API de Moodle. Los cambios se reflejan inmediatamente en la plataforma.