Diferencia entre revisiones de «SIU-Guarani/version3.21.0/interfaces/moodle»

De SIU
Saltar a: navegación, buscar
 
Línea 11: Línea 11:
 
<big>Aquí veremos como configurar para que '''Guaraní''' se comunique con '''Moodle'''.</big>
 
<big>Aquí veremos como configurar para que '''Guaraní''' se comunique con '''Moodle'''.</big>
  
<big>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 [https://gitlab.siu.edu.ar/guarani/moodle-local_user/-/archive/1.0.0/moodle-local_user-1.0.0.zip el siguiente link], e instalarlo en ''Administración del sitio => Extensiones => Instalar módulos externos'' (luego hacer click en el botón que dice "Actualizar base de datos Moodle ahora").</big>  
+
<big>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 [https://gitlab.siu.edu.ar/guarani/moodle-local_user/-/archive/1.0.0/moodle-local_user-1.0.0.zip el siguiente link], e instalarlo en ''Administración del sitio => Extensiones => Instalar Complementos (subdivisión "Extensiones") => Instalar complemento desde un archivo ZIP ''</big>  
  
<big>Se puede ver una '''vista general''' de los pasos ingresando en el siguiente apartado de la instalación de '''Moodle''': ''Administración del sitio => Extensiones => Servicios Web => Vista General''</big><gallery widths="1227" heights="689">
+
<gallery widths="1015" heights="500">Archivo:Moodle - Instalar modulos externos.png | Moodle - Instalar módulos externos</gallery>
Archivo:Servicios Web Moodle - Vista General.png|Moodle - Vista General Servicios Web</gallery>
+
 
 +
<big>Seleccionar el archivo .zip y continuar (luego hacer click en el botón que dice "Actualizar base de datos Moodle ahora").</big>
 +
 
 +
<gallery widths="690" heights="500">Archivo:Moodle - Seleccionar archivo(modulo externo).png | Moodle - Instalar módulos externos - Selección de archivo</gallery>
 +
 
 +
<big>Se puede ver una '''vista general''' de los pasos ingresando en el siguiente apartado de la instalación de '''Moodle''': ''Administración del sitio => Servidor => Vista General (subdivisión "Servicios Web")''</big><gallery widths="1227" heights="689">
 +
Archivo:Moodle - Vista_general 4.0.png|Moodle - Vista General Servicios Web</gallery>
 
<span id="habilitar_servicios_web"></span>
 
<span id="habilitar_servicios_web"></span>
 
<big>[[#habilitar_servicios_web|1) Habilitar '''Servicios Web''']]</big>
 
<big>[[#habilitar_servicios_web|1) Habilitar '''Servicios Web''']]</big>
Línea 46: Línea 52:
 
* <big>core_user_get_users</big>
 
* <big>core_user_get_users</big>
 
* <big>local_user_get_roles</big>
 
* <big>local_user_get_roles</big>
 +
* <big>core_group_create_groups</big>
 +
* <big>core_group_add_group_members</big>
 +
* <big>core_group_delete_groups</big>
  
 
<span id="definir_rol_servicios_web"></span>
 
<span id="definir_rol_servicios_web"></span>
 
<big>[[#definir_rol_servicios_web|5) Definir un rol para los '''Servicios Web''']]</big>
 
<big>[[#definir_rol_servicios_web|5) Definir un rol para los '''Servicios Web''']]</big>
  
<big>Ir a ''Administración del sitio => Usuarios => Definir roles'', luego crear un nuevo rol para '''Servicios web'''.</big><gallery widths="1220" heights="786">
+
<big>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'').</big><gallery widths="1220" heights="586">
Archivo:Moodle - Definir roles.png|Moodle - Definir roles
+
Archivo:Moodle - Rol Servicios web 4.0.png|Moodle - Definir roles
 
</gallery>
 
</gallery>
  
Línea 67: Línea 76:
 
<span id="asignar_rol_creado"></span>
 
<span id="asignar_rol_creado"></span>
 
<big>[[#asignar_rol_creado|6) Asignarle el rol creado en el '''punto 5''' al usuario '''Administrador''']]</big><br>
 
<big>[[#asignar_rol_creado|6) Asignarle el rol creado en el '''punto 5''' al usuario '''Administrador''']]</big><br>
<big>Ir a  ''Administración de sitio => Usuarios => Asignar roles globales''. Luego asignar el rol creado en el punto 5.</big><gallery widths="1220" heights="304">
+
<big>Ir a  ''Administración de sitio => Usuarios => Asignar roles de sistema (Subdivisión "Permisos")''. Luego asignar el rol creado en el punto 5.</big>
Archivo:Moodle - Asignar roles globales bis.png|Moodle - Asignar Roles Globales
+
<gallery widths="1220" heights="304">
 +
Archivo:Moodle - Asignar rol admin a servicios web.png|Moodle - Agregar Usuario a Rol
 +
</gallery>
 +
<gallery widths="1220" heights="304">
 +
Archivo:Moodle - Asignar roles globales bis.png|Moodle - Asignar Roles Globales - Resultado final
 
</gallery>
 
</gallery>
  
Línea 74: Línea 87:
 
<big>[[#crear_token|7) Crear un '''token''' para el usuario creado en el '''punto 6''']]</big>
 
<big>[[#crear_token|7) Crear un '''token''' para el usuario creado en el '''punto 6''']]</big>
  
<big>Ir a  ''Administración del sitio => Extensiones => Administrar tokens''. Elija el usuario '''Administrador'''  y el '''servicio''' creado en el '''punto 3'''.</big><gallery widths="888" heights="470">
+
<big>Ir a  ''Administración => Servidor => Servicios Web => Administrar fichas (tokens) => Crear ficha''. Elija el usuario '''Administrador'''  y el '''servicio''' creado en el '''punto 3'''.</big><gallery widths="888" heights="470">
 
Archivo:Moodle - Crear token bis.png|Moodle - Crear Token
 
Archivo:Moodle - Crear token bis.png|Moodle - Crear Token
 
</gallery>
 
</gallery>
Línea 81: Línea 94:
 
<big>[[#habilitar_depuracion_desarrolladores|8) Habilitar la '''Depuración para desarrolladores''']]</big>
 
<big>[[#habilitar_depuracion_desarrolladores|8) Habilitar la '''Depuración para desarrolladores''']]</big>
  
<big>Ir a  ''Administración del sitio => Desarrollo => Depurando'', luego en el combo '''Mensajes de depuración''' elegir el valor '''DESARROLLADOR: mensajes extra de depuración Moodle para desarrolladores'''.</big><gallery widths="668" heights="509">
+
<big>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'''.</big><gallery widths="668" heights="509">
 
Archivo:Depurando Moodle.png|Moodle - Depurando
 
Archivo:Depurando Moodle.png|Moodle - Depurando
 
</gallery>
 
</gallery>
Línea 88: Línea 101:
 
<big>[[#configurar_directivas_php|9) Configurar las directivas de PHP '''max_input_vars''' y '''post_max_size''']]</big>
 
<big>[[#configurar_directivas_php|9) Configurar las directivas de PHP '''max_input_vars''' y '''post_max_size''']]</big>
  
<big>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'''.</big>
+
<big>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".</big>
  
 
<span id="probar_servicios_web"></span>
 
<span id="probar_servicios_web"></span>

Revisión del 16:14 18 nov 2022

Interfaz SIU-Guaraní - Moodle

NOTA: SIU-Guaraní 3.21 se probó con Moodle desde 3.4 a 3.10, 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").

Se puede ver una vista general de los pasos ingresando en el siguiente apartado de la instalación de Moodle: Administración del sitio => Servidor => Vista General (subdivisión "Servicios Web")

1) Habilitar Servicios Web

2) Habilitar el protocolo REST

3) Crear un nuevo servicio

La opción Habilitado debe estar marcada, de lo contrario la opción Únicamente usuarios autorizados debe estar desmarcada.


4) 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

5) 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). Dicho rol debe contar con todos los contextos:Deben estar marcados todos, para permitir la asignación, sobre-escritura y cambios de roles Dicho rol debe también contar con las siguientes capacidades: webservice:createtoken, webservice/rest:use y moodle/role:manage.

6) 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.

7) 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.

8) 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.

9) 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".

10) 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.


11) 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.
1) 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.

2) Roles de Usuarios

Se deben vincular los perfiles de Alumnos y Docentes de Guaraní con los Roles de Moodle. Debido a que Moodle no provee ningún Servicio Web para saber los roles que posee, la única forma es ingresando a la operación Administración del sitio => Usuarios => Definir roles.Al hacer click sobre el rol se podrá ver el ID del mismo en la URL.NOTA: Si no se asigna algún rol de Moodle a una responsabilidad docente de Guaraní, a la hora de matricular al docente en Moodle no se sabrá que rol asignar, por lo tanto NO se matriculará. Recordar asignar roles a todos las responsabilidades docentes de Guaraní.

3) 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

  • 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.