Interfaceamento SaudeTech

De UniWiki
Ir para: navegação, pesquisa

Pré-requisitos

ATENÇÃO! PÁGINA MIGRADA PARA WIKI NOVA, NÃO SERÁ MAIS ATUALIZADA AQUI, NOVO LINK: http://10.1.3.171:3000/pt-br/unilab/interfaceamentos/SaudeTech

  • O laboratório de apoio deve ter negociado com o hospital quais exames estarão disponíveis para interfaceamento e seus valores.
  • O SaudeTech precisa liberar a comunicação para o IP Externo do cliente, isso sera tratado entre o cliente e o SaudeTech
  • O APOIADO cadastrará previamente em seu sistema(SaudeTech) quais serão os exames interfaceados entre SaudeTech X Unilab com os mnemônicos idênticos aos do laboratório APOIO. NOTA POSTERIOR: Não é mais necessário! Nas versões mais recentes do Unilab, existe uma tabela para se configurar o de-para de exames diretamente no cadastro do apoiado.
  • No APOIO os exames interfaceados devem estar marcados como "realiza p/ apoiados".
  • Deve existir previamente o cadastro de médico código "01APOIO" descrição "MÉDICO PADRÃO P/ APOIADO".

Interface com o sistema SaudeTech (Olostech)

Foi criado uma nova interface para a comunicação de dados do sistema SaudeTech com o Unilab utilizando webservice.

O webservice funciona da seguinte forma:

Na tela de inclusão de pedidos de exames o usuário deve carregar o convênio pelo qual o paciente realizará o exame e clicar no botão importa que abre um pop-up e selecionar a opção importa pedido interface, ou apertar Ctrl + S, após isso o sistema apresenta uma tela onde o usuário deverá inserir o número do pedido de exame no SaudeTech e clicar em comunica.
O sistema carregará as informações do cabeçalho do pedido como, nome do paciente, data de nascimento, médico solicitante, etc e também carregará os exames a serem realizados.

O webservice foi desenvolvido para funcionar com qualquer apoiado que utilize o sistema SaudeTech, para configurar o serviço é necessário:

  • O apoiado deve cadastrar previamente os exames que serão solicitados ao apoio com o mesmo mnemônico; NOTA: não é mais necessário! Nas versões mais recentes do Unilab, existe uma tabela para se configurar o de-para de exames diretamente no cadastro do apoiado.
  • Cadastrar o APOIADO com seus respectivos dados para a conexão;
  • Configurar e/ou cadastrar o CONVÊNIO informando que este realiza exames com o apoiado SaudeTech cadastrado anteriormente;

Passos para ativar o interfaceamento

Configurações do Unilab SaudeTech

A seguir serão apresentados os passos para que essa configuração seja realizada corretamente.

Ativar o unilab como Apoio em: Cadastros > Configurações > Apoio.

Cadastro do Apoiado

Cadastre o Apoiado que utiliza o sistema SaudeTech, em: Cadastros > Convênios > Apoiado.

500PX

  • Deve ser configurado pelo menos uma unidade de envio, na qual será selecionada no momento da importação.
  • O Caminho da pasta é o caminho onde os PDFs de resultados vão ser salvos para disponibilização para a Saudetech ( sera visto mais a frente )
  • O campo de limpeza dos arquivos serve para indicar por quantos dias os arquivos devem ficar na pasta antes de serem excluídos.
  • Se estiver preenchido alguma Empresa solicitante, todos os pedidos deste apoiado serão vinculados a esta Empresa solicitante.
  • Se estiver habilitado a opção "Exames urgentes", todos os exames importados deste apoiado serão inclusos como urgente.
  • Se estiver preenchido algum médico em "Médico padrão", todos os pedidos vão ser cadastrados com este médico.

Obs.: Os campos de comunicação deverão ser solicitados ao apoiado.

Cadastro do Convênio

Cadastre o Convênio e clique no botão Apoiado para relacionar o apoiado, cadastrado anteriormente.

Convenio SaudeTech.PNG

Após preencher os campos de cadastro do convênio clique no botão APOIADO, canto inferior direito conforme mostra a figura acima, para relacionar este convênio ao apoiado cadastrado anteriormente.

Deve ser marcado: Laboratório Apoiado, o posto de coleta não tem muita necessidade de ser um especifico pois a importação do pedido é feito direto na inclusão do pedido, então pode ser qualquer posto, marcar para importar pacientes, caso queria enviar os laudos para internet para consulta no uniexames marcar a opção envia laudo para internet e carregar o apoiado.

Conv Apoiado SaudeTech.PNG

Importando pedidos SaudeTech

Na tela de inclusão de pedidos, o usuário deve carregar o campo "convênio" e após isso clicar no campo "importar" que abrirá um pop-up. Deverá clicar na opção "importa pedido interface" ou pelo atalho Ctrl + S.

Pedido saudetech.PNG

O sistema apresentará uma janela, o usuário deverá informar o número do pedido no sistema SaudeTech, selecionar a unidade referente a este pedido e clicar em "Comunica".

Pedido saudetech codpedi.png

Ao comunicar o sistema preenche os campos do pedido conforme a imagem demonstra.

Pedido saudetech preenchido.PNG

Enviando/Disponibilizando resultados para SaudeTech

O "envio" de resultados para o SaudeTech é por teoria, simples. Vamos apenas disponibilizar os PDFs em uma pasta na maquina do cliente que junto ao Apache/Squirrel vai ser disponibilizado via link temporariamente para que a SaudeTech o acesse, ou seja, não enviamos de fato os resultados para a SaudeTech, apenas disponibilizamos os PDFs para que os mesmos utilizem.

Primeiramente, em Cadastros> Convênios> Apoiado , é necessário configurar o Caminho da pasta onde os PDFs ficaram salvos. IMPORTANTE: Esta pasta é a que vai ter os arquivos acessados posteriormente, o ideal é ficar na mesma maquina do Apache e precisa ser configurado seu caminho na rede (\\Servidor\laudos por exemplo).

500PX

Os laudos são salvos nesta pasta assim que os laudos são enviados para a internet. Lembrando que neste momento também realizamos o envio de um XML para o SaudeTech, informando-os quais os exames disponibilizados e o nome do PDF gerado ( numerodopedido.PDF )

Agora é preciso instalar o apache, inicialmente deve ser feito como qualquer outro recurso do unilab que necessita da instalação do mesmo (Instalar no D:, marcar alguma porta para ser utilizada normalmente 5180, liberar a porta no modem e etc...), o apache esta disponível em: http://uniware-lda.no-ip.net:3080/uniftp/ws-ftp-suporte/Versao_Atual/Apache

IMPORTANTE: Caso o cliente já utilize o apache para algum outro programa/ferramenta como Redir ou Remote folder, é necessário realizar alguns procedimentos de forma diferente, favor conferir no final da pagina.

Agora, para configurar o Squirrel ( ferramenta que vamos utilizar para disponibilizar uma especie de Web Service usando apache ) é preciso seguir os seguintes passos:

No mesmo caminho da FTP: http://uniware-lda.no-ip.net:3080/uniftp/ws-ftp-suporte/Versao_Atual/Apache , baixar o Squirrel.zip . Extrair a pasta do Squirrel do caminho D:\Internet\www , para ficar com a pasta D:\Internet\www\Squirrel conforme imagem abaixo:

500PX

Agora abrir a pasta Squirrel, dentro desta pasta abrir a pasta config e dentro desta pasta abrir o arquivo app.ini , de preferencia com o notepad++:

500PX

 Os dados neste arquivo devem ser preenchidos da seguinte forma:
 Estes dados abaixo são preenchidos em acordo com a SaudeTech ou quem utiliza o sistema deles.
  • dir = Diretório onde os PDFs dos laudos estão sendo salvos. ATENÇÃO: Terminar com \ , exemplo "D:\Laudos\"
  • jwt_key = Chave de criptografia
  • timeout = Tempo em segundos da disponibilização do link após solicitação da SaudeTech ( SaudeTech faz a solicitação e recebe o link para acessar o arquivo, este link só fica disponível pelo tempo configurado aqui )
  • aes_key = Colocar a chave que a SaudeTech informar
  • aes_iv = Colocar a iv que a SaudeTech informar
  • usuario = colocar algum usuário ( deve ser informada para a SaudeTech posteriormente, para que consigam solicitar os arquivos )
  • senha = Colocar alguma senha que também deve ser informada a SaudeTech.
  • host = IP ou endereço externo ( no-ip, ddns e etc..) seguido de :PORTA ( a mesma configurara na instalação do apache e liberada no modem )
  • app_dominio = repetir o host, no momento não é utilizado.

Por ultimo, é necessário abrir o caminho D:\Arquivos de Programas\x-webserver\apache\conf e abrir o arquivo uniware.conf , onde serão feitas duas configurações:

500PX

Na frente de DocumentRoot, colocar o caminho da pasta do Squirrel que foi extraída anteriormente ( comumente fica em D:\Internet\www\squirrel ). Abaixo do ultimo </Directory> , adicionar um novo conforme a imagem, com o caminho onde os PDFs estão sendo salvos ( aquele mesmo que foi configurado no app.ini ), seguindo o padrão: <Directory "D:\Laudos"> AllowOverride All Require all granted </Directory> Tendo que trocar o "D:Laudos" pelo diretório onde os PDFs estão sendo salvos.

Pronto! Daqui pra frente, basta passar o usuário e senha configurados para a SaudeTech que os mesmos irão começar a utilizar.


Caso seja necessário fazer um teste, é possível utilizar algum método POST ( como SOAP ):

1 - Abrir um projeto REST no SOAP , com ip:porta utilizado.

2 - Setar o método POST

3 - Abrir o link https://www.devglan.com/online-tools/aes-encryption-decryption e em "AES Online Encryption" colocar o texto "USUARIO|SENHA|a_uniware_nao_usa_este_campo|010000179.pdf" Sendo que usuário e senha é aquele configurado no app.ini , o terceiro campo não é utilizado mas precisa ter algum dado e o ultimo campo é o nome do PDF que esta dentro da pasta.pdf ( COLOCAR SEM AS ASPAS )

4 - Ainda no link, colocar o Mode CBC, Key Size 256, IV ( colocar aquele dado do campo aes_iv do app.ini ) Secret Key ( Colocar aquele dado do campo aes_key do app.ini ) e clicar em "Encrypt"

5 - Copiar o texto gerado pelo site

6 - No SOAP, em "Parameters", adicionar um parâmetro com o nome "autenticacao" e colocar o texto copiado do site no campo "Value"

7 - Marcar a checkbox "Post QueryString" na frente de Media Type

8 - Pronto, basta dar um submit no projeto. Se tudo ter certo, no resultado vai conter um link para acessar o PDF ( lembrando que só dura o tempo configurado no app.ini )

POSTMAN: Também é possível testar pelo postman. Basta colocar o methodo POST para o ip:porta, na aba “Body” selecionar a opção “x-www-form…” e colocar o campo “autenticacao” sem as aspas na key e o valor retirado da encryptação no campo value.


Caso o cliente já utilize apache para algum outro programa/ferramenta como Redir ou Remote folder, é necessário configurar de forma diferente:

1 - Deixar o arquivo uniware.conf ( em D:\Arquivos de Programas\x-webserver\apache\conf ) com o documento root apontando para "D:\Internet\www"

2 - Liberar mais alguma porta no httpd.conf ( A que esta la configurada já deve estar sendo utilizada para a outra aplicação )

3 - Abrir o arquivo httpd-vhosts.conf em D:\Arquivos de Programas\x-webserver\apache\conf\extra, neste arquivo é necessário configurar dois Vhosts, um para a aplicação atual e outro para a nova aplicação ( do squirrel ). Para isto basta colocar os host da seguinte forma:

  Vhost da aplicação atual
  <VirtualHost *:5180> ( Substituindo 5180 pela porta que a aplicação atual estava utilizando )
  ServerName uniware ( server name da aplicação atual )
  ServerAdmin webmaster@localhost
  DocumentRoot D:\Internet\www ( caminho da DocumentToot da aplicação atual )
  <Directory "D:\Internet\www"> ( caminho para dar permissões, referente a aplicação atual )
  AllowOverride All
  Require all granted
  </Directory>
  </VirtualHost>
  Vhost do squirrel
  <VirtualHost *:3080> ( Substituindo 3080 pela porta liberada no httpd.conf e modem do cliente, para utilização do squirrel )
  ServerName Squirrel ( server name do squirrel )
  ServerAdmin webmaster@localhost
  DocumentRoot D:\Internet\www\Squirrel ( caminho da DocumentToot do squirrel )
  <Directory "D:\Laudos"> ( caminho para dar permissões, referente a pasta de laudos que vai ser acessada pelo SaudeTech )
  AllowOverride All
  Require all granted
  </Directory>
  </VirtualHost>

Pronto, dessa forma por exemplo o redir ficaria acessível pelo IP:5180 e o squirrel pelo IP:3080



Informações Úteis

  • É recomendado utilizar o manual de exames para apoiado para informar o SaudeTech quais são os exames realizados e quais seus respectivos mnemônicos (Relatorios>Cadastros>Exame>Exames> Manual de exames p/ apoiado)
  • Não é possível interfacear PDFs.
  • A comunicação pode demorar de acordo com a internet e o WS do SaudeTech.
  • Caso ocorrer algum erro interno no WebService, será gerado o arquivo com o erro em um diretório específico dentro do servidor de aplicação.
  • Inicialmente a consulta de resultados deverá ser feita através do UniExames.