Páginas filhas
  • DT_Integracao_REP_DIMEP_PrintPoint_III

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

NOME DO REQUISITO

Características do Requisito

Linha de Produto:

TSA

Segmento:

Manufatura

Módulo:

Integrador

Rotina:

Rotina

Nome Técnico

Manutenção / Dispositivo

Modelo: Dimep PrintPoint III (REP Inmetro)

Requisito (ISSUE):PCREQ-7979
Versão Expedida:12.1.9 

Descrição

O INMETRO regulamentou os dispositivos REP. No caso do fabricante Dimep o equipamento que atende a essas especificações é o do modelo PrintPoint III. Este documento técnico detalha como configurar o TSA para integrar com o PrintPoint III.

Nota

A integração com o REP PrintPoint III está sendo liberada na forma BETA. Para usar essa integração (receber suporte) deve-se entrar em contato com a Totvs se candidatando como piloto. Apenas o modelo do PrintPoint III com biometria padrão sagem e versão da aplicação do dispositivo 02.02.0000 está homologado.

Aviso

Os procedimentos abaixo devem ser executados apenas por clientes selecionados como piloto.

Procedimento para Implantação

A implantação consiste em dois passos:

  1. Aplicar dicionário de dados:

    Banco

    Script

    SQL Server

    alter table DEVICE_CONFIGURATION alter column value varchar(600);

    SET IDENTITY_INSERT MODEL ON
    INSERT INTO MODEL(ID,MODEL_CODE,DESCRIPTION,DISPOSIT_CLASS_NAME,DISPOSIT_PARSER_CLASS_NAME,LISTENER_CLASS_NAME,LISTENER_SENDER_CLASS_NAME,MANUFACTURER,MODEL_TYPE,RMI_CLASS_NAME,SENDER_CLASS_NAME,SERVER_CLASS_NAME,REP,TWO_READERS) VALUES (44,14,'Dimep PrintPoint III (REP Inmetro)','com.datasul.hr.controleAcesso.server.dimep.protocolo.repinmetro.DimepREPInmetroDevice','','','com.datasul.hr.controleAcesso.server.dimep.protocolo.repinmetro.DimepREPInmetroListenerSender',3,0,'com.datasul.hr.controleAcesso.server.dimep.protocolo.rep.command.CommandControlRMIDimepREP','','com.totvs.hcm.accesscontrol.server.ListenerSenderServer',1,0);
    SET IDENTITY_INSERT MODEL OFF

    Oracle

     alter table DEVICE_CONFIGURATION modify value varchar(600);

    INSERT INTO MODEL(ID,MODEL_CODE,DESCRIPTION,DISPOSIT_CLASS_NAME,DISPOSIT_PARSER_CLASS_NAME,LISTENER_CLASS_NAME,LISTENER_SENDER_CLASS_NAME,MANUFACTURER,MODEL_TYPE,RMI_CLASS_NAME,SENDER_CLASS_NAME,SERVER_CLASS_NAME,REP,TWO_READERS) VALUES (44,14,'Dimep PrintPoint III (REP Inmetro)','com.datasul.hr.controleAcesso.server.dimep.protocolo.repinmetro.DimepREPInmetroDevice','','','com.datasul.hr.controleAcesso.server.dimep.protocolo.repinmetro.DimepREPInmetroListenerSender',3,0,'com.datasul.hr.controleAcesso.server.dimep.protocolo.rep.command.CommandControlRMIDimepREP','','com.totvs.hcm.accesscontrol.server.ListenerSenderServer',1,0);

    MySQL

    alter table DEVICE_CONFIGURATION modify value varchar(600);

    INSERT INTO MODEL(ID,MODEL_CODE,DESCRIPTION,DISPOSIT_CLASS_NAME,DISPOSIT_PARSER_CLASS_NAME,LISTENER_CLASS_NAME,LISTENER_SENDER_CLASS_NAME,MANUFACTURER,MODEL_TYPE,RMI_CLASS_NAME,SENDER_CLASS_NAME,SERVER_CLASS_NAME,REP,TWO_READERS) VALUES (44,14,'Dimep PrintPoint III (REP Inmetro)','com.datasul.hr.controleAcesso.server.dimep.protocolo.repinmetro.DimepREPInmetroDevice','','','com.datasul.hr.controleAcesso.server.dimep.protocolo.repinmetro.DimepREPInmetroListenerSender',3,0,'com.datasul.hr.controleAcesso.server.dimep.protocolo.rep.command.CommandControlRMIDimepREP','','com.totvs.hcm.accesscontrol.server.ListenerSenderServer',1,0);

  2. Configurar o dispositivo: Essa etapa deve ser realizada por um técnico Dimep, ela consiste em enviar os dados do empregador ao equipamento, cadastrar supervisores, configurar o modo de operação, configurar a comunicação, entre outros.

  3. Atualizar política de segurança do JRE: Rodar o updater do TSA na versão 12.1.9, no qual, irá atualizar alguns arquivos no JRE referente a política de segurança necessária para se trabalhar com chaves grandes de criptografia.

    Aviso

    Se o integrador usar um JRE diferente ao JRE que vem embarcado com o TSA, então a atualização do JRE deverá ser feita manualmente seguindo as orientações disponíveis em: http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html.

Procedimento para Configuração

Abaixo os passos para configuração:

  1. Efetue o cadastro do dispositivo. No campo "modelo" informe "Dimep PrintPoint III (REP Inmetro)".
  2. Salve o cadastro do dispositivo.
  3. Altere o cadastro do dispositivo e clique na lupa do campo "Configurações do dispositivo".
    1. No campo "REP: Último NSR processado", se não for informado nenhum valor, e caso o equipamento já tenha batidas, então, serão coletadas todas! Caso queira que o equipamento comece a coletar a partir de uma determinada batida, informe neste campo o numero do NSR desta.
    2. No campo "Biometria: Reset" deixe como 0.
    3. No campo "Responsável: CPF" informe o CPF do responsável pelas alterações efetuadas na memória do dispositivo - preenchimento desse campo é obrigatório!
    4. No campo "Autenticação: Login" e "Autenticação: Senha" deixe com o seu valor padrão "login" e "senha" - esses valores vem de fabrica, o TSA não altera o login e senha do REP.
    5. No campo "Criptografia RSA: Módulo" informe o módulo RSA da chave pública do dispositivo - esse valor é extraído do REP colocando um pendrive na porta USB(1) e digitando a F1+45+E (Imagem 1). Ao final será gerado um arquivo no pendrive contendo a chave RSA (Imagem 2). O módulo é o valor da primeira.


      REP INMETRO PRINTPOINT III
      Imagem 1.

      chaveRSA
      Imagem 2
       
    6. No campo "Criptografia RSA: Expoente" informe o valor do expoente RSA - é o valor da segunda linha do arquivo contendo a chave RSA (Imagem 2). O valor default é 010001.
    7. No campo "Criptografia RSA: Base" informe a base numérica do modulo e expoente RSA. O valor default é 16 (hexadecimal).

No final da configuração do dispositivo, deve-se chegar em uma configuração semelhante a imagem 3 abaixo:

configuracao_dispositivo_printpointIII

 

Procedimento para Utilização

Com os procedimentos de implantação executados e a configuração do dispositivo finalizada, deve-se iniciar o integrador. Assim, no log do integrador as linhas abaixo devem ser impressas:

1
TlistenerSender_066 <|> com.datasul.hr.controleAcesso.server.dimep.protocolo.rep.REPListenerSender <<>> ==> Conexão estabelecida: 010.080.011.107
2
TlistenerSender_066 <|> com.datasul.hr.controleAcesso.server.dimep.protocolo.repinmetro.DimepREPInmetroListenerSender <<>> (sendMessage) Enviando mensagem, numero 0 - 0x00, Protocolo: 0xA1, Funcao: 0xC1, Numero da mensagem: 0x00, Tamanho: 0x12, Dados: 0x05, 0x01, 0x20, 0x16, 0x15, 0x55, 0x42, 0x31, 0x32, 0x30, 0x39, 0x38, 0x37, 0x37, 0x39, 0x33, 0x37, 0x32, Bytes da mensagem: 0xF8, 0xA1, 0xC1, 0x00, 0x00, 0x12, 0x05, 0x01, 0x20, 0x16, 0x15, 0x55, 0x42, 0x31, 0x32, 0x30, 0x39, 0x38, 0x37, 0x37, 0x39, 0x33, 0x37, 0x32, 0x7F, 0xF0
3
TlistenerSender_066 <|> com.datasul.hr.controleAcesso.server.dimep.protocolo.repinmetro.DimepREPInmetroListenerSender <<>> (returnMessage) Mensagem recebida, numero: 0 - 0x00, (Dispositivo está processando) Mensagem [Protocolo=0xA1, Função=0x02, Num.Mensagem=0x00, Dados=0], <<>> bytes: 0xF8, 0xA1, 0x02, 0x00, 0x00, 0x00, 0xA3, 0xF0
4
TlistenerSender_066 <|> com.datasul.hr.controleAcesso.server.dimep.protocolo.repinmetro.DimepREPInmetroListenerSender <<>> (sendMessage) Enviando mensagem, numero 1 - 0x01, Protocolo: 0xA1, Funcao: 0x70, Numero da mensagem: 0x01, Tamanho: 0x00, Dados: , Bytes da mensagem: 0xF8, 0xA1, 0x70, 0x01, 0x00, 0x00, 0xD0, 0xF0
5
TlistenerSender_066 <|> com.datasul.hr.controleAcesso.server.dimep.protocolo.repinmetro.DimepREPInmetroListenerSender <<>> (returnMessage) Mensagem recebida, numero: 1 - 0x01, (Executado com sucesso) Mensagem [Protocolo=0xA1, Função=0x00, Num.Mensagem=0x01, Dados=0], <<>> bytes: 0xF8, 0xA1, 0x00, 0x01, 0x00, 0x00, 0xA0, 0xF0

Na linha 1 (acima), temos que o integrador efetuou a conexão com sucesso no REP. Na linha 2, é enviado o comando de atualização de data/hora (função 0xC1), esse comando é enviado sempre que o integrador é iniciado. Na linha 3, recebemos o retorno do dispositivo referente ao comando C1: "Dispositivo está processando". Na linha 4, enviamos o comando que pergunta se o dispositivo ainda está processando (função 0x70). Na linha 5, recebemos o retorno do dispositivo ainda sobre o comando C1: Executado com sucesso.

Esse "ping e pong" irá ocorrer para todos os demais comandos que o TSA pode enviar ao dispositivo., que são:

ComandoManual / Automático / AmbosDescrição
Atualizar Data/HoraAmbos