SIU-Guarani/version3.21.0/interfaces/moodle
Sumario
- 1 Interfaz SIU-Guaraní - Moodle
- 1.1 En Moodle
- 1.1.1 Habilitar Servicios Web
- 1.1.2 Habilitar el protocolo REST
- 1.1.3 Crear un nuevo servicio
- 1.1.4 Agregar funciones para el servicio creado en el punto 3 (hacer click en el link marcado en violeta)
- 1.1.5 Definir un rol para los Servicios Web
- 1.1.6 Asignarle el rol creado en el punto 5 al usuario Administrador
- 1.1.7 Crear un token para el usuario creado en el punto 6
- 1.1.8 Habilitar la Depuración para desarrolladores
- 1.1.9 Configurar las directivas de PHP max_input_vars y post_max_size
- 1.1.10 Probar que funcionen los Servicios Web
- 1.1.11 Configurar login vía Single Sign-On (SSO) en Moodle
- 1.2 En SIU-Guaraní Gestión
- 1.3 Consideraciones
- 1.1 En Moodle
Interfaz SIU-Guaraní - Moodle
NOTA: SIU-Guaraní 3.21 se probó con Moodle desde 3.4 a 4.0, no se garantiza de que funcione correctamente con otras versiones de este último.
Si ya disponemos de una instalación de Moodle con usuarios que ya están haciendo uso de dicha instalación, entonces ver Vinculación de usuarios con Moodle.
En Moodle
Aquí veremos como configurar para que Guaraní se comunique con Moodle.
Antes de comenzar con los pasos debemos instalar el Plugin Roles WS Plugin (SIU), el mismo fue desarrollado por el SIU y permite obtener los roles de Moodle vía Web Service. Lo podemos descargar desde el siguiente link, e instalarlo en Administración del sitio => Extensiones => Instalar Complementos (subdivisión "Extensiones") => Instalar complemento desde un archivo ZIP
Seleccionar el archivo .zip y continuar (luego hacer click en el botón que dice "Actualizar base de datos Moodle ahora").
Habilitar Servicios Web
Habilitar el protocolo REST
Crear un nuevo servicio
La opción Habilitado debe estar marcada, de lo contrario la opción Únicamente usuarios autorizados debe estar desmarcada.
Agregar funciones para el servicio creado en el punto 3 (hacer click en el link marcado en violeta)
Se deben agregar las siguientes funciones que Guaraní requiere para comunicarse con Moodle:
- core_webservice_get_site_info
- core_course_get_categories
- core_course_get_courses
- core_course_get_courses_by_field
- core_enrol_get_enrolled_users
- core_enrol_get_users_courses
- core_user_create_users
- core_user_update_users
- enrol_manual_enrol_users
- enrol_manual_unenrol_users
- core_course_create_courses
- core_course_import_course
- core_user_get_users
- local_user_get_roles
- core_group_create_groups
- core_group_add_group_members
- core_group_delete_groups
Definir un rol para los Servicios Web
Ir a Administración del sitio => Usuarios => Definir roles, luego crear un nuevo rol para Servicios web (Continuar con Ningún rol en la opción Usar rol o arquetipo).Asignarle el rol creado en el punto 5 al usuario Administrador
Ir a Administración de sitio => Usuarios => Asignar roles de sistema (Subdivisión "Permisos"). Luego asignar el rol creado en el punto 5.
Crear un token para el usuario creado en el punto 6
Ir a Administración => Servidor => Servicios Web => Administrar fichas (tokens) => Crear ficha. Elija el usuario Administrador y el servicio creado en el punto 3.Habilitar la Depuración para desarrolladores
Ir a Administración del sitio => Desarrollo => Depuracion (debugging), luego en el combo Mensajes de depuración elegir el valor DESARROLLADOR: mensajes extra de depuración Moodle para desarrolladores.Configurar las directivas de PHP max_input_vars y post_max_size
Si se va a trabajar con un gran volumen de alumnos/docentes por comisión/curso, se recomienda el incremento de las directivas de PHP max_input_vars y post_max_size, ubicadas en el archivo "php.ini".
Probar que funcionen los Servicios Web
Una vez creado el token, lo podemos obtener en la pantalla Administrar tokens.Para probar que todo funcione bien acceder a la siguiente URL: <URL-MOODLE>/webservice/rest/server.php?wstoken=<TOKEN>&moodlewsrestformat=json&wsfunction=core_webservice_get_site_info.
Donde <URL-MOODLE> es la URL base de la instalación de Moodle, ej: http://www.ejemplo.edu.ar/moodle.
Y <TOKEN> seria el recién creado, en nuestro ejemplo seria 9d27d581881b1cfed9f0d644540ab044.
Dicho Servicio Web debería devolver un JSON con información de Moodle. En caso de dar error, revisar los pasos anteriores.
Configurar login vía Single Sign-On (SSO) en Moodle
Para que los usuarios de Guaraní se puedan loguear automáticamente en Moodle, se deben seguir los siguientes pasos.
En SIU-Guaraní Gestión
Ir a la operación Administrar Configuración del Sistema, y crear una nueva Plataforma de Educación Virtual.
Datos Principales
Datos a completar:
- Nombre: Nombre que va a tener la plataforma.
- Host: Host donde se encuentra la instalación de Moodle, es la URL base. Ej: http://www.ejemplo.edu.ar/moodle.
- Activa: Si la plataforma esta activa o no.
- URL: Segmento de la URL de Moodle donde se encuentran los Servicios Web. Para Moodle 3.4.1 es /webservice/rest/server.php.
- Usuario: Usuario de Moodle. Puede ser cualquier texto, solo a modo descriptivo.
- Token: Es el token que creamos previamente. Ej: 9d27d581881b1cfed9f0d644540ab044.
- Responsables Académicas: Responsables Académicas que van a hacer uso de dicho Moodle.
Se puede hacer click en el botón Probar Configuración para saber si los valores son correctos y se pudo conectar con Moodle.
Roles de Usuarios
Se deben vincular los perfiles de Alumnos y Docentes de Guaraní con los Roles de Moodle.Categorías de Cursos
Aquí se selecciona la categoría por defecto con la que se crearan los cursos en la operación Generar Cursos Virtuales Masivamente.Consideraciones
- Si SIU-Guaraní muestra el error Mensaje Moodle: invalidparameter - Invalid parameter value detected se debe Habilitar la Depuración para desarrolladores para que muestre mas detalles sobre dicho error.
- Las personas de SIU-Guaraní deben tener al menos un email asignado para que se puedan crear los usuarios correspondientes en Moodle.
- El campo usuario de las personas en SIU-Guaraní sólo puede contener caracteres alfanuméricos en minúsculas (letras y números), subrayado (_), guión (-), punto (.) o arroba (@), si contiene otros caracteres mas allá de los mencionados dará error en Moodle.