Páginas filhas
  • ER_PCREQ-10230_Integracao_Henry_Hexa

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Migration of unmigrated content due to installation of a new plugin

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

  

Informações Gerais

** Não publicar **

Especificação

Produto

TSA

Módulo

Integrador

Segmento Executor

Supply Chain

Projeto

D_MAN_TSA002

IRM

PCREQ-10228

Requisito

PCREQ-10230

Subtarefa

PDRMAN-8478

Objetivo

Integrar o TSA ao Henry Hexa, atendendo ao protocolo com as especificações da portaria do Inmetro.

 

 

A integração com o Henry Hexa está sendo liberado no pacote 12.1.11 na forma BETA. Para que o cliente possa usar essa integração (receber suporte) neste pacote o mesmo deverá entrar em contato com a Totvs se candidatando como piloto.

Definição da Regra de Negócio

O referido protocolo é uma adaptação do protocolo 8X para a portaria do Inmetro. O protocolo 8X já está implementado para os equipamentos Henry Prisma e SuperFácil. Todas as funcionalidades existentes no 8X devem coexistir no Hexa. Os comandos devem ser reutilizados, a comunicação (ListenerSender) deve ser totalmente separada devido ao controle de sessão presente no Hexa. O acoplamento das duas integrações será alto em termos de comandos.

 

Particularidades a implementar:

 

  1. Criptografia
    Implementar comando RA e EA: A mensagem RA pede ao dispositivo qual a chave pública RSA do equipamento. A chave RSA é utilizada apenas para criptografar a chave de sessão que é enviada na sequência ao equipamento gerada pelo próprio TSA. O Fluxo segue a seguinte regra:
    1. Requisição
  2. RA →
    1. RA → Pede ao equipamento qual a chave pública
    2. Resposta
  3. RA ←
    1. RA ← Recebe a chave RSA 1024 encriptada em Base64
    2. TSA Gera uma chave AES/CBC 128
    3. Requisição
  4. EA 
    1. EA → Envia ao REP qual a chave que o TSA irá se comunicar com o equipamento durante a sessão,
  5.  junto
    1. junto com um login e senha de autenticação no dispositivo
    2. Resposta
  6. EA ←
    1. EA ← Com o retorno de recebimento positivo o TSA deve iniciar a sessão de comunicação para que os próximos comandos sejam enviados ou recebidos.

      Implementar codificação dos demais pacotes: Após o início da sessão, o TSA terá em sua memória a chave AES gerada, a partir disso, todas mensagens enviadas ao equipamento, já codificadas para Prisma e SuperFácil, deverão ser criptografadas e "encodadas" em Base64. E todas as respostas do REP ao TSA serão descriptografadas usando esta mesma chave. A conexão entre o REP e o TSA será fechada sempre que não houver mais pacotes a serem enviados/recebidos. Dessa forma, quando existir um novo comando a ser enviado o TSA irá enviar novamente o comando RA e o ciclo se reinicia. A chave simétrica AES 128 enviada no comando EA deve ser regerada de tal forma que a cada nova conexão com o REP se tenha uma nova chave privada, garantindo assim, ainda mais segurança.

  7. Criar
  8. usuário
  9. /Configurar Usuário:

    Para o cliente configurar um usuário e senha, o cliente deve criar estes usuários primeiramente nos equipamentos. Para isso, o cliente deve:

    1. Acessar o IP do equipamento pelo Browser (Ex: http://192.168.10.10/)

    2. Se logar utilizando o usuário: rep e a senha: 123456. 

    3. Com este usuário e senha já de fábrica, o cliente deve criar um novo usuário e uma nova senha para que o TSA se comunique com o equipamento

    4. Configurar na tela de manutenção de dispositivos do TSA o usuário e senha configurado no equipamento

    Observação: O usuário rep não é autorizado para efetuar a comunicação entre o TSA e o equipamento, por isso tem-se a necessidade de manualmente criar os usuários e senhas.

         3.Biometria:

No protocolo Hexa os comandos do protocolo 8X de recebimento e inclusão/exclusão de biometria serão reutilizados e as biometrias devem ser compatíveis* entre os dois protocolos. 

 

As digitais que foram cadastradas usando um REP Prisma/SuperFácil, poderão ser

atualizadas

replicadas no REP Hexa. Desde que o módulo biométrico seja do mesmo tipo e possua a mesma sensibilidade de leitura.

 Este


* Este requisito homologa apenas o padrão biométrico suprema.

 

 

Dicionário de Dados

Para conseguir usar o PrintPoint III na versão 12.1.9, será necessário rodar o script abaixo:

Banco

Script

SQL Server

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);

 

 

 


Configurações do Dispositivo

O dispositivo tem as mesmas configurações dos dispositivos Prisma e SuperFácil. Foi adicionado apenas a configuração do Login, conforme listado na tabela abaixo.

Obs.: Apenas os três primeiros itens do agrupador Configurações Gerais são editáveis, os outros itens são coletados através dos comandos de configuração e status/quantidades e servem apenas para consulta do cliente.

Nome

Descrição

Tipo

Tamanho

Configurações Gerais

Tipo de corte do papel

Controla o tipo de corte que será utilizado pela impressora. [P, T]

String

1

Login de acesso

Login de acesso ao dispositivo, no cadastro do dispositivo é o campo "Nome" [16 dígitos]

String

16

Senha do menu

Senha do menu. [6 digitos]

String

6

Número do REP

Número do REP. [17 digitos]

Long

17

Leitora de cartão

Tipo de leitor de cartão. [A, B, H, N, W]

String

1

Leitora de biometria

Tipo de leitor de biometria. [D, M]

String

1

Configurações de Comunicação

IP

IP do equipamento. [IP no formato IPV4 válido, IP no formato IPV6 válido]

String

28

Máscara de subrede

Máscara de subrede. [Máscara formato IPV4 válido, Máscara formato IPV6 válido]

String

28

DNS

IP do servidor DNS. [IP no formato IPV4 válido, IP no formato IPV6 válido]

String

28

Gateway

Gateway. [IP no formato IPV4 válido, IP no formato IPV6 válido]

String

28

MAC

MAC do equipamento. [MAC do equipamento]

String

10

Porta de comunicação Tcp/IP

Porta de comunicação Tcp/IP. [1000 ~ 65535]

Integer

5

Conexão Segura

Indica se o Prisma deverá utilizar comunicação segura. [D, H]

String

1

IP Conexão Segura

IP que será utilizado na comunicação segura. [IP no formato IPV4 válido, IP no formato IPV6 válido]

String

28

IP do servidor

Indica ip alvo da conexão TCP cliente. [IP no formato IPV4 válido, IP no formato IPV6 válido]

String

28

Modo de comunicação

Indica se será modo cliente ou servidor. [C, S]

String

1

Configurações de eventos e quantidades

Data de atualização do Status

Informa a data da última atualização das informações de status e quantidade. [DD/MM/AAAA HH:MM:SS]

String

18

Quantidade de digitais

Informa a quantidade de digitais. [0 ~ 10000]

Integer

5

Quantidade de usuários

Informa a quantidade de usuários cadastrados. [0 ~ 50000]

Integer

5

Quantidade de registros

Informa a quantidade de registros na memória. [0 ~ 999999999]

Integer

9

Sensor de pouco papel

Informa se o sensor de pouco papel está ativado. [A, D]

String

1

Sensor está sem papel

Informa se o sensor que verifica se existe papel está ativado. [A, D]

String

1

Sensor de bloqueio

Informa se o sensor de bloqueio está ativado. [A, D]

String

1

Erro ao comunicar MRP

Informa se existe erro de cominucação com o MRP. [A, D]

String

1

Erro ao comunicar MRP

Informa se existe erro de cominucação com o MRP. [A, D]

String

1

Bobina

Quantidade de tickets restantes

Informa a quantidade de tickets que podem ser impressos pelo equipamento.

Integer

5

Tamanho atual da bobina

Informa o tamanho atual da bobina.

Integer

5

Tamanho total da bobina

Informa o tamanho total da bobina.

Integer

5

 

 

 

 

 

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.