MPI/API/CmdAdicionarUsuarioAuto
De uTech Tecnologia
(Diferença entre revisões)
(→PHP) |
(→Comando) |
||
(4 edições intermediárias de um usuário não apresentadas) | |||
Linha 2: | Linha 2: | ||
__TOC__ | __TOC__ | ||
− | O comando '''Adicionar usuário automaticamente''' é enviado para o porteiro solicitando a inclusão automática de um novo usuário. Será inserido automaticamente um usuário com os dados do próximo cartão ou QR Code lido pelo porteiro. | + | O comando '''Adicionar usuário automaticamente''' é enviado para o porteiro solicitando a inclusão automática de um novo usuário. Será inserido automaticamente um usuário com os dados do próximo cartão ou QR Code lido pelo porteiro.<BR> |
+ | Se informado, no comando um dos parâmetros '''id''', '''user''', '''card''', '''qrcode''', '''rfcode''' ou '''fingerprint''', de um usuário já cadastrado, a TAG lida será adicionada neste usuário. | ||
== Comando == | == Comando == | ||
Linha 13: | Linha 14: | ||
| align="left"| '''request''' || '''probeuser''' | | align="left"| '''request''' || '''probeuser''' | ||
|- | |- | ||
− | | align="left"| ''' | + | | align="left"| '''interface''' || Interface onde será lido o Cartão/QR Code. |
* '''1''': Interface 1. | * '''1''': Interface 1. | ||
* '''2''': Interface 2. | * '''2''': Interface 2. | ||
− | * '''3 a 22 | + | * '''3 a 22''': Interfaces externas (Ver menu [[MPI/ConfiguracaoWEB#Leitores|'''Leitores''']] |
|- | |- | ||
| align="left"| '''state''' || Define se é para habilitar ou desabilitar a leitura e inclusão. | | align="left"| '''state''' || Define se é para habilitar ou desabilitar a leitura e inclusão. | ||
Linha 27: | Linha 28: | ||
{| style="width: 100%; background-color: orange;" | {| style="width: 100%; background-color: orange;" | ||
− | | '''NOTA''': Pelo menos, um dos parâmetros '''user | + | | '''NOTA''': Pelo menos, um dos parâmetros '''user''' ou '''id''' '''DEVE''' ser enviado no comando para que o porteiro identifique qual usuário está sendo lido/associada.<BR>Caso não seja passado nenhum valor neste campo, será inserido um '''novo usuário''' com o cartão ou QR Code lido. |
|} | |} | ||
Linha 136: | Linha 137: | ||
$url = "$ipaddr:$port?request=probeuser&interface=1&state=on"; | $url = "$ipaddr:$port?request=probeuser&interface=1&state=on"; | ||
$ch = curl_init($url); | $ch = curl_init($url); | ||
+ | $data_string = json_encode($data); | ||
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); | curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); | ||
curl_setopt($ch, CURLOPT_USERPWD, "$user:$pass"); | curl_setopt($ch, CURLOPT_USERPWD, "$user:$pass"); |
Edição atual tal como 13h04min de 11 de junho de 2024
Tabela de conteúdo |
O comando Adicionar usuário automaticamente é enviado para o porteiro solicitando a inclusão automática de um novo usuário. Será inserido automaticamente um usuário com os dados do próximo cartão ou QR Code lido pelo porteiro.
Se informado, no comando um dos parâmetros id, user, card, qrcode, rfcode ou fingerprint, de um usuário já cadastrado, a TAG lida será adicionada neste usuário.
[editar] Comando
MÉTODO: GET
Parâmetros enviados para o Porteiro | |
---|---|
request | probeuser |
interface | Interface onde será lido o Cartão/QR Code.
|
state | Define se é para habilitar ou desabilitar a leitura e inclusão.
|
POST-DATA:
NOTA: Pelo menos, um dos parâmetros user ou id DEVE ser enviado no comando para que o porteiro identifique qual usuário está sendo lido/associada. Caso não seja passado nenhum valor neste campo, será inserido um novo usuário com o cartão ou QR Code lido. |
Parâmetros enviados para o Porteiro via JSON | |
---|---|
id | id do usuário, listado nos comandos CmdCheckUser, CmdListarUsuarios ou CmdGetUser. |
user | Login do usuário, previamente configurado no comando CmdAdicionarUsuario. |
card | Cartão NFC/Mifire do usuário, previamente configurado no comando CmdAdicionarUsuario. |
qrcode | QR Code do usuário, previamente configurado no comando CmdAdicionarUsuario. |
rfcode | Código RF do usuário, previamente configurado no comando CmdAdicionarUsuario. |
fingerprint | Identificação/template da identificação biométrica. |
[editar] Exemplo
- Sem dados de usuários: (Inserindo novo usuário)
http://ip:porta/?request=probeuser&state=on |
---|
- Com dados do usuário (Inserindo um cartão/QR code em um usuário já castrado)
POST/? request=probeuser&interface=1&state=on HTTP/1.1 Content-Type: application/json Content-Length: { "user":"1000" } |
---|
Resposta:
- 400 => Parâmetros incorretos
- 401 => Erro de autenticação da API
- 500 => Falha no comando
- 200 => OK
[editar] PHP
[editar] Exemplo sem selecionar usuário
<?php $user = "utech"; $pass = "1234"; $port = "8080"; $ipaddr = "10.0.0.1"; $url = ""; $url = "$ipaddr:$port?request=probeuser&state=on"; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); curl_setopt($ch, CURLOPT_USERPWD, "$user:$pass"); $result = curl_exec($ch); if(!$result) { echo "error!\n"; return 2; } $fs = preg_replace("/<html><body>/", "", "$result"); $rc = preg_replace("/<\/body><\/html>/", "", "$fs"); echo "Return Status:[$rc]\n"; ?> |
[editar] Exemplo selecionando o usuário
<?php $user = "utech"; $pass = "1234"; $port = "8080"; $ipaddr = "10.0.0.1"; $data = array( "user" => "1005" ); $url = ""; $url = "$ipaddr:$port?request=probeuser&interface=1&state=on"; $ch = curl_init($url); $data_string = json_encode($data); 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"); echo "Return Status:[$rc]\n"; ?> |