Este post tem por objetivo apresentar como gerenciar cadastro de usuário na Plataforma Moodle e inscrição no curso usando Webservice do Moodle.
Se você estiver fazendo integração entre a sistema de gestão acadêmica ou qualquer outro sistema com a Plataforma Moodle, esse post foi projetado para você.
Bem vamos lá, quando você faz integração de um SGA (sistema de gestão acadêmica) vai precisar gerenciar sincronização dos seguintes itens:
-
Replicar cadastro de usuário no Moodle
-
Replicar inscrição (matrícula) de aluno e tutor no Moodle
Para gerenciar isso, uma alternativa é usar webservice disponível na Plataforma Moodle. A tabela a seguir, especifica quais funções webervice é necessário usar.
Função Webservice para gerenciar Cadastro / Inscrição de alunos ou tutor no Moodle
Etapa |
Função web service |
Descrição |
Link com documentação da função |
I - Recuperar id do usuário cadastrado no Moodle |
core_user_get_users |
Essa função serve para verificar se um usuário já foi cadastrado. Essa checagem deve ser feita pelo campo de sincronização que geralmente é username ou idnumber. Ao localizar o usuário por um desses campos, se existir, o id será retornado bem como outros campos. Se não existir, é sinal que precisa efetuar o cadastro. |
|
II - Efetuar cadastro de usuário no Moodle |
core_user_create_users |
Caso o usuário não existir no Moodle, é necessário realizar o cadastro. Ao efetuar cadastro do usuário no Moodle, é retornado o id gerado. O id é necessário para outras operações como inscrição no curso |
|
III - Recuperar id do curso no Moodle |
core_course_get_courses_by_field |
Esta função recupera os dados de um curso no Moodle. Basta passar como parâmetro o campo de sincronização de curso (disciplina ou turma) entre SGA e Moodle. A consulta vai retornar dados do curso. O campo id que virá no resultado será necessário para realizar inscrição |
|
IV - Recuperar id do perfil no Moodle |
Não identifiquei uma função webservice específica no Moodle que gera esse a lista de id dos perfis. Mas pode mapear isso manualmente |
O link da documentação apresenta comando SQL ou função php que gera a lista de id para cada perfil |
|
V - Efetuar inscrição no curso do Moodle |
enrol_manual_enrol_users |
Esse função inscreve participantes (aluno, tutor e outros participantes) no curso do Moodle. Para executar essa função é necessário ter id do usuário extraído na etapa I ou II. Id do curso extraído na etapa III. Id do perfil extraído na etapa IV |
Esse post apresenta sequência lógica que algoritmo deve seguir para processar replicação de cadastro de usuário e inscrição no curso de um sistema externo para Moodle. Você pode ajustar isso a sua realidade específica.