Gestão de Cadastro de Usuário e Inscrição no Curso no Moodle pelo Webservice

Gestão de Cadastro de Usuário e Inscrição no Curso no Moodle pelo Webservice

por Lino Vaz Moniz -
Número de respostas: 1

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. 

https://comunidade.badiu.com.br/mod/forum/discuss.php?d=576 

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

https://comunidade.badiu.com.br/mod/forum/discuss.php?d=625

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

https://comunidade.badiu.com.br/mod/forum/discuss.php?d=630

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

https://comunidade.badiu.com.br/mod/forum/discuss.php?d=633

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

https://comunidade.badiu.com.br/mod/forum/discuss.php?d=626



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.

Em resposta à Lino Vaz Moniz

Re: Gestão de Cadastro de Usuário e Inscrição no Curso no Moodle pelo Webservice

por Jader Gabriel -

Existe a possibilidade de se cadastrar o usuário no curso, e substituir o campo userid, por outro campo, na API? ou criar uma função nova?