Configurando o Moodle para realizar integração com o Mentor

A partir da instalação padrão do Moodle versão 2.8.5 Build: 20150313, deverá ser realizado os procedimentos abaixo:

  1. Se a aplicação do Moodle utiliza https deverá instalar o certificado digital na máquina virtual do java (jvm) do MentorWeb.
  2. Copiar a pasta “ws” para dentro da pasta “auth” que está localizada na pasta raiz do Moodle. \\A pasta “ws” pode ser baixada clicando aqui, após baixar o arquivo o arquivo deve ser descompactado e dentro da pasta que a descompactação gera vai ter uma pasta chamada ws e esta pasta que o usuário deve mover para o diretório “auth”.
  3. Logar como administrador, em seguida o sistema solicitará a atualização da base de dados para a utilização do plugins.
  4. Acessar o menu “Administração do site > Plugins > Autenticação > Gerenciar autenticação” deverá habilitar o plugin de autenticação “Autenticação via webservice externo”.
  5. Após habilitar o plugin de autenticação “Autenticação via webservice externo” deverá clicar em “Configurações”.

  6. Ao clicar em configurações abrirá a tela de “Autenticação via webservice exerno”, todas as configurações deverão ser efetuadas conforme imagem abaixo:
    OBS. O caminho do URL do webservice deverá ser o caminho da aplicação do cliente, conforme exemplo;
    URL webservice: http://CaminhoAplicacao/ICoruja/services/AutenticacaoUsuarioMentorWebWS

  7. Acessar o menu “Administração do site > Plugins > Serviços da web > Serviços externos” e criar um serviço.

    Informar o nome do serviço e marcar as opções “Ativado” e “Apenas Usuários Autorizados”.

  8. Deverá associar as funções disponíveis no Moodle ao serviço, isso permitirá realizar a integração entre os sistemas. Para adicionar as funções acessamos Administração do site > Plugins > Serviços da web > Serviços externos. Será exibida uma tela com os serviços personalizados e clicar em “Funções”.
    Adicionar as seguintes funções:

  9. Em seguida adicionar o administrador como um usuário autorizado. \\Conforme imagem abaixo:


  10. Acessar o menu “Administração do site > Plugins > Inscrições > Inscrições manuais”, verificar se o parâmetro “Habilitar inscrições” manuais está como SIM.
  11. Acessar o menu “Administração do site > Opções avançadas”, verificar se o campo de “Habilitar serviços web (WebServices)” está habilitado.
  12. Ativar o protocolo de comunicação SOAP no menu “Administração do site > Plugins > Serviços da Web > Gerenciar protocolos”

  13. Criar um token em “Administração do site > Plugins > Serviços da Web > Gerenciar tokens”, vincular o usuário que foi autorizado para utilizar o serviço e vincular o serviço.

  14. O token que foi criado será utilizado para realizar a autenticação com o Moodle.
  15. Alterar a forma de validação de senha no Moodle, pois atualmente não possuímos essas validações no MentorWeb, acessar o menu “Administração do site > Segurança > Políticas do site”.

Criação de uma estrutura de teste para integração. Para limpar todos os registro do Moodle no MentorWeb:

UPDATE TB_PESSOA SET PES_CODEAD = NULL, PES_DATINTEAD = NULL, PES_EMAILINSTITUICAO = NULL WHERE PES_CODEAD IS NOT NULL
UPDATE TB_CATEGORIA_EAD SET CAE_CODEAD = NULL WHERE CAE_CODEAD IS NOT NULL 
UPDATE TB_TURMA_DISCIP SET TDI_CODEAD = NULL, TDI_DATINTEAD = NULL WHERE TDI_CODEAD IS NOT NULL
UPDATE TB_AVAPAR_CADAVA SET APC_CODEAD = NULL WHERE APC_CODEAD IS NOT NULL
UPDATE TB_AGRUPAM_TURMA_DISCIP SET AGT_CODEAD = NULL WHERE AGT_CODEAD IS NOT NULL
UPDATE TB_MESTRE_DISCIPLINA SET MDI_DATINTEAD = NULL WHERE MDI_DATINTEAD IS NOT NULL
DELETE FROM tb_categoria_ead

Caso o usuário queira limpar o cadastro de usuário/cursos e categorias no Moodle via banco deverá executar o comando abaixo.

DELETE FROM MDL_COURSE_CATEGORIES WHERE ID NOT IN(SELECT MIN(ID) FROM MDL_COURSE_CATEGORIES)
DELETE FROM MDL_COURSE WHERE ID NOT IN(SELECT MIN(ID) FROM MDL_COURSE)
DELETE FROM MDL_USER WHERE ID > :ID do administrador do sistema

Obs.: Não executar em base de produção esses scripts, pois deletará as informações