Skip to content

Forums

1. Obtener comentarios del foro

- local_servicerefactor_get_forum_comments

Descripción: Obtiene la lista de comentarios (hilos de discusión) de un foro específico, incluyendo las respuestas anidadas y la información de los usuarios autores.

Endpoint: local_servicerefactor_get_forum_comments
Método: GET
Argumentos:

  • wstoken: string | token de Manager
  • moodlewsrestformat: json | formato de la respuesta
  • wsfunction: string | local_servicerefactor_get_forum_comments
  • courseid: int | ID del curso
  • forumid: int | ID del foro
  • groupid: int | ID del grupo (Requerido si es curso Máster)

Respuestas:

Se obtienen los comentarios y respuestas

{
"status": 200,
"code": 0,
"message": "",
"body": [
"commentid": ID de comentario
"message": Comentario
"date": Fecha del comentario
"user": [
"id": ID de usuario
"fullname": Nombre del usuario
"isPublicAccount": 1 si es cuenta publica, 0 si es privada
"picture": URL de foto de perfil
]
"reply": [
"commentid": ID de comentario en respuesta
"parentid": ID de comentario padre
"message": Comentario en respuesta
"date": Fecha del comentario
"user": [
"id": ID de usuario
"fullname": Nombre del usuario
"isPublicAccount": 1 si es cuenta publica, 0 si es privada
"picture": URL de foto de perfil
]
]
]
}

2. Publicar comentario o respuesta

- local_servicerefactor_post_forum_comments_replies

Descripción: Permite a un usuario publicar un nuevo comentario en el foro o responder a uno existente (si se envía “parent”).

Endpoint: local_servicerefactor_post_forum_comments_replies
Método: POST
Argumentos:

  • wstoken: string | token de Manager
  • moodlewsrestformat: json | formato de la respuesta
  • wsfunction: string | local_servicerefactor_post_forum_comments_replies
  • courseid: int | ID del curso
  • comment: string | Contenido del mensaje
  • forumid: int | ID del foro
  • userid: int | ID del usuario autor
  • parent: int | ID del comentario padre (0 si es un nuevo hilo)
  • groupid: int | ID del grupo (Opcional)

Respuestas:

Devuelve el comentario creado

{
"status": 200,
"code": 0,
"message": "",
"body": {
"commentid": ID de comentario
"message": Comentario
"date": Fecha del comentario
"user": [
"id": ID de usuario
"fullname": Nombre del usuario
"isPublicAccount": 1 si es cuenta publica, 0 si es privada
"picture": URL de foto de perfil
]
"parentid": ID de comentario padre // Solo si es respuesta
}
}

3. Eliminar comentario del foro

- local_servicerefactor_delete_forum_comments_replies

Descripción: Elimina un comentario específico del foro.

Endpoint: local_servicerefactor_delete_forum_comments_replies
Método: POST
Argumentos:

  • wstoken: string | token de Manager
  • moodlewsrestformat: json | formato de la respuesta
  • wsfunction: string | local_servicerefactor_delete_forum_comments_replies
  • commentid: int | ID del comentario a eliminar

Respuestas:

{
"status": 200
}

4. Obtener calificaciones y estadísticas de foros por módulo

- local_servicerefactor_get_forum_grades_by_module

Descripción: Servicio para obtener un resumen de la participación y calificación del usuario actual en los foros de una sección específica del curso. Calcula la nota media, el número de comentarios realizados y las respuestas recibidas.

Endpoint: local_servicerefactor_get_forum_grades_by_module
Método: GET
Argumentos:

  • wstoken: string | token de Manager
  • moodlewsrestformat: json | formato de la respuesta
  • wsfunction: string | local_servicerefactor_get_forum_grades_by_module
  • courseid: int | ID del curso
  • section: int | Número de sección (módulo) a consultar
  • groupid: int | ID del grupo

Respuestas:

Se obtienen las estadísticas

{
"status": 200, // Implícito
"body": [
{
"foros": Cantidad de foros en el módulo
"nota_media": Calificación promedio
"respuestas": Número de respuestas recibidas
"comentarios": Número de comentarios
}
]
}