API - Получение текущих значений регистров — различия между версиями

Материал из WebHMI Wiki
Перейти к: навигация, поиск
Строка 11: Строка 11:
 
Content-Type: application/json
 
Content-Type: application/json
 
</pre>
 
</pre>
 
В теле запроса необходимо передать json-объект с единственным свойством "value":<br>
 
<pre>
 
{"value":"12"}
 
</pre>
 
 
 
----
 
----
  
  
Пример запроса записи нового значения в регистр с ID = 7:
+
Пример запроса текущих значений:
  
'''URL''': http://192.168.1.1/api/register-values/7<br>
+
'''URL''': http://192.168.1.1/api/register-values<br>
'''Method''': POST
+
'''Method''': GET
  
 
Заголовки:
 
Заголовки:
Строка 32: Строка 26:
 
X-WH-APIKEY: F3C74230818DA487BB2017CE5D0290F4DABCAFD7
 
X-WH-APIKEY: F3C74230818DA487BB2017CE5D0290F4DABCAFD7
 
</pre>
 
</pre>
 
Тело запроса:
 
<pre>
 
{"value":"1.5"}
 
</pre>
 
 
  
 
Пример ответа:
 
Пример ответа:

Версия 07:44, 30 января 2015

Для получения текущих значений всех регистров необходимо выполнить GET-запрос на URL вида http://192.168.1.1/api/register-values.

В заголовках запроса необходимо передать API key. Например:

X-WH-APIKEY: F3C74230818DA487BB2017CE5D0290F4DABCAFD7

Также в заголовках необходимо указать желаемый формат обмена данными. Сейчас поддерживатеся работа только с форматом JSON.

Accept: application/json
Content-Type: application/json


Пример запроса текущих значений:

URL: http://192.168.1.1/api/register-values
Method: GET

Заголовки:

Accept: application/json
Content-Type: application/json
Accept-Encoding: gzip, deflate, sdch
X-WH-APIKEY: F3C74230818DA487BB2017CE5D0290F4DABCAFD7

Пример ответа:

{
  "1": {
    "r": "1",
    "v": "-1",
    "s": "i"
  },
  "2": {
    "r": "2",
    "v": "-1",
    "s": "i"
  },
  "3": {
    "r": "3",
    "v": "-1",
    "s": "i"
  },
  "4": {
    "r": "4",
    "v": "1422600498",
    "s": "u"
  },
  "5": {
    "r": "5",
    "v": "1422600498",
    "s": "u"
  },
  "6": {
    "r": "6",
    "v": "-1",
    "s": "i"
  },
  "7": {
    "r": "7",
    "v": "-1",
    "s": "i"
  },
  "8": {
    "r": "8",
    "v": "18",
    "s": "u"
  },
  "9": {
    "r": "9",
    "v": "0",
    "s": "u"
  }
}


Формат возвращаемых данных следующий:
Возвращаетмя объект, где названием свойств является время ID регистров. А самими свойствами являются еще одни объекты.
У каждого объекта есть три свойства: r, v, s.

r - это ID регистра. Например, 10
v - это значение регистра в текущий момент времении или "-1" если значение не получилось прочитать.
s - это состояние (state) регистра, которое соответствовало ему в указанный момент времени. Unknown = u, Disabled = d, Normal = n, Warning = w, Alert = a, Incorrect = i.