es:manual:integracion:webservices
Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
es:manual:integracion:webservices [2023/05/22 09:30] – root | es:manual:integracion:webservices [2023/05/23 19:35] (actual) – [Ejecución de un test desde un sistema externo] root | ||
---|---|---|---|
Línea 74: | Línea 74: | ||
|getSubjectListStudent | |getSubjectListStudent | ||
|getTestQuestions |'' | |getTestQuestions |'' | ||
- | |beginTestSession |'' | + | |beginTestSession |'' |
|getSessionScore | '' | |getSessionScore | '' | ||
|hasExpiredSIETTESession | '' | |hasExpiredSIETTESession | '' | ||
Línea 83: | Línea 83: | ||
^Parámetro ^Tipo ^Contenido ^ | ^Parámetro ^Tipo ^Contenido ^ | ||
- | | '' | + | | '' |
| '' | | '' | ||
| '' | | '' | ||
Línea 124: | Línea 124: | ||
[[https:// | [[https:// | ||
+ | ==== Ejecución de un test desde un sistema externo ==== | ||
+ | |||
+ | === Acceso al test === | ||
+ | |||
+ | Los servicios web proporcionan un mecanismo de autenticación basado en la confianza entre dos sistemas, de manera que Siette confía en que los datos que solicita un sistema externo son correctos. Por ejemplo, Siette no cuestiona si el usuario que le pasa el sistema externo ha entrado en el sistema correctamente (por ejemplo utilizando una contraseña válida), o si el usuario esta autorizado o no a acceder a ese test en concreto (siempre y cuando este test pueda accederse desde éste sistema externo), simplemente confía en que el sistema externo ha hecho su trabajo y garantiza que los datos son correctos. | ||
+ | |||
+ | Por ejemplo, si un test de una asignatura está disponible para acceso desde un sistema externo basado en Moodle, desde el punto de vista de Siette, a este test tendrán acceso todos los alumnos dados de alta en el sistema Moodle. Es responabilidad de Moodle gestionar a qué alumnos proporciona el enlace correspondiente para que puedan acceder a Siette. | ||
+ | |||
+ | Sin embargo, hay algunos controles de acceso que Siette sigue aplicando, como la contraseña de acceso, el intervalo temporal de acceso, etc. Estas comprobaciones pueden estar duplicadas con el sistema externo (por ejemplo Moodle las duplica). Es responsabilidad del usuario configurarlas en uno u otro sistema. | ||
+ | |||
+ | === Ejecución === | ||
+ | |||
+ | Para iniciar el test debe obtenerse una URL de inicio, para lo cual hacen falta (1) el token obtenido previamente con el servicio '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | en donde: | ||
+ | |||
+ | ^Parámetro ^Posibles valores ^Caracter ^Comentarios ^ | ||
+ | |token | Número entero | necesario | Se debe obtener previamente mediante el servicio '' | ||
+ | |idsesion | Número entero | necesario | Se debe obtener previamente mediante el servicio '' | ||
+ | |idioma| "es, " | ||
+ | | xml | " | ||
+ | | urlBack | URL | opcional | Servicio o página a la cual se le pasaran como parametros los resultados del test cuando éste concluya. | | ||
+ | |||
+ | En la integración mediante Java, para componer esta URL basta con llamar al método getStartTestURL de la clase [[es: | ||
+ | |||
+ | * En caso de no usar el parámetro XML, la pagina de inicio del test obtenida en el paso anterior se mostrará en una página o en un **iframe** del navegador. La propia URL contiene los botones de navegación del test al igual que si el test se realizara desde el propio entorno de Siette, por lo que la navegación de preguntas y respuestas se va encadenando de forma natural. | ||
+ | |||
+ | * En el caso en el que las preguntas se requieran en formado XML, añadiendo este parámetro en la primera llamada, Siette devuelve como resultado inicialmente la descripción del test descrito mediante [[es: | ||
+ | * Extraer del formato XML los datos necesarios. Para ello debe analizarse el formato XML. La integracion mediante Java proporciona métodos auxiliares para ello. | ||
+ | * Mostrar los datos al usuario de alguna forma. (" | ||
+ | * Recoger la respuesta del usuario mediante algún tipo de interacción. | ||
+ | * Enviar los resultados a Siette y/o solicitar una nueva pregunta. Para ello se realizarán llamadas alternativamente a los servlets '' | ||
+ | |||
+ | Por ejemplo, para obtener la siguiente pregunta de un test deberá llamarse a la URL: | ||
+ | |||
+ | '' | ||
+ | |||
+ | Una vez planteada la pregunta y obtenida la respuesta del alumno, el sistema externo deberá enviársela a Siette para que éste sepa que la pregunta ya ha sido contestada y pueda proceder a mostrar la corrección o a seleccionar una nueva pregunta, según proceda. Esta operación se implementa mediante la llamada a la URL: | ||
+ | |||
+ | '' | ||
+ | |||
+ | |||
es/manual/integracion/webservices.1684747850.txt.gz · Última modificación: 2023/05/22 09:30 por root