MPI/API/CmdListaLogsDeAcesso

De uTech Tecnologia
(Diferença entre revisões)
Ir para: navegação, pesquisa
(Exemplo)
 
(Uma edição intermediária de um usuário não apresentada)
Linha 63: Linha 63:
 
! style="text-align: left; font-weight: bold;" | <pre>http://ip:porta/?request=accesslog</pre>
 
! style="text-align: left; font-weight: bold;" | <pre>http://ip:porta/?request=accesslog</pre>
 
|}
 
|}
 +
 +
'''Ou com filtro de data/hora''':
 +
 +
{| class="wikitable"
 +
! style="text-align: left; font-weight: bold;" | <pre>POST /?request=accesslog HTTP/1.1
 +
Content-Type: application/json
 +
Content-Length: 20
 +
 +
{
 +
"start":"2020-04-14 00:00:00",
 +
"end":"2020-04-14 23:59:59"
 +
}
 +
</pre>
 +
|}
 +
 +
  
 
'''Resposta:'''
 
'''Resposta:'''

Edição atual tal como 19h56min de 14 de abril de 2020

Tabela de conteúdo


O comando Listar logs de acesso para buscar a lista completa de acesso do porteiro.

[editar] Comando

MÉTODO: GET

Parâmetros enviados para o Porteiro
request accesslog

POST-DATA:

Parâmetros enviados para o Porteiro via JSON
start Data inicial do filtro por data. (OPCIONAL caso necessite filtrar por data/hora)

Formato: 'YYYY-MM-DD HH-MM-SS'. Ex. 2020-01-01 08:00:00.

  • Se inserido parâmetro start, DEVE ser inserido parâmetro end.
end Data inicial do filtro por data. (OPCIONAL caso necessite filtrar por data/hora)
  • Se inserido parâmetro end, DEVE ser inserido parâmetro start.
Resposta enviada pelo o Porteiro
name Nome do usuário.
user Login do usuário.
card Identificação do cartão utilizado.
qrcode Identificação do QR Code utilizado.
rfcode Identificação do código de acesso RF 433 (controle) utilizado.
fingreprint Identificação da leitura biométrica utilizado.
time Data/Hora do acesso.
interface Interface acessada pelo usuário.
  • 1: Interface de acionamento 1 do porteiro.
  • 2: Interface de acionamento 2 do porteiro.
  • 3 a 32: Interface de acionamento externo. Leitor ou Porteiro slave. Ver Leitores Externos
granted Status do acesso:
  • true: Acesso liberado
  • false: Acesso Bloqueado
granted Indica se o acesse é de um usuário cadastrada com visitante:
  • true: Acesso de visitante.
  • false: Não é acesso de visitante

[editar] Exemplo

http://ip:porta/?request=accesslog

Ou com filtro de data/hora:

POST /?request=accesslog HTTP/1.1
Content-Type: application/json
Content-Length: 20

{
 "start":"2020-04-14 00:00:00",
 "end":"2020-04-14 23:59:59"
}


Resposta:

  • 400 => Parâmetros incorretos
  • 401 => Erro de autenticação da API
  • 200 => OK
 
Content-Type: application/json
 
[
  {
    "name":"Usuario desconhecido",
    "user":"",
    "card":"12121212",
    "qrcode":"",
    "rfcode":"",
    "fingerprint":"",
    "time":"2017-12-27 14:59:57",
    "interface": "1",
    "granted:":"false",
    "visitor":"false"
  },
  {
    "name":"Usuario desconhecido",
    "user":"",
    "card":"12121212",
    "qrcode":"",
    "rfcode":"",
    "fingerprint":"",
    "time":"2017-12-27 14:59:52",
    "interface": "3",
    "granted:":"false",
    "visitor":"false"
  }
]



[editar] PHP

<?php
 
$user = "utech";
$pass = "1234";
$port = "8080";
$ipaddr = "10.0.0.1";
 
$data = array(
    "start" => "2020-04-14 00:00:00",
    "end"   => "2020-04-14 23:59:59"
);
 
$data_string = json_encode($data,JSON_UNESCAPED_SLASHES);
$url = "$ipaddr:$port?request=accesslog";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, "$user:$pass");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Content-Type: application/json',
    'Content-Length: ' . strlen($data_string))
);
 
$result = curl_exec($ch);
if(!$result) {
    echo "error!\n";
    return 2;
}
 
$fs = preg_replace("/<html><body>/", "", "$result");
$rc = preg_replace("/<\/body><\/html>/", "", "$fs")
 
switch($rc) {
 
    case "400":
        echo "400 => Parametros Invalidos\n";
    break;
 
    case "401":
        echo "401 => Erro de autenticação da API\n";
    break;
 
    case "500":
        echo "500 => Falha no comando\n";
    break;
 
    case "200":
        echo "200 => OK\n";
        print_r($result);
    break;
 
    default:
        echo "Return Code: $rc\n";
}
 
?>




Voltar


Ferramentas pessoais
Espaços nominais

Variantes
Visualizações
Ações
Navegação
Ferramentas