Difference between revisions of "API/ru"

From Larnitech wiki page
Jump to navigation Jump to search
(Created page with "API")
 
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
 
<languages/>
 
<languages/>
API works through HTTP GET request, so you can work with your Larnitech server from browser, just sending requests from address string.
+
API работает через HTTP-запрос GET, поэтому вы можете работать со своим сервером Larnitech из браузера, просто отправляя запросы из адресной строки.
Request:
+
Запрос:
 
<syntaxhighlight lang="xml" line>
 
<syntaxhighlight lang="xml" line>
 
http://IPADDR:PORT/JSON_REQUEST
 
http://IPADDR:PORT/JSON_REQUEST
 
</syntaxhighlight>
 
</syntaxhighlight>
Where:
+
Где:
IPADDR – ip address of your metaforsa or DE-MG;
+
IPADDR – IP адрес вашего модуля METAFORSA или DE-MG;
PORT – port for API plugin (you can get it from LT Setup=&gt;Plugins=&gt;API=&gt;Configure button);
+
PORT – порт для плагина API (вы можете найти его в программе LT Setup. В разделе Плагины (Plugins) найдите плагин API и нажмите кнопку Настроить (Configure)).
JSON_REQUEST – request to server in json format.
+
JSON_REQUEST – запрос к серверу в формате json.
Fields of JSON_REQUEST:
+
Поля запроса JSON_REQUEST:
 
<ul>
 
<ul>
  <li>"requestType" - Type of request:
+
  <li>"requestType" - тип запроса:
 
<ul>
 
<ul>
  <li>“getDevicesList” – request for getting the list of all devices;</li>
+
  <li>“getDevicesList” – запрос на получение списка всех устройств;</li>
  <li>“getDeviceStatus” – request for getting device status;</li>
+
  <li>“getDeviceStatus” – запрос на получение статуса устройства;</li>
  <li>“setDeviceStatus” – request for setting device status;</li>
+
  <li>“setDeviceStatus” – запрос на установку статуса устройства;</li>
         <li>“setDeviceStatusRaw” – request for setting device status (status in hex format);</li>
+
         <li>“setDeviceStatusRaw” – запрос на установку статуса устройства (статус в шестнадцатеричном формате);</li>
  <li>“getAllDevicesStatus” – request for getting all devices status.</li>
+
  <li>“getAllDevicesStatus” – запрос на получение статуса всех устройств.</li>
 
        
 
        
 
</ul>
 
</ul>
 
</li>
 
</li>
  <li>“key” – key for API plugin (you can get it from LT Setup=&gt;Plugins=&gt;API=&gt;Configure button).</li>
+
  <li>“key” – ключ для плагина API (его можно получить в программе LT Setup. В разделе Плагины (Plugins) найдите плагин API и нажмите кнопку Настроить (Configure)).</li>
  <li>“addr” – address of device.</li>
+
  <li>“addr” – адрес устройства.</li>
  <li>“status” – status of device.</li>
+
  <li>“status” – статус устройства.</li>
 
</ul>
 
</ul>
Examples of requests and responses:
+
Примеры запросов и ответов:
  
 
<syntaxhighlight lang="json" line>
 
<syntaxhighlight lang="json" line>

Latest revision as of 14:37, 16 January 2022

Other languages:
English • ‎русский

API работает через HTTP-запрос GET, поэтому вы можете работать со своим сервером Larnitech из браузера, просто отправляя запросы из адресной строки. Запрос:

1http://IPADDR:PORT/JSON_REQUEST

Где: IPADDR – IP адрес вашего модуля METAFORSA или DE-MG; PORT – порт для плагина API (вы можете найти его в программе LT Setup. В разделе Плагины (Plugins) найдите плагин API и нажмите кнопку Настроить (Configure)). JSON_REQUEST – запрос к серверу в формате json. Поля запроса JSON_REQUEST:

  • "requestType" - тип запроса:
    • “getDevicesList” – запрос на получение списка всех устройств;
    • “getDeviceStatus” – запрос на получение статуса устройства;
    • “setDeviceStatus” – запрос на установку статуса устройства;
    • “setDeviceStatusRaw” – запрос на установку статуса устройства (статус в шестнадцатеричном формате);
    • “getAllDevicesStatus” – запрос на получение статуса всех устройств.
  • “key” – ключ для плагина API (его можно получить в программе LT Setup. В разделе Плагины (Plugins) найдите плагин API и нажмите кнопку Настроить (Configure)).
  • “addr” – адрес устройства.
  • “status” – статус устройства.

Примеры запросов и ответов:

 1request:
 2{"requestType":"getDevicesList","key":"0000000000000000"}
 3 
 4response:
 5{
 6    "requestType":"devicesList",
 7    "devices": [
 8        {
 9            "type": "lamp",
10            "name": "Ceiling",
11            "addr":"401:1"
12        },
13                       
14        {
15            "type": "conditioner",
16            "name": "AC",
17            "addr":"158:200",
18            "t-min":"16",
19            "t-delta":"16"
20        }
21 
22        ]
23}
24 
25request:
26{"requestType":"getDeviceStatus","addr":"310:1","key":"0000000000000000"}
27response:
28{
29   "requestType" : "deviceStatus",
30   "status" : {
31      "addr" : "310:1",
32      "state" : "middle",
33      "type" : "jalousie"
34   }
35}
36 
37request:
38{"requestType":"setDeviceStatus","addr":"310:1","key":"0000000000000000","status":{"state": "on"}}
39 
40response:
41{
42  "requestType":"setDeviceStatus",
43  "addr":"410:1",
44  "status":{
45    "state": "on"
46  }
47   
48}
49 
50request:
51{"requestType":"getAllDevicesStatus","key":"0000000000000000"}
52 
53response:
54{
55    "requestType":"allDevicesStatus",
56    "statuses": [
57      {
58        "addr":"401:1",
59        "state": "off",
60      },
61       
62      {
63        "addr":"158:200",
64        "state": "on",
65        "temp":"25",
66        "mode":"cool",
67        "fan":"low",
68        "vane-ver":"1",
69        "vane-hor":"4"
70      }  
71        ]
72}
73 
74request:
75{"requestType":"setDeviceStatusRaw","addr":"310:1","key":"0","status":{"state":"ff00"}}
76 
77response:
78{
79   "addr" : "310:1",
80   "key" : "0",
81   "requestType" : "setDeviceStatusRaw",
82   "status" : {
83      "state" : "ff00"
84}