MLI/API/CmdAdicionarUsuario
De uTech Tecnologia
(Diferença entre revisões)
(Criou página com ' __TOC__ O comando '''Adicionar usuário''' é utilizado inserir um usuário no controle de acesso do leitor == Comando == <BR\> '''MÉTODO:''' <span style="color:red">'''P...') |
(→Comando) |
||
(18 edições intermediárias de um usuário não apresentadas) | |||
Linha 3: | Linha 3: | ||
O comando '''Adicionar usuário''' é utilizado inserir um usuário no controle de acesso do leitor | O comando '''Adicionar usuário''' é utilizado inserir um usuário no controle de acesso do leitor | ||
− | + | {| style="width: 100%; background-color: orange;" | |
+ | | | ||
+ | * '''Este comando DEVE ser síncrono. DEVE-SE executar e esperar sua resposta antes de enviar qualquer outro comando para o leitor'''. | ||
+ | * '''No caso configuração biométrica cadastrada, este comando irá demorar pelo menos 500ms'''. | ||
+ | |} | ||
== Comando == | == Comando == | ||
Linha 10: | Linha 14: | ||
{| class="wikitable" width="65%" | {| class="wikitable" width="65%" | ||
− | ! align="center" colspan="2" | Parâmetros enviados para o | + | ! align="center" colspan="2" | Parâmetros enviados para o Leitor |
|- | |- | ||
| align="left"| '''request''' || '''adduser''' | | align="left"| '''request''' || '''adduser''' | ||
Linha 18: | Linha 22: | ||
{| class="wikitable" width="65%" | {| class="wikitable" width="65%" | ||
− | ! align="center" colspan="2" | Parâmetros enviados para o | + | ! align="center" colspan="2" | Parâmetros enviados para o Leitor via JSON |
|- | |- | ||
− | | align="left"| name || Nome do usuário. | + | | align="left"| name || Nome do usuário. Tamanho máximo 64 caracteres. |
|- | |- | ||
− | | align="left"| user || Login do usuário. | + | | align="left"| user || Login do usuário. Tamanho máximo 20 caracteres. |
|- | |- | ||
− | | align="left"| password || Senha do usuário. | + | | align="left"| password || Senha do usuário. Tamanho máximo 20 caracteres. |
|- | |- | ||
− | | align="left"| card || Identificação de acesso via cartão '''MIFARE / NFC''' | + | | align="left"| card || Identificação de acesso via cartão '''MIFARE / NFC'''. Tamanho máximo 32 caracteres. |
|- | |- | ||
− | | align="left"| qrcode || Identificação de acesso via '''QR Code''' | + | | align="left"| qrcode || Identificação de acesso via '''QR Code'''. Tamanho máximo 128 caracteres. |
|- | |- | ||
− | | align="left"| rfcode || Identificação de acesso via '''RF 433''' (Controle) | + | | align="left"| rfcode || Identificação de acesso via '''RF 433''' (Controle). Tamanho máximo 16 caracteres. |
|- | |- | ||
− | | align="left"| fingerprint || Identificação de acesso via '''biometria''' | + | | align="left"| fingerprint || Identificação de acesso via '''biometria'''. (Tamanho proprietário do sistema - Utilizar somente o profile gerado pelo sistema) |
− | + | ||
− | + | ||
|- | |- | ||
| align="left"| perm1 || Permissão de acesso 1 - Veja mais sobre as permissões no link: [[MPI/PermissõesDeAcesso]] | | align="left"| perm1 || Permissão de acesso 1 - Veja mais sobre as permissões no link: [[MPI/PermissõesDeAcesso]] | ||
Linha 48: | Linha 50: | ||
| align="left"| lifecount || Define a quantidade de vezes que o usuário terá o acesso liberado no leitor. Depois de N vezes, o usuário será automaticamente removido. O Valor zero (0) define como ilimitado. | | align="left"| lifecount || Define a quantidade de vezes que o usuário terá o acesso liberado no leitor. Depois de N vezes, o usuário será automaticamente removido. O Valor zero (0) define como ilimitado. | ||
|- | |- | ||
− | | align="left"| accessibility || Define que o usuário criado terá configurações de acessibilidade. Como por exemplo o tempo de acionamento da porta para acessibilidade. Ver docs. menu [[ | + | | align="left"| accessibility || Define que o usuário criado terá configurações de acessibilidade. Como por exemplo o tempo de acionamento da porta para acessibilidade. Ver docs. menu [[MLI/ConfiguracaoWEB#Submenu_Interface_1_.2F_Interface_2|'''Controle de Acesso - Interface 1/2''']]. |
|- | |- | ||
| align="left"| panic || Se habilitado, define que esse usuário é associado a função pânico. Toda vez que sua ''tag'', biometria, ''QR code'', etc..., for detectada, a função pânico será ativada. | | align="left"| panic || Se habilitado, define que esse usuário é associado a função pânico. Toda vez que sua ''tag'', biometria, ''QR code'', etc..., for detectada, a função pânico será ativada. | ||
|- | |- | ||
− | | align="left"| key || Permite cadastrar a '''chave primária''' do integrador para manipulação de usuários. | + | | align="left"| key || Permite cadastrar a '''chave primária''' do integrador para manipulação de usuários. Tamanho máximo 16 caracteres. |
|- | |- | ||
− | | align="left"| | + | | align="left"| administrator || Define se o usuário terá permissões de administrados. Usuário administrador poderá utilizar funções de configurações da placa, omo inserir novos usuários. |
− | * '' | + | * '''true''': Usuário com permissão de administrador |
− | * ''' | + | * '''false''': Usuário sem permissão de administrador. |
− | * ''' | + | |- |
− | ''' | + | | align="left"| visitor || Define se o usuário é visitante ou não. |
− | + | * '''true''': É visitante. | |
− | + | * '''false''': Não é visitante. | |
− | + | |- | |
− | + | | align="left"| finger || Identificação do dedo utilizado na biometria. Este campo '''DEVE'''. É utilizado uma letra para identificação do dedo: | |
− | + | * '''0''': Dedo não definido. | |
− | + | * '''A''': Dedo polegar direito. | |
− | ''' | + | * '''B''': Dedo indicador direito. |
− | + | * '''C''': Dedo médio direito. | |
+ | * '''D''': Dedo anelar direito. | ||
+ | * '''E''': Dedo mínimo direito. | ||
+ | * '''F''': Dedo polegar esquerdo. | ||
+ | * '''G''': Dedo indicador esquerdo. | ||
+ | * '''H''': Dedo médio esquerdo. | ||
+ | * '''I''': Dedo anelar esquerdo. | ||
+ | * '''J''': Dedo mínimo esquerdo. | ||
|} | |} | ||
+ | |||
+ | |||
+ | '''Resposta:''' | ||
+ | |||
+ | A resposta será um '''JSON''' com o '''id''' da base do Porteiro e com a chave primária ('''key''') enviada no comando, conforme mostrado abaixo: | ||
+ | <BR> | ||
+ | '''{"id":"1","key":"26ab0d"} | ||
+ | <BR> | ||
+ | |||
+ | <BR> | ||
== Exemplo == | == Exemplo == | ||
Linha 82: | Linha 101: | ||
"card":"af23d66", | "card":"af23d66", | ||
"qrcode":"b15c4", | "qrcode":"b15c4", | ||
− | |||
"lifecount":"0", | "lifecount":"0", | ||
"accessibility":"false", | "accessibility":"false", | ||
"panic":"false", | "panic":"false", | ||
− | " | + | "perm1":"1-5 0:0-23:17" |
− | " | + | "key":"26ab0d" |
} | } | ||
</pre> | </pre> | ||
|} | |} | ||
+ | |||
'''Resposta:''' | '''Resposta:''' | ||
+ | |||
+ | |||
+ | {| class="wikitable" | ||
+ | ! style="text-align: left; font-weight: bold;" | <pre> | ||
+ | HTTP/1.1 200 OK | ||
+ | Content-Length: 25 | ||
+ | Content-Type: application/json; charset=iso-8859-1 | ||
+ | Date: Wed, 03 Jan 2007 21:52:54 GMT | ||
+ | |||
+ | {"id":"1","key":"26ab0d"} | ||
+ | </pre> | ||
+ | |} | ||
+ | |||
+ | '''Return code:''' | ||
* '''400''' => Parâmetros incorretos | * '''400''' => Parâmetros incorretos | ||
Linha 124: | Linha 157: | ||
"panic" => "false", | "panic" => "false", | ||
"key" => "26ab0d", | "key" => "26ab0d", | ||
+ | "perm1" => "0-1 0:0-23:17" | ||
"interface" => "0000007f" | "interface" => "0000007f" | ||
); | ); | ||
− | $data_string = json_encode($data); | + | $data_string = json_encode($data,JSON_UNESCAPED_SLASHES); |
$url = "$ipaddr:$port?request=adduser"; | $url = "$ipaddr:$port?request=adduser"; | ||
$ch = curl_init($url); | $ch = curl_init($url); | ||
Linha 178: | Linha 212: | ||
<br/> | <br/> | ||
<br/> | <br/> | ||
− | [[ | + | [[MLI/API#Comandos|'''Voltar''']] |
----- | ----- |
Edição atual tal como 14h48min de 30 de março de 2021
Tabela de conteúdo |
O comando Adicionar usuário é utilizado inserir um usuário no controle de acesso do leitor
|
[editar] Comando
MÉTODO: POST
Parâmetros enviados para o Leitor | |
---|---|
request | adduser |
POST-DATA:
Parâmetros enviados para o Leitor via JSON | |
---|---|
name | Nome do usuário. Tamanho máximo 64 caracteres. |
user | Login do usuário. Tamanho máximo 20 caracteres. |
password | Senha do usuário. Tamanho máximo 20 caracteres. |
card | Identificação de acesso via cartão MIFARE / NFC. Tamanho máximo 32 caracteres. |
qrcode | Identificação de acesso via QR Code. Tamanho máximo 128 caracteres. |
rfcode | Identificação de acesso via RF 433 (Controle). Tamanho máximo 16 caracteres. |
fingerprint | Identificação de acesso via biometria. (Tamanho proprietário do sistema - Utilizar somente o profile gerado pelo sistema) |
perm1 | Permissão de acesso 1 - Veja mais sobre as permissões no link: MPI/PermissõesDeAcesso |
perm2 | Permissão de acesso 2 - Veja mais sobre as permissões no link: MPI/PermissõesDeAcesso |
perm3 | Permissão de acesso 3 - Veja mais sobre as permissões no link: MPI/PermissõesDeAcesso |
perm4 | Permissão de acesso 4 - Veja mais sobre as permissões no link: MPI/PermissõesDeAcesso |
perm5 | Permissão de acesso 5 - Veja mais sobre as permissões no link: MPI/PermissõesDeAcesso |
lifecount | Define a quantidade de vezes que o usuário terá o acesso liberado no leitor. Depois de N vezes, o usuário será automaticamente removido. O Valor zero (0) define como ilimitado. |
accessibility | Define que o usuário criado terá configurações de acessibilidade. Como por exemplo o tempo de acionamento da porta para acessibilidade. Ver docs. menu Controle de Acesso - Interface 1/2. |
panic | Se habilitado, define que esse usuário é associado a função pânico. Toda vez que sua tag, biometria, QR code, etc..., for detectada, a função pânico será ativada. |
key | Permite cadastrar a chave primária do integrador para manipulação de usuários. Tamanho máximo 16 caracteres. |
administrator | Define se o usuário terá permissões de administrados. Usuário administrador poderá utilizar funções de configurações da placa, omo inserir novos usuários.
|
visitor | Define se o usuário é visitante ou não.
|
finger | Identificação do dedo utilizado na biometria. Este campo DEVE. É utilizado uma letra para identificação do dedo:
|
Resposta:
A resposta será um JSON com o id da base do Porteiro e com a chave primária (key) enviada no comando, conforme mostrado abaixo:
{"id":"1","key":"26ab0d"}
[editar] Exemplo
POST /?request=adduser HTTP/1.1 Content-Type: application/json Content-Length: 167 {"name":"Teste", "user":"1005", "password":"8989", "card":"af23d66", "qrcode":"b15c4", "lifecount":"0", "accessibility":"false", "panic":"false", "perm1":"1-5 0:0-23:17" "key":"26ab0d" } |
---|
Resposta:
HTTP/1.1 200 OK Content-Length: 25 Content-Type: application/json; charset=iso-8859-1 Date: Wed, 03 Jan 2007 21:52:54 GMT {"id":"1","key":"26ab0d"} |
---|
Return code:
- 400 => Parâmetros incorretos
- 401 => Erro de autenticação da API
- 500 => Falha no comando
- 200 => OK
[editar] PHP
<?php $user = "utech"; $pass = "1234"; $port = "8080"; $ipaddr = "10.0.0.1"; $data = array( "name" => "Arilson Gilberto da Costa", "user" => "1005", "password" => "8989", "card" => "af23d66529acbd", "qrcode" => "b15c4c36b924645d023c2f13dec7a028", "validity:" => "0", "lifecount" => "0", "accessibility" => "false", "panic" => "false", "key" => "26ab0d", "perm1" => "0-1 0:0-23:17" "interface" => "0000007f" ); $data_string = json_encode($data,JSON_UNESCAPED_SLASHES); $url = "$ipaddr:$port?request=adduser"; $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"; break; default: echo "Return Code: $rc\n"; } ?> |