Quizzes
1. Obtener datos de intento
- local_servicerefactor_get_attempt_data
Descripción: Obtiene la información y las preguntas de una página específica para un intento de cuestionario en curso. Gestiona también la lógica de intentos para exámenes extraordinarios.
Endpoint: local_servicerefactor_get_attempt_data
Método: GET
Argumentos:
- wstoken: string | token de Manager
- moodlewsrestformat: json | formato de la respuesta
- wsfunction: string | local_servicerefactor_get_attempt_data
- attemptid: int | ID del intento
- page: int | Número de página
- lang: string | Idioma del cuestionario (Opcional)
- quizid: int | ID del cuestionario
- quizstartdate: int | Fecha inicio del quiz (Timestamp) (Opcional)
- quizenddate: int | Fecha fin del quiz (Timestamp) (Opcional)
- extraordinarydateid: int | ID de fecha extraordinaria (Opcional)
Respuestas:
Devuelve la estructura del intento y las preguntas
{ "status": 200, "code": 0, "message": "", "body": { "attempt": [ "id": ID de intento "quiz": ID de examen ] "questions": [ "id_pregunta": ID de pregunta "multiple_respuesta": Identificador de multiple respuesta (1 -> si, 0 -> no) "enunciado": Texto de la pregunta "respuestas": [ "id_respuesta": ID de respuesta "texto_respuesta": Texto de respuesta ] ] }}Error si faltan fechas en cuestionario extraordinario
{ "status": 404, "code": 1, "message": "quiz startdate and enddate necessary"}2. Obtener calificaciones de examen por módulo
- local_servicerefactor_get_exam_grades_by_module
Descripción: Calcula las estadísticas de calificaciones de los exámenes en una sección específica del curso. Tiene en cuenta exámenes ordinarios y extraordinarios, verificando si están corregidos y presentados.
Endpoint: local_servicerefactor_get_exam_grades_by_module
Método: GET
Argumentos:
- wstoken: string | token de Manager
- moodlewsrestformat: json | formato de la respuesta
- wsfunction: string | local_servicerefactor_get_exam_grades_by_module
- courseid: int | ID del curso
- orden: int | Número de sección (módulo)
- userid: int | ID del usuario
Respuestas:
Devuelve el resumen de calificaciones
{ "status": 200, // Implícito "body": [ { "nota_media": Calificación medio de los examenes dentro del módulo "corregidos": Número de examenes corregidos "presentados": Número de examenes presentados por el alumno "total_examenes": Total de examenes en el módulo } ]}3. Obtener revisión de intento
- local_servicerefactor_get_attempt_review
Descripción: Devuelve la información de revisión para un intento finalizado. Genera el PDF de corrección si no existe, verifica si la revisión está disponible según las fechas y envía datos académicos a Zoho.
Endpoint: local_servicerefactor_get_attempt_review
Método: GET
Argumentos:
- wstoken: string | token de Manager
- moodlewsrestformat: json | formato de la respuesta
- wsfunction: string | local_servicerefactor_get_attempt_review
- skin: string | Identificador del diseño (skin)
- idioma: string | Idioma del usuario
- userid: int | ID del usuario
- quizid: int | ID del cuestionario
- attemptid: int | ID del intento
- page: int | Número de página (-1 para todas) (Opcional, por defecto -1)
Respuestas:
Devuelve los datos de la revisión y la URL del PDF
{ "status": 200, "code": 0, "message": "", "body": { "activityid": ID de actividad (cmid) "quizid": ID de examen "attemptid": ID de intento "gradepass": Calificación para aprobar "calificacion": Calificación del intento "correctas": Número de respuestas correctas "numero_preguntas": Número de preguntas en el examen "url_disponible": Identificador para liberar el archivo de revisión (1: Disponible, 0: No disponible) "url_correcion": URL con archivo de revisión }}Error si el skin no existe
{ "status": 404, "code": 1, "message": "Skin not found"}Error si no se encontró el intento
{ "status": 404, "code": 2, "message": "Attempt not found"}Error si no se encontró el usuario
{ "status": 404, "code": 3, "message": "User not found"}Error si el intento no pertenece al usuario
{ "status": 404, "code": 4, "message": "This attempt does not belong to the user"}