Biometria Nitgen
NOTA: BIOMETRIA NÃO FUNCIONA VIA ACESSO TS (Clientes datacenter ou ts próprio)
Este documento descreve os processos de instalação e uso do sistema biométrico baseado na engine da Nitgen. Versão do documento: 0.1 Documento destinado aos programadores Programador, para a utilização direta dos links nesta pagina, adicione a seguinte linha ao seu hosts: 10.1.1.10 uniware-lda.no-ip.net
Índice
Visão Geral
O sistema biométrico ENBioBSP (baseado na engine da Nitgen) funciona de forma independente, ou seja, um módulo mão interfere no funcionamento do outro. Esta independência permite que duas ou mais aplicações que utilizem este sistema possam rodar simultaneamente no mesmo terminal, por exemplo o Unilab rodando com biometria na maquina que também é o servidor do mysql (laboratórios com apenas 1 ou 2 terminais) ou ainda dois Unilabs no mesmo terminal (vai saber o motivo).
A codificação do registro de impressões digitais (FIR - Finger Identifier Record) é executada pela própria interface do Unilab, e o registro salvo no banco. Como a licença da API é livre, não há necessidade de um servidor de conversão o que torna todo o processo mais rápido.
O módulo myENBioBSP (API da Uniware instalada no mysql) esta disponível para os sistemas Windows e Linux nas plataformas x86 e x64.
- Binarios
Host | Diretório | Compartilhamento |
uniware-files1 | /disks/dados1/uniware-shareds/files/desenvolvimento/storage/Linux-desenvolvimento/Biometria-nitgen-2017 | \\uniware-files1\storage-r\Linux-desenvolvimento |
uniware-files1 | /disks/dados1/uniware-shareds/files/desenvolvimento/distribuicao/UnilabVersoes/Biometria/Nitgen | \\uniware-files1\distribuicao-r\UnilabVersoes\Biometria\Nitgen |
HTTP | http://uniware.net.br/nitgen | --*-- |
SDK NBioBSP
O SDK NBioBSP é o conjunto de softwares da Nitgen que contem a engine para a codificação dos registros de impressões digitais (FIR) e a API que permite a integração das aplicações com esta engine.
Módulo myENBioBSP
O modulo myENBioBSP consiste em uma biblioteca de ligação dinâmica ('dll' no windows e 'so' no linux) escrita para ser integrada ao banco de dados MySQL na forma de plugin, disponibilizando as funções:
FIRCOMP - Compara dois registros FIR retornando 1 para confere e 0 para não confere
NitgenStatus - Le o código de status do módulo myENBioBSP
Código Fonte
O Código fonte do sistema biométrico do Unilab esta postado no SVN e organizado conforme a finalidade e linguagem em que foi escrito. A tabela abaixo mostra a localização de cada parte do código:
Linguagem | Modulo | Aplicação | Localização |
Delphi 5 | Interface da Aplicação | Captura e Codificação de FIR | CVS\_d5_sharedforms\eNBioBSP_API |
Delphi 5(x86)XE(x64) | Módulo myENBioBSP (windows) | MySQL verificação de FIR | CVS\uniware\Biometria-Nitgen-2017 |
C++ | Módulo myENBioBSP (Linux) | MySQL verificação de FIR | CVS_OutrasLinguagens\cpp\projetos-nb\myENBioBSP |
O SDK deve ser instalado na máquina terminar que vai ficar a biometria, recomendado instalar 32bits e 64bits, porem a que funciona é 32bits independente da versão do sistema terminal do cliente
Instalação do SDK NBioBSP No Windows
1) Baixar o pacote de instalação do SDK e instalar na maquina onde ficará o leitor biométrico. - MESMO QUE A MÁQUINA SEJA 64 BITS, DEVE SER INSTALADO SEMPRE O 32BITS
2) Instalar o SDK correspondente.(COM O 32BITS FUNCIONA).
Ao extrair o arquivo baixado enbiobsp_sdk_v4.890-win-x86, dentro da pasta terão outras duas pastas ( "manual" e "x86") e o serial.txt. Abra a pasta "x86" e execute o "setup.exe".
Na instalação pedirá um usuário, nome da empresa (dá qual ambos podem ser preenchidos nomes genéricos) e o serial. Abra o "serial.txt", copie e cole na instalação.
O restante é somente ir avançando para concluir.
Use o serial que acompanha o pacote para registrar a API; A licença é livre.
- Nota: A plataforma do SDK deve ser a mesma do Banco de Dados e quando for o caso do driver do dispositivo. (DESCONSIDERAR, tentar sempre com o 32bits primeiro
Instalação do Módulo myNBioBSP No Windows
- Requer SDK da Nitgen previamente instalado.
1) Baixar o pacote do módulo myENBioBSP correspondente no servidor (onde se encontra o banco de dados instalado) - MESMO QUE A MÁQUINA SEJA 64 BITS, DEVE SER INSTALADO SEMPRE O 32BITS
Nota: O pacote deve ser compatível com a plataforma do SDK e do MySQL
2) Descompacte o arquivo baixado.
3) Copie o arquivo myENBioBSP.dll para a pasta bin do MySQL (onde se localiza o mysqld.exe)O passo abaixo não precisa ser feito dessa forma, pode ser realizado diretamente pelo UnilabTool.exe da pasta "Uniwarew", basta conecta-lo antes.4) Acesse a pasta bin do MySQL e abra o prompt do DOS nesta pasta
5) Acesse o banco de dados
mysql -uUNIWARE -p -P3309
Digite a senha padrão para o usuário UNIWARE
6) Ative as funções do módulo (Pode ser feito pelo UnilabTools).
mysql> CREATE FUNCTION FIRCOMP RETURNS INTEGER SONAME "myENbioBSP.dll"; <Enter> mysql> CREATE FUNCTION NitgenStatus RETURNS INTEGER SONAME "myENbioBSP.dll"; <Enter>
No cliente 00422 a dll x64 retornava erro, então caso de erro, troque para a dll x86 e refaça a operação.
7) Sair do mysql - Se estiver feito o procedimento pelo UnilabTools, basta fechar.
mysql> quit; <Enter>
8) Reiniciar o MySQL. (Services.msc)
9) Testar se esta tudo Ok, execute os comandos abaixo no prompt do DOS (pasta bin do MySQL)
Digite a senha padrão para o usuário UNIWARE. mysql -uUNIWARE -e "SELECT NitgenStatus()" --port=3309 -p Deve retornar o valor 12. mysql -uUNIWARE -e "SELECT FIRCOMP(1,1)" --port=3309 -p Deve retornar o valor 52.
OBS: No cliente 00422 o valor retornado para "mysql -uUNIWARE -e "SELECT NitgenStatus()" --port=3309 -p" foi de 0 e para "mysql -uUNIWARE -e "SELECT FIRCOMP(1,1)" --port=3309 -p" foi de 50.
Peça ao cliente para conectar o leitor biométrico na máquina, instale o driver da mesma.
http://www.fingertech.com.br/Content/Uploads/Downloads/manual_hamsterDX_III.pdf
Concluído, basta agora configurar dentro do Unilab a biometria.
Instalação do SDK NBioBSP No Linux
1) Abra o terminal de comando
2) Mude para usuário root
$ su
- Verificar a versão do sistema usar uname -r
- Installar o 7zip usar o comando: apt-get install p7zip-full
3) Crie uma nova pasta e entre nela
# mkdir nit # chmod 777 nit # cd nit
4) Baixar o pacote de instalação do SDK correspondente
Nota: Não funciona em LINUX 32bits
Plataforma | Link |
x64 | http://uniware.net.br/nitgen/linux-x64/Nitgen_SDK_eNBSP-1.8.5-1_(x64_linux-install).7z |
(use o endereço do pacote desejado) # wget http://uniware.net.br/nitgen/linux-x64/Nitgen_SDK_eNBSP-1.8.5-1_(x64_linux-install).7z
2) Descompactar o pacote
(Dica: Apos digitar as primeiras 3 ou 4 letras
do nome do arquivo, tecle TAB para completar.)
# 7z x Nitgen_SDK_eNBSP-1.8.5-1_x64_linux-install.7z
3) Acessar o diretório extraido do pacote
# cd eNBSP-1.8.5-1/
4) Instalar o SDK
# ./install.sh
5) Registrar a API (aplicar a licença)
(mostra na tela do terminal o serial para registro) # cat SERIAL.TXT (executa a aplicação de registro) # ./NBioBSP_Signer (o NBioBSP_Signer solicitará o número de série, informe o numero mostrado no comando anterior.)
Concluido
Instalação do Módulo myNBioBSP No Linux
- Requer SDK da Nitgem previamente instalado
1) Abra o terminal de comando e mude para o usuário root
$ su
2) Crie um diretório novo (temporario), e acesse este diretório
# mkdir bioinst # cd bioinst/
3) Baixe o pacote de instalação do módulo myENBioBSP para linux
Plataforma | Link |
MySQL x64 | http://uniware.net.br/nitgen/linux-x64/myENBioBSP-x64-install.7z |
MariaDB x64 | http://uniware.net.br/nitgen/linux-x64/myENBioBSP-x64-install_maria.7z |
# wget http://uniware.net.br/nitgen/linux-x64/myENBioBSP-x64-install.7z
4) Descompacte o arquivo baixado
# 7z x myENBioBSP-x64-install.7z
PS: Alterar de L maiuculo para l minusculo utilizando o nano ./install.sh NA LINHA "IF [ ! -l /LIB/LIBnbIObsp.SO ......."
5) Acesse a pasta myENBioBSP-x64-install, e execute o instalador
# cd myENBioBSP-x64-install # ./install.sh
6) Acesse o banco de dados
> mysql -uUNIWARE -p
Digite a senha padrão para o usuário UNIWARE
7) Ative as funções do módulo // O Unilab cria as funções quando ativa a biometria.
mysql> CREATE FUNCTION FIRCOMP RETURNS INTEGER SONAME "myENBioBSP.so"; <Enter> mysql> CREATE FUNCTION NitgenStatus RETURNS INTEGER SONAME "myENBioBSP.so"; <Enter>
mysql> quit
8) Reiniciar o Mysql
# /etc/init.d/mysql restart
9) Testar se esta tudo Ok, execute os comandos abaixo no prompt
Digite a senha padrão para o usuário UNIWARE. mysql -uUNIWARE -e "SELECT NitgenStatus()" --port=3309 -p Deve retornar o valor 12. mysql -uUNIWARE -e "SELECT FIRCOMP(1,1)" --port=3309 -p Deve retornar o valor 11.
10) Finalizando, exclua o diretório temporário
# cd ../../ # rm -rf bioinst
Concluido.
Interface Aplicação Código de exemplo
Estão disponíveis dois exemplos de aplicação que demonstram o uso da interface de captura (svn:CVS\_d5_sharedforms\eNBioBSP_API), estes exemplos estão postados em svn:CVS_Exemplos\D5\Biometria-Nitgen-2017