Diagnóstico de entradas e saídas NEW!
Retorna, em uma única chamada, o estado de todos os GPIOs, relés e SecBoxes do equipamento, junto com a configuração relevante de cada um. Para ler um único GPIO, veja Ler estado de GPIO.
Disponível apenas na versão V7.
POST /io_state.fcgi
Parâmetros
- Esta chamada não possui parâmetros.
Resposta
- gpios (array de objetos JSON): Um item por GPIO do equipamento. Cada item contém:
- index (int): Número do GPIO.
- role (string): Função do GPIO:
"tamper"(sensor de violação),"gpio_ext"(entrada configurável),"relay"(relé),"speaker"(alto-falante) ou"generic". - ext_id (int): Número da entrada configurável (o
Ndegpio_extN). Presente apenas quando role é"gpio_ext". - mode (int): Modo de operação da entrada configurável, com os mesmos valores de
gpio_extN_modeem Sinais configuráveis iDFace Max. Presente apenas quando role é"gpio_ext". - activation_mode (int): Modo de ativação da entrada configurável:
1(pulso) ou2(borda). Presente apenas quando role é"gpio_ext". - debounce_ms (int): Tempo de debounce da entrada configurável, em milissegundos. Presente apenas quando role é
"gpio_ext". - enabled (bool): Indica se o GPIO está habilitado.
- available (bool): Indica se o estado do GPIO pôde ser lido. É
falsepara GPIOs desabilitados. Os campos abaixo só estão presentes quando available étrue. - in (bool): Indica se o GPIO está configurado como entrada (
true) ou saída (false). - value (int): Valor atual do GPIO.
- idle (int): Valor do GPIO quando ocioso.
- active (bool): Indica se o GPIO está ativo, isto é, se value é diferente de idle.
- notify (bool): Indica se o software de acesso é avisado de alterações nesse GPIO.
- notified (int): Quantas vezes o GPIO notificou o software de acesso de uma alteração.
- relays (array de objetos JSON): Um item por relé do equipamento. Cada item contém:
- id (int): Número do relé, a partir de 1.
- gpio (int): GPIO que aciona o relé.
- enabled (bool): Indica se o relé está habilitado.
- timeout_ms (int): Tempo de acionamento do relé, em milissegundos.
- auto_close (bool): Indica se o fechamento automático está habilitado.
- output_mode (int): Modo de saída do relé, com os mesmos valores de
relay_out_modeem Sinais configuráveis iDFace Max. - available (bool): Indica se o estado do relé pôde ser lido.
- active (bool): Indica se o relé está acionado. Presente apenas quando available é
true.
- sec_boxes (array de objetos JSON): Um item por SecBox conectada. Cada item contém:
- id (int): Identificador (UID) da SecBox.
- serial (string): Número de série da SecBox.
- version (string): Versão de firmware da SecBox.
- enabled (bool): Indica se a SecBox está habilitada.
- relay (bool): Estado do relé da SecBox.
- rex (bool): Nível lido na entrada da botoeira da SecBox.
- rex_active (bool): Indica se a botoeira está acionada.
- door_sensor (bool): Nível lido na entrada do sensor de porta da SecBox.
- door_sensor_enabled (bool): Indica se o sensor de porta está habilitado.
- door_sensor_idle (int): Nível do sensor de porta quando ocioso.
- door_sensor_active (bool): Indica se o sensor de porta está ativo, isto é, se o nível lido é diferente de door_sensor_idle.
- open (bool): Indica se a porta da SecBox está aberta.
Exemplo de requisição
$.ajax({
url: "/io_state.fcgi?session=" + session,
type: 'POST',
contentType: 'application/json'
});
Exemplo de resposta
{
"gpios": [
{
"index": 0,
"role": "tamper",
"enabled": true,
"available": true,
"in": true,
"value": 1,
"idle": 1,
"active": false,
"notify": true,
"notified": 0
},
{
"index": 1,
"role": "gpio_ext",
"ext_id": 1,
"mode": 7,
"activation_mode": 1,
"debounce_ms": 50,
"enabled": true,
"available": true,
"in": true,
"value": 0,
"idle": 0,
"active": false,
"notify": true,
"notified": 3
}
],
"relays": [
{
"id": 1,
"gpio": 4,
"enabled": true,
"timeout_ms": 3000,
"auto_close": true,
"output_mode": 0,
"available": true,
"active": false
}
],
"sec_boxes": [
{
"id": 65793,
"serial": "0001010101",
"version": "2.4.0",
"enabled": true,
"relay": false,
"rex": true,
"rex_active": false,
"door_sensor": false,
"door_sensor_enabled": true,
"door_sensor_idle": 0,
"door_sensor_active": false,
"open": false
}
]
}