Foram desenvolvidos dois serviços REST para que o cliente possa customizar sua aplicação de acordo com o contexto educacional atual do portal do aluno. Abaixo detalharemos cada um desses serviços.
O primeiro serviço, chamado de GetKeySession, irá retornar a chave criptografada do contexto atual selecionado. Esse serviço utiliza o verbo de requisição GET e pode ser útil quando for necessário uma customização que não possa ser feita através de um cadastro de Url Externa de Globais.
Neste caso, o cliente deve obter a chave, por meio deste serviço, e posteriormente chamar o segundo serviço para obter os dados do contexto atual.
O endereço para acessar o serviço é o seguinte:
http://<nome_do_servidor_ou_ip>/rm/api/TOTVSEducacional/GetKeySession
O serviço GetKeySession necessita da sessão em que o usuário está logado, por isso, só funcionará se for executado dentro do ambiente do portal. |
O segundo serviço, chamado de GetSession, irá retornar um objeto json com os dados de contexto do aluno. Esse serviço utiliza o verbo de requisição GET e recebe como parâmetro uma chave criptografada de nome key.
O endereço para acessar o serviço é o seguinte:
http://<nome_do_servidor_ou_ip>/rm/api/TOTVSEducacional/GetSession?key=<chave_criptografada>
É obrigatório passar uma chave criptografada para que este serviço retorne os dados. Essa chave é obtida por meio do serviço GetKeySession. |
O serviço GetSession tem mais flexibilidade que o GetKeySession, podendo ser executado de fora do ambiente do portal pois não necessita da sessão do portal do aluno para funcionar. |
{ "data":[ { "CODCOLIGADA":1, "CODFILIAL":1, "NOMEFILIAL":"Filial Belo Horizonte", "CODTIPOCURSO":1, "NOMETIPOCURSO":"Ensino Superior", "RA":"ES-00177", "NOMEALUNO":"Thiago Enzo Sales", "CODUSUARIOPAI":null, "NOMEPAI":null, "CODUSUARIOMAE":null, "NOMEMAE":null, "CODUSUARIORACA":null, "NOMERACA":null, "CODUSUARIORESPFINANCEIRO":null, "NOMERESPFINANCEIRO":null, "CODUSUARIORESPCONTRATO":null, "NOMERESPCONTRATO":null, "IDHABILITACAOFILIAL":1, "CODCURSO":"1-1", "NOMECURSO":"DIREITO", "CODHABILITACAO":"1", "NOMEHABILITACAO":"DIREITO", "NOMEMATRIZ":"Grade Curricular de Direito", "NOMETURNO":"MANHÃ", "IDPERLET":22, "CODPERLET":"2019/1", "DTINICIO":"2019-01-01T00:00:00", "APRESENTACAO":"1", "CODTURMA":null, "PERIODO":null, "SITMATHABILITACAO":"Matriculado", "SITMATPERLET":"Pré-Matricula", "CODUSUARIOALUNO":"ES-00177", "GUID":"L\\FF\\09\\28B\\FDc\\DF\\A4\\21s\\14\\E75\\40\\E6p\\21\\E8\\D5i\\A8m\\C45\\02\\BDI\\2C\\A2\\5E\\C008\\AAn\\8B\\A9l\.." } ], "messages":[ ], "length":1, "HttpStatusCode":200 } |
Exemplo: o Cliente precisa customizar a tela de ocorrência do portal, adicionando um link para uma aplicação externa.
Para isso, utilizando a documentação de customização, podemos alterar esta tela e adicionar um botão que irá redirecionar para a URL de uma aplicação externa. No código abaixo, no evento do click deste botão, o serviço GetKeySession é chamado para recuperar a KeySession e, posteriormente, essa key será repassada para o aplicativo externo via QueryString.
Funcionamento do código de exemplo acima:
Abaixo segue um exemplo de um sistema Web em Asp.Net, que possui uma página que recebe a key session como parâmetro. Esta página chama então o serviço GetSession e exibe os dados do contexto recuperado.
Funcionamento:
Segue abaixo o código fonte da aplicação web Asp. Net utilizada para os exemplos acima: