MPI/API/EvtMifireNFC
De uTech Tecnologia
(Diferença entre revisões)
(→Buitl-in Respose) |
(→PHP) |
||
Linha 113: | Linha 113: | ||
== PHP == | == PHP == | ||
+ | |||
+ | == Evento Simples == | ||
+ | |||
{| class="wikitable" width="65%" | {| class="wikitable" width="65%" | ||
| | | | ||
Linha 138: | Linha 141: | ||
</source> | </source> | ||
|} | |} | ||
+ | |||
+ | |||
+ | |||
+ | == Evento com Resposta Built-in == | ||
+ | |||
+ | {| class="wikitable" width="65%" | ||
+ | | | ||
+ | <source lang="php"> | ||
+ | <?php | ||
+ | |||
+ | |||
+ | $CARD_DO_USUARIO=1234; | ||
+ | |||
+ | $vars = $_REQUEST; | ||
+ | |||
+ | if(!isset($vars)) | ||
+ | exit(0); | ||
+ | |||
+ | if(isset($vars['request']) && strcmp($vars['request'],"card") == 0) | ||
+ | $event = $vars['request']; | ||
+ | else { | ||
+ | echo "Evento invalido!\n"; | ||
+ | exit(1); | ||
+ | } | ||
+ | |||
+ | printf("Evento: %s<BR>\n", $vars['request']); | ||
+ | printf("=> Card: %s<BR>\n", $vars['card']); | ||
+ | printf("=> State: %s<BR>\n", $vars['state']); | ||
+ | printf("=> Time: %s<BR>\n", $vars['time']); | ||
+ | printf("=> Key: %s<BR>\n", $vars['key']); | ||
+ | |||
+ | // Exemplo! | ||
+ | if($CARD_DO_USUARIO == $CARD_DO_USUSARIO) { | ||
+ | |||
+ | $data = array("" | ||
+ | |||
+ | header('Content-type: application/json'); | ||
+ | echo json_encode( $data ); | ||
+ | |||
+ | } | ||
+ | |||
+ | ?> | ||
+ | </source> | ||
+ | |} | ||
+ | |||
+ | |||
<br/> | <br/> |
Edição de 21h10min de 29 de julho de 2019
Tabela de conteúdo |
O Evento Mifire/NFC é enviado do porteiro para a aplicação, informando evento de cartão mifire / NFC.
Evento
Parâmetros enviados pelo Porteiro | |
---|---|
request | card |
card | Identificação do cartão Mifire/NFC |
state | Status do cartão/Evento
|
key | Chave primária do usuário. |
interface | Identificação da interface acessada/acionada.
|
time | Data/Hora do evento no formato ddmmYYYYHHMMSS onde:
|
Exemplo
http://ip:porta/url/?request=card&card=EAD2353236FAC&interface=1&state=blocked&key=2ed1698bcf&time=10122018183000 |
---|
Resposta: A aplicação deve responder:
- 401 => Erro de Autenticação.
- 200 => OK.
Buitl-in Respose
No próprio evento, é possível executar outros comandos, inserindo no corpo da resposta (no caso 200 OK) enviado pela aplicação, um array com os dados do comando a ser executado. Os parâmetros aceiros são descritos abaixo:
Parâmetros enviados para o Porteiro | |
---|---|
request | Comando a ser enviado. Exrelay ou play. |
interface | Para relay: Define qual relê será habilitado ou desligado
|
state | Para relay: Define o estado do relê:
|
message | Para play: Define a mensagem a reproduzir. Ver mensagens na documentação do comando PlayMessage |
Exemplo - acionando o relê para abertura da interface 1:
HTTP/1.1 200 OK Content-Type: application/json Content-Length: 167 { "request" :"relay", "interface": "1", "state" :"on" } |
---|
Exemplo - acionando o relê para abertura da interface 1 e reproduzindo a mensagem de acesso liberado:
HTTP/1.1 200 OK Content-Type: application/json Content-Length: 167 [ { "request" :"relay", "interface": "1", "state" :"on" }, { "request" :"play", ""message" :"access_allowed" } ] |
---|
PHP
Evento Simples
<?php $vars = $_REQUEST; if(!isset($vars)) exit(0); if(isset($vars['request']) && strcmp($vars['request'],"card") == 0) $event = $vars['request']; else { echo "Evento invalido!\n"; exit(1); } printf("Evento: %s<BR>\n", $vars['request']); printf("=> Card: %s<BR>\n", $vars['card']); printf("=> State: %s<BR>\n", $vars['state']); printf("=> Time: %s<BR>\n", $vars['time']); printf("=> Key: %s<BR>\n", $vars['key']); ?> |
Evento com Resposta Built-in
<?php $CARD_DO_USUARIO=1234; $vars = $_REQUEST; if(!isset($vars)) exit(0); if(isset($vars['request']) && strcmp($vars['request'],"card") == 0) $event = $vars['request']; else { echo "Evento invalido!\n"; exit(1); } printf("Evento: %s<BR>\n", $vars['request']); printf("=> Card: %s<BR>\n", $vars['card']); printf("=> State: %s<BR>\n", $vars['state']); printf("=> Time: %s<BR>\n", $vars['time']); printf("=> Key: %s<BR>\n", $vars['key']); // Exemplo! if($CARD_DO_USUARIO == $CARD_DO_USUSARIO) { $data = array("" header('Content-type: application/json'); echo json_encode( $data ); } ?> |