The Moodbile Spec and Sakai

From Moodbile
Jump to: navigation, search

This page is for discussion about the viability of the implementation of the Moodbile Spec for Sakai.

Some of the contents are in spanish, we will translate it eventually.


Contents

mbl_assign_get_assignment_by_id

string identifier for task identifier

Acepta como parámetro de entrada un entero. Esto es (supongo) porque en Moodle la clave primaria que identifica la tarea es un entero. En Sakai es una string. :(

Posible solutions

Strings can be hashed into integers, but in the implementation of the service we need to resolve the Sakai internal String from the int id.

This problem can be recurrent throughout all the tables, we need a consistent way to identify objects (courses, tasks (activities in Moodle), resources etc). Since an Integer is always a valid and minimal identifier. The Moodbile Spec implementation should be able to handle the transformation form integer to any identifier on the host LMS.


También en los parámetros de salida hay discrepancias. La interfaz Java que debe cumplir cualquier tarea en Sakai es https://source.sakaiproject.org/svn/assignment/trunk/assignment-api/api/src/java/org/sakaiproject/assignment/api/Assignment.java. Como verás, hay bastante información. Habría que modificar esto también.


Calendar

De nuevo, me encuentro conque la definición del evento es distinta. Por ejemplo, el groupid no tiene sentido. Aquí está la interfaz para un evento del calendario: https://source.sakaiproject.org/svn/calendar/trunk/calendar-api/api/src/java/org/sakaiproject/calendar/api/Calendar.java.

Me he ido al siguiente bloque: course

La gestión de cursos es muy diferente. En Sakai el curso no está dividido en módulos/secciones. Habría que buscar una equivalencia. Esto significaría revisar mbl_course_get_course_modules. Por ejemplo, startpage y pagenumber no tienen sentido. Lo mismo ocurre con mbl_course_get_courses_by_userid. Además, el userid en Sakai en un string.

Siguiente bloque:files Éste podría servir...habría que probar.

Siguiente bloque: forums En general, habría que cambiar el tema de los identificadores: de nuevo, en Sakai son strings. El API de los foros está en https://source.sakaiproject.org/svn/msgcntr/trunk/messageforums-api/. El modelo de datos es bastante "particular" puesto del mismo nacen dos herramientas: los foros de discusión y el correo interno (mensajes privados entre los miembros de un sitio). Yo esto lo dejaría para último lugar.

Siguiente bloque: grades

En Sakai las calificaciones de un curso se pueden agrupar en una herramienta, el Libro de Calificaciones (gradebook. GB). Otras herramientas de Sakai se integran con el GB de modo que el que la nota de una tarea, un examen o un comentario en un blog se envía al GB de manera opcional. De la misma manera, se pueden crear items en el GB en el que, posteriormente, se cargarán las notas de tareas, examánes, etc. Esto permite que el API de integración con el GB sea muy sencillo. De hecho, básicamente, sólo necesitaríamos como entrada en el id de la tarea, el id del site, el id de usuario y la nota (te lo digo de memoria, tendría que revisarlo).

Siguiente bloque: groups

¿Esto se refiere a los grupos de alumnos y profesores para prácticas, tareas, etc.?

Siguiente bloque: lang No entiendo para qué sirve. ¿Te devuelve todos los mensajes de usuario?

Siguiente bloque: timezone Éste está bien. En Sakai se podría implementar tal cual.

Siguiente bloque: user Hay que tener en cuenta que el id de usuario no es un entero, sino un string. Y hay otro problema y es que en Sakai hay dos tipos de datos de usuario: los básicos y los de perfil. Si no tienes instalada la herramienta que gestiona el perfil (creo que) los datos de perfil no se rellenan por lo que otra vez tenemos el problema de distintos campos en el objeto.

Personal tools
Namespaces
Variants
Actions
Navigation
Resources
Toolbox