API EXCLUSIVA PARA CONTROLADORA CT 3000
Configurações de Credenciais de Biometria
Captura Remota de Digital

Captura Remota de Biometria digital

Por meio da função abaixo o dispositivo entra em modo de captura de biometria digital, sendo exibida a tela padrão de captura via interface do dispositivo. A hash do resultado da captura será retornado nos eventos (EventManager, por exemplo).

⚠️

Utilize os serviços de eventos para receber a hash da biometria capturada. Pode ser tanto via eventManager quando Servidor de Envio de Eventos ou Modo Online.

Requisição - GET

http://192.168.1.201/cgi-bin/accessControl.cgi?action=captureFingerprint&info.ReaderID=1&info.FingerPrintName=Johnatan&info.UserID=1&heartbeat=5&timeout=10

paramtypedescription
captureFingerprint *StringComando para Captura da Biometria
ReaderID *StringID do Leitor, exemplo: 1
FingerPrintName *StringNome do Usuário para Identificação
timeout *StringID do Usuário (Será retornado na chamada)

Exemplo de Retorno - text/plain

--myboundary
Content-Type: text/plain
Content-Disposition: form-data; name="info"
 
{
    "Events": [
        {
            "Action": "Start",
            "Code": "_FingerPrintCollect_",
            "Data": {
                "info": {
                    "FingerPrintName": "Johnatan",
                    "ReaderID": "1",
                    "UserID": "1"
                },
                "RealUTC": 1723754925,
                "Type": "Remote",
                "UTC": 1723754925
            },
            "Index": 0,
            "PhysicalAddress": "24:52:6a:a6:8e:81",
            "Time": "15-08-2024 17:48:45"
        }
    ]
}
 
--myboundary--
--myboundary
Content-Type: text/plain
Content-Disposition: form-data; name="info"
 
{
    "Events": [
        {
            "Action": "Pulse",
            "Code": "FingerprintState",
            "Data": {
                "CaptureTimes": 1,
                "CollectResult": false,
                "RealUTC": 1723754930,
                "UTC": 1723754930
            },
            "Index": 0,
            "PhysicalAddress": "24:52:6a:a6:8e:81",
            "Time": "15-08-2024 17:48:50"
        }
    ]
}
 
--myboundary--
--myboundary
Content-Type: text/plain
Content-Disposition: form-data; name="info"
 
{
    "Events": [
        {
            "Action": "Pulse",
            "Code": "FingerprintState",
            "Data": {
                "CaptureTimes": 2,
                "CollectResult": false,
                "RealUTC": 1723754937,
                "UTC": 1723754937
            },
            "Index": 0,
            "PhysicalAddress": "24:52:6a:a6:8e:81",
            "Time": "15-08-2024 17:48:57"
        }
    ]
}
 
--myboundary--
--myboundary
Content-Type: text/plain
Content-Disposition: form-data; name="info"
 
{
    "Events": [
        {
            "Action": "Pulse",
            "Code": "Fingerprint",
            "Data": {
                "CollectResult": true,
                "FingerprintData": "{{FingerprintData}}",
                "FingerprintPacket": {
                    "Count": 1,
                    "Length": 810
                },
                "RealUTC": 1723754941,
                "UTC": 1723754941
            },
            "Index": 0,
            "PhysicalAddress": "24:52:6a:a6:8e:81",
            "Time": "15-08-2024 17:49:01"
        }
    ]
}
 
--myboundary--
 
⚠️

Importante: Para o cadastro correto do template recebido em FingerPrintData, deverá ser realizado o tratamento dos dados para que possuam 1080 caracteres. Desta forma deve ser removido o contra barra " \ " dos dados retornados.

Após o valor de FingerPrintData deverá possuir 1080 caracteres, permitindo assim o cadastro da digital utilizando a função Cadastro de Biometria Digital.

Exemplos

import requests
 
device_ip = '10.1.35.144'
username = 'admin'
password = 'intelbras'
 
url = "http://{}/cgi-bin/accessControl.cgi?action=captureFingerprint&info.ReaderID=1&info.FingerPrintName=Johnatan&info.UserID=1&heartbeat=5&timeout=10".format(
                        str(device_ip),
                    )
 
digest_auth = requests.auth.HTTPDigestAuth(username, password)
rval = requests.get(url, auth=digest_auth, stream=True, timeout=20, verify=False)
 
print(rval.text)