El paquete npm moodle-core-cli es una biblioteca y un comando para Node.js que usan los servicios web del propio Moodle. Ofrece operaciones sencillas como create_course y se encarga de los nombres de función, los parámetros y las diferencias entre versiones. Úsalo cuando tu sitio no pueda instalar el plugin MoodlIA.
Qué hace
- Operaciones sencillas para cursos, usuarios, matriculaciones, grupos, calificaciones y más, en Moodle 4.5 a 5.3.
- De solo lectura por defecto: escribir exige
--allow-writey borrar, además, --yes. - Salida JSON y códigos de salida estables para automatizar.
Qué necesitas
- Node.js 22.13 o posterior.
- Servicios web y REST activados, y un servicio externo con las funciones de Moodle que vayas a usar.
- Un token de un usuario dedicado con solo los permisos que necesite.
Instalación
Prepara Moodle (administrador)
Activa los servicios web y el protocolo REST.
Crea un servicio externo y añade las funciones que necesites, además de
core_webservice_get_site_infopara detectar la versión.Crea un usuario dedicado con los permisos necesarios y un token para ese servicio.
Instala y configura
Instala el paquete, o ejecútalo directamente con npx:
npm install moodle-core-cliIndica la dirección de Moodle y el token:
export MOODLE_BASE_URL=https://moodle.example.com export MOODLE_TOKEN=your-token
Primer uso
Lee antes de escribir:
npx moodle-core-cli get-courses npx moodle-core-cli get-course --course-id 42Escribir exige un indicador explícito:
npx moodle-core-cli create-course --allow-write \ --fullname "Introduction to Biology" --shortname BIO101 --category-id 3
Conviene saber
- Solo puede hacer lo que exponga el servicio de Moodle y lo que el usuario del token tenga permitido.