Exemplos

Os exemplos descritos abaixo são apenas uma fração dos contidos nesta documentação, e exemplos em diferentes linguagens também pode ser encontrados em nosso repositório no GitHub: https://github.com/controlid/integracao/tree/master/Controle%20de%20Acesso

Coletar logs

O método load_objects é utilizado para coletar informações do dispositivo, nesse exemplo ele foi utilizado para coletar os logs de acesso que estavam armazenados no equipamento.

Exemplo C#

Para o desenvolvimento do exemplo está sendo utilizado a biblioteca RestSharp.

public string GetAccessLogs()
{
  var client = new RestClient("http://192.168.2.183/load_objects.fcgi");
  var request = new RestRequest(Method.POST);
  request.AddHeader("cookie", "session=o7JRuZQckN10lz66MHfX69iY");
  request.AddHeader("content-type", "application/json");
  request.AddParameter("application/json", "{\n  \"object\":\"access_logs\"\n}", ParameterType.RequestBody);
  IRestResponse response = client.Execute(request);
  return response.Content;
}

Exemplo NodeJS

Para o desenvolvimento do exemplo está sendo utilizado o modulo Request.

var request = require("request");
var options = { 
method: 'POST',
url: 'http://192.168.2.183/load_objects.fcgi',
headers: 
{ 
  cookie: 'session=QnnlmLcEBCE06mwKkh/7SOEM',
  'content-type': 'application/json' 
},
body: 
{ 
  object: 'access_logs'
},
json: true 
};
request(options, function (error, response, body) {
  if (error) throw new Error(error);
      console.log(body);
});

Acionar relê

O método execute_actions é responsável por realizar a execução de comandos no dispositivo, neste exemplo ele foi utilizado para abrir a porta ao liberar o relê 1. O exemplo abaixo não é aplicável para o iDFlex, iDBlock, iDAccess Pro e iDAccess Nano, porque para estes produtos os parâmetros são diferentes.

Exemplo C#

Para o desenvolvimento do exemplo está sendo utilizado a biblioteca RestSharp.

public string ExecuteAction()
{
  var client = new RestClient("http://192.168.2.183/execute_actions.fcgi?session=zm3WJhwbFawo1wX9B4YRnLY4");
  var request = new RestRequest(Method.POST);
  request.AddHeader("content-type", "application/json");
  request.AddParameter("application/json", "{\n\t\n\t\"actions\": [ { \"action\": \"door\", \"parameters\": \"door=1\" } ]\n\t\n}", ParameterType.RequestBody);
  IRestResponse response = client.Execute(request);
  return response.Content;
}

Exemplo NodeJS

Para o desenvolvimento do exemplo está sendo utilizado o modulo request.

var request = require("request");
var options = { 
method: 'POST',
url: 'http://192.168.2.183/execute_actions',
headers: 
{ 
  cookie: 'session=QnnlmLcEBCE06mwKkh/7SOEM',
  'content-type': 'application/json'
},
body: 
{
  "actions": [ { "action": "door", "parameters": "door=1" } ]
},
json: true
};
request(options, function (error, response, body) {
  if (error) throw new Error(error);
    console.log(body);
});