Resumo
Este artigo ensina como liberar uma catraca com a seguite solução:
FaceIF (app android)
ServidorIF
DesktopIF (Catraca Linux)
Alteração na regra de negócio
Adicione o código abaixo na regra de negócio antes da declaração do método processCache
function sendProcessInfoToTurnstile( axios, releasesCommand, turnstileHostIP, personId, ) { axios .post( `http://${turnstileHostIP}/metodos/processinfo?deviceType=interface&info=${personId}`, ) .then(response => { console.log( 'sendProcessInfoToTurnstile', { releasesCommand, turnstileHostIP, personId }, response.data, ); }) .catch(err => { console.log('sendProcessInfoToTurnstile - Error'); console.error(err); }); //duracao do tempo que vai ser exibido no tablet releasesCommand.accessTime = 3500; return releasesCommand; }
No início do método método processCache, extraia a propriedade axios do parâmetro helpers e serialNumber da parâmetro cache. Conforme a imagem abaixo.
Ainda no método processCache, depois das validações e da manipulação da propriedade defaultResult.releasesCommand, use a função sendProcessInfoToTurnstile indicando o ip da catraca que receberá a solicitação do método /processinfo.
Esse alteração visa substituir o envio do comando liberaCatraca
Exemplo 1: Uma Catraca com dois tablets. Coloque o número de série do tablet no array. Esse código verifica se a propriedade serialNumber está contida no array de números de série dos tablets
//catraca1 = 192.168.2.108 if (['68b6912e94b8', '589a3e653834'].includes(serialNumber)) { defaultResult.releasesCommand = sendProcessInfoToTurnstile( axios, defaultResult.releasesCommand, '192.168.2.108', personId, ); }
Exemplo 2: Uma catraca com um tablet
//catraca2 = 192.168.2.125 if (serialNumber === 'e8d87eb5c840') { defaultResult.releasesCommand = sendProcessInfoToTurnstile( axios, defaultResult.releasesCommand, '192.168.2.125', personId, ); }
É recomendável que a catraca tenha ip fixo, se não houver essa possibilidade, use o hostname dela.
Este artigo foi útil?
Que bom!
Obrigado pelo seu feedback
Desculpe! Não conseguimos ajudar você
Obrigado pelo seu feedback
Feedback enviado
Agradecemos seu esforço e tentaremos corrigir o artigo