MPI/API/EvtRF433Code
De uTech Tecnologia
(Diferença entre revisões)
(→Exemplo) |
|||
Linha 46: | Linha 46: | ||
* '''401''' => Erro de Autenticação. | * '''401''' => Erro de Autenticação. | ||
* '''200''' => OK. | * '''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: | ||
+ | |||
+ | {| class="wikitable" width="65%" | ||
+ | ! align="center" colspan="2" | Parâmetros enviados para o Porteiro | ||
+ | |- | ||
+ | | align="left"| request || Comando a ser enviado. Ex'''relay''' ou '''play'''. | ||
+ | |- | ||
+ | | align="left"| interface || '''Para relay''': Define qual relê será habilitado ou desligado | ||
+ | * '''0''': Ambas interfaces (1 e 2). | ||
+ | * '''1''': Interface 1. | ||
+ | * '''2''': Interface 2. | ||
+ | |- | ||
+ | | align="left"| state || '''Para relay''': Define o estado do relê: | ||
+ | * '''on:''' => Ligado | ||
+ | * '''off:''' => Desligado | ||
+ | * '''hold:''' => Mantem aberta porta/relê até receber um evento '''off''' da API ou um comando externo (ex. interface WEB, DTMF). | ||
+ | |- | ||
+ | | align="left"| message || '''Para play''': Define a mensagem a reproduzir. Ver mensagens na documentação do comando [[MPI/API/PlayMessage|'''PlayMessage''']] | ||
+ | |} | ||
+ | |||
+ | '''Exemplo - acionando o relê para abertura da interface 1''': | ||
+ | {| class="wikitable" | ||
+ | ! style="text-align: left; font-weight: bold;" | <pre>HTTP/1.1 200 OK | ||
+ | Content-Type: application/json | ||
+ | Content-Length: 167 | ||
+ | { | ||
+ | "request" :"relay", | ||
+ | "interface": "1", | ||
+ | "state" :"on" | ||
+ | } | ||
+ | </pre> | ||
+ | |} | ||
+ | |||
+ | |||
+ | |||
+ | '''Exemplo - acionando o relê para abertura da interface 1 e reproduzindo a mensagem de ''acesso liberado''''': | ||
+ | {| class="wikitable" | ||
+ | ! style="text-align: left; font-weight: bold;" | <pre>HTTP/1.1 200 OK | ||
+ | Content-Type: application/json | ||
+ | Content-Length: 167 | ||
+ | |||
+ | [ | ||
+ | { | ||
+ | "request" :"relay", | ||
+ | "interface": "1", | ||
+ | "state" :"on" | ||
+ | }, | ||
+ | { | ||
+ | "request" :"play", | ||
+ | "message" :"access_allowed" | ||
+ | } | ||
+ | ] | ||
+ | |||
+ | </pre> | ||
+ | |} | ||
+ | |||
<br/><br/> | <br/><br/> |
Edição de 21h43min de 29 de julho de 2019
Tabela de conteúdo |
O Evento RF433 Code é enviado do porteiro para a aplicação, informando evento de leitura de cartão/controle RF433.
Evento
Parâmetros enviados pelo Porteiro | |
---|---|
request | rfcode |
rfcode | Identificação do cartão/controle RF433 Code |
state | Status do cartão/Evento
|
interface | Identificação da interface acessada/acionada.
|
key | Chave primária do usuário. |
time | Data/Hora do evento no formato ddmmYYYYHHMMSS onde:
|
Exemplo
http://ip:porta/url/?request=rfcode&rfcode=F16482B&interface=1&state=blocked&key=dfe23r43 |
---|
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
<?php $vars = $_REQUEST; if(!isset($vars)) exit(0); if(isset($vars['request']) && strcmp($vars['request'],"rfcode") == 0) $event = $vars['request']; else { echo "Evento invalido!\n"; exit(1); } printf("Evento: %s<BR>\n", $vars['request']); printf("=>RF 433: %s<BR>\n", $vars['rfcode']); printf("=> State: %s<BR>\n", $vars['state']); printf("=> Key: %s<BR>\n", $vars['interface']); printf("=> Key: %s<BR>\n", $vars['key']); printf("=> Data: %s<BR>\n", $vafs['time']); ?> |