Histórico da Página
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.
Particularidades a implementar:
- 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:- Requisição RA → Pede ao equipamento qual a chave pública
- Resposta RA ← Recebe a chave RSA 1024 encriptada em Base64
- TSA Gera uma chave AES/CBC 128
- Requisição EA → Envia ao REP qual a chave que o TSA irá se comunicar com o equipamento durante a sessão, junto com um login e senha de autenticação no dispositivo
- Resposta 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.
- Criar/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:
Acessar o IP do equipamento pelo Browser (Ex: http://192.168.10.10/)
Se logar utilizando o usuário: rep e a senha: 123456.
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
Configurar na tela de manutenção de dispositivos do TSA o usuário e senha configurado no equipamento
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 replicadas no REP Hexa. Desde que o módulo biométrico seja do mesmo tipo e possua a mesma sensibilidade de leitura.
* Este requisito homologa apenas o padrão biométrico suprema.
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. |
---|