API - Список блоков панелей — различия между версиями
Материал из WebHMI Wiki
(Новая страница: «Для получения списка всех панелей необходимо выполнить GET-запрос на URL вида '''http://192.168.1.1/ap…») |
|||
(не показаны 4 промежуточные версии 2 участников) | |||
Строка 1: | Строка 1: | ||
− | Для получения списка всех панелей необходимо выполнить GET-запрос на URL вида '''http://192.168.1.1/api/ | + | <languages/> |
+ | <translate> | ||
+ | <!--T:1--> | ||
+ | Для получения списка всех блоков панелей необходимо выполнить GET-запрос на URL вида '''http://192.168.1.1/api/blocks'''. | ||
− | Для получения информации о | + | <!--T:2--> |
+ | Для получения информации о конкретном блоке необходимо выполнить GET-запрос на URL вида '''http://192.168.1.1/api/blocks/12'''. Здесь 12 - это ID нужного блока. | ||
+ | <!--T:3--> | ||
В заголовках запроса ноебходимо передать API key. Например: | В заголовках запроса ноебходимо передать API key. Например: | ||
<pre> | <pre> | ||
Строка 8: | Строка 13: | ||
</pre> | </pre> | ||
+ | <!--T:4--> | ||
Также в заголовках необходимо указать желаемый формат обмена данными. Сейчас поддерживатеся работа только с форматом [https://ru.wikipedia.org/wiki/JSON JSON]. | Также в заголовках необходимо указать желаемый формат обмена данными. Сейчас поддерживатеся работа только с форматом [https://ru.wikipedia.org/wiki/JSON JSON]. | ||
<pre> | <pre> | ||
Строка 16: | Строка 22: | ||
− | Пример запроса списка | + | <!--T:5--> |
+ | Пример запроса списка всех блоков: | ||
− | '''URL''': http://192.168.1.1/api/ | + | <!--T:6--> |
+ | '''URL''': http://192.168.1.1/api/blocks<br> | ||
'''Method''': GET | '''Method''': GET | ||
+ | <!--T:7--> | ||
Заголовки: | Заголовки: | ||
<pre> | <pre> | ||
Строка 29: | Строка 38: | ||
</pre> | </pre> | ||
+ | <!--T:8--> | ||
Пример ответа: | Пример ответа: | ||
<pre> | <pre> | ||
Строка 34: | Строка 44: | ||
{ | { | ||
"id": "1", | "id": "1", | ||
− | " | + | "dashboard_id": "1", |
− | " | + | "zindex": "1", |
− | " | + | "pos_left": "0", |
− | " | + | "pos_top": "0", |
+ | "pos_width": "896", | ||
+ | "pos_height": "445", | ||
+ | "block_type": "Indicator", | ||
+ | "title": "Фон", | ||
+ | "url": "", | ||
+ | "imageid": "1", | ||
+ | "label": "", | ||
+ | "align": "", | ||
+ | "fontsize": "", | ||
+ | "regid": "", | ||
+ | "is_button": "false", | ||
+ | "hide_value": "false", | ||
+ | "start_value": "", | ||
+ | "end_value": "", | ||
+ | "colorize": "false" | ||
}, | }, | ||
{ | { | ||
"id": "2", | "id": "2", | ||
− | "title": " | + | "dashboard_id": "1", |
− | " | + | "zindex": "3", |
− | " | + | "pos_left": "714", |
− | " | + | "pos_top": "277", |
+ | "pos_width": "85", | ||
+ | "pos_height": "25", | ||
+ | "block_type": "TextValue", | ||
+ | "title": "", | ||
+ | "url": "", | ||
+ | "imageid": "", | ||
+ | "label": "", | ||
+ | "align": "center", | ||
+ | "fontsize": "4", | ||
+ | "regid": "3", | ||
+ | "is_button": "false", | ||
+ | "hide_value": "false", | ||
+ | "start_value": "", | ||
+ | "end_value": "", | ||
+ | "colorize": "false" | ||
+ | }, | ||
+ | { | ||
+ | "id": "3", | ||
+ | "dashboard_id": "1", | ||
+ | "zindex": "3", | ||
+ | "pos_left": "450", | ||
+ | "pos_top": "277", | ||
+ | "pos_width": "110", | ||
+ | "pos_height": "25", | ||
+ | "block_type": "TextValue", | ||
+ | "title": "", | ||
+ | "url": "", | ||
+ | "imageid": "", | ||
+ | "label": "", | ||
+ | "align": "left", | ||
+ | "fontsize": "4", | ||
+ | "regid": "5", | ||
+ | "is_button": "", | ||
+ | "hide_value": "", | ||
+ | "start_value": "", | ||
+ | "end_value": "" | ||
} | } | ||
] | ] | ||
Строка 51: | Строка 112: | ||
− | Пример запроса информации | + | <!--T:9--> |
+ | Пример запроса информации о блоке номер 1: | ||
− | '''URL''': http://192.168.1.1/api/ | + | <!--T:10--> |
+ | '''URL''': http://192.168.1.1/api/blocks/1<br> | ||
'''Method''': GET | '''Method''': GET | ||
+ | <!--T:11--> | ||
Заголовки: | Заголовки: | ||
<pre> | <pre> | ||
Строка 64: | Строка 128: | ||
</pre> | </pre> | ||
+ | <!--T:12--> | ||
Пример ответа: | Пример ответа: | ||
<pre> | <pre> | ||
{ | { | ||
"id": "1", | "id": "1", | ||
− | " | + | "dashboard_id": "1", |
− | " | + | "zindex": "1", |
− | " | + | "pos_left": "0", |
− | " | + | "pos_top": "0", |
+ | "pos_width": "896", | ||
+ | "pos_height": "445", | ||
+ | "block_type": "Indicator", | ||
+ | "title": "Фон", | ||
+ | "url": "", | ||
+ | "imageid": "1", | ||
+ | "label": "", | ||
+ | "align": "", | ||
+ | "fontsize": "", | ||
+ | "regid": "", | ||
+ | "is_button": "false", | ||
+ | "hide_value": "false", | ||
+ | "start_value": "", | ||
+ | "end_value": "", | ||
+ | "colorize": "false" | ||
} | } | ||
</pre> | </pre> | ||
Строка 77: | Строка 157: | ||
− | Атрибуты | + | <!--T:13--> |
+ | Атрибуты блоков: | ||
+ | <!--T:14--> | ||
<table> | <table> | ||
− | <tr><td>'''id'''</td><td>int</td><td>Уникальный идентификатор панели</td></tr> | + | <tr><td>'''id'''</td><td>int</td><td>Уникальный идентификатор блока</td></tr> |
− | <tr><td>'''title'''</td><td>string</td><td>Название | + | <tr><td>'''dashboard_id'''</td><td>string</td><td>Идентификатор панели на которой отображается блок</td></tr> |
− | <tr><td>''' | + | <tr><td>'''zindex'''</td><td>int</td><td>Z-index блока (номер "слоя")</td></tr> |
− | <tr><td>''' | + | <tr><td>'''pos_left'''</td><td>int</td><td>Положение на панели от левого края в пикселях</td></tr> |
− | <tr><td>''' | + | <tr><td>'''pos_top'''</td><td>int</td><td>Положение на панели от вкрхнкго края в пикселях</td></tr> |
+ | <tr><td>'''pos_width'''</td><td>int</td><td>Высота блока в пикселях</td></tr> | ||
+ | <tr><td>'''pos_height'''</td><td>int</td><td>Ширина блока в пикселях</td></tr> | ||
+ | <tr><td>'''block_type'''</td><td>string</td><td>Тип блока. Варианты: Indicator, TextValue, Gauge</td></tr> | ||
+ | <tr><td>'''title'''</td><td>string</td><td>Название блока</td></tr> | ||
+ | <tr><td>'''url'''</td><td>string</td><td>URL для ссылок</td></tr> | ||
+ | <tr><td>'''imageid'''</td><td>int</td><td>ID изображения которое нужно отображать</td></tr> | ||
+ | <tr><td>'''label'''</td><td>string</td><td>Текст который нужно выводить в блоке</td></tr> | ||
+ | <tr><td>'''align'''</td><td>string</td><td>Выравнивание текста. Варианты: left, right, center</td></tr> | ||
+ | <tr><td>'''fontsize'''</td><td>int</td><td>Размер шрифта, 1-5</td></tr> | ||
+ | <tr><td>'''regid'''</td><td>int</td><td>ID регистра из которого брать значение</td></tr> | ||
+ | <tr><td>'''is_button'''</td><td>int</td><td>0 = пользователь не может изменять значение, 1 = пользователь может изменять значение</td></tr> | ||
+ | <tr><td>'''hide_value'''</td><td>int</td><td>0 = отображать числовое значение, 1 = не отображать числовое значение</td></tr> | ||
+ | <tr><td>'''start_value'''</td><td>double</td><td>Начальное значение для Gauge</td></tr> | ||
+ | <tr><td>'''end_value'''</td><td>double</td><td>Конечное значение для Gauge</td></tr> | ||
+ | <tr><td>'''colorize'''</td><td>int</td><td>0 = отображать блок черным цветом, 1 = раскрашивать блок в соответствии со статусом регистра</td></tr> | ||
</table> | </table> | ||
+ | </translate> |
Текущая версия на 09:50, 18 апреля 2018
Для получения списка всех блоков панелей необходимо выполнить GET-запрос на URL вида http://192.168.1.1/api/blocks.
Для получения информации о конкретном блоке необходимо выполнить GET-запрос на URL вида http://192.168.1.1/api/blocks/12. Здесь 12 - это ID нужного блока.
В заголовках запроса ноебходимо передать API key. Например:
X-WH-APIKEY: F3C74230818DA487BB2017CE5D0290F4DABCAFD7
Также в заголовках необходимо указать желаемый формат обмена данными. Сейчас поддерживатеся работа только с форматом JSON.
Accept: application/json Content-Type: application/json
Пример запроса списка всех блоков:
URL: http://192.168.1.1/api/blocks
Method: GET
Заголовки:
Accept: application/json Content-Type: application/json Accept-Encoding: gzip, deflate, sdch X-WH-APIKEY:F3C74230818DA487BB2017CE5D0290F4DABCAFD7
Пример ответа:
[ { "id": "1", "dashboard_id": "1", "zindex": "1", "pos_left": "0", "pos_top": "0", "pos_width": "896", "pos_height": "445", "block_type": "Indicator", "title": "Фон", "url": "", "imageid": "1", "label": "", "align": "", "fontsize": "", "regid": "", "is_button": "false", "hide_value": "false", "start_value": "", "end_value": "", "colorize": "false" }, { "id": "2", "dashboard_id": "1", "zindex": "3", "pos_left": "714", "pos_top": "277", "pos_width": "85", "pos_height": "25", "block_type": "TextValue", "title": "", "url": "", "imageid": "", "label": "", "align": "center", "fontsize": "4", "regid": "3", "is_button": "false", "hide_value": "false", "start_value": "", "end_value": "", "colorize": "false" }, { "id": "3", "dashboard_id": "1", "zindex": "3", "pos_left": "450", "pos_top": "277", "pos_width": "110", "pos_height": "25", "block_type": "TextValue", "title": "", "url": "", "imageid": "", "label": "", "align": "left", "fontsize": "4", "regid": "5", "is_button": "", "hide_value": "", "start_value": "", "end_value": "" } ]
Пример запроса информации о блоке номер 1:
URL: http://192.168.1.1/api/blocks/1
Method: GET
Заголовки:
Accept: application/json Content-Type: application/json Accept-Encoding: gzip, deflate, sdch X-WH-APIKEY:F3C74230818DA487BB2017CE5D0290F4DABCAFD7
Пример ответа:
{ "id": "1", "dashboard_id": "1", "zindex": "1", "pos_left": "0", "pos_top": "0", "pos_width": "896", "pos_height": "445", "block_type": "Indicator", "title": "Фон", "url": "", "imageid": "1", "label": "", "align": "", "fontsize": "", "regid": "", "is_button": "false", "hide_value": "false", "start_value": "", "end_value": "", "colorize": "false" }
Атрибуты блоков:
id | int | Уникальный идентификатор блока |
dashboard_id | string | Идентификатор панели на которой отображается блок |
zindex | int | Z-index блока (номер "слоя") |
pos_left | int | Положение на панели от левого края в пикселях |
pos_top | int | Положение на панели от вкрхнкго края в пикселях |
pos_width | int | Высота блока в пикселях |
pos_height | int | Ширина блока в пикселях |
block_type | string | Тип блока. Варианты: Indicator, TextValue, Gauge |
title | string | Название блока |
url | string | URL для ссылок |
imageid | int | ID изображения которое нужно отображать |
label | string | Текст который нужно выводить в блоке |
align | string | Выравнивание текста. Варианты: left, right, center |
fontsize | int | Размер шрифта, 1-5 |
regid | int | ID регистра из которого брать значение |
is_button | int | 0 = пользователь не может изменять значение, 1 = пользователь может изменять значение |
hide_value | int | 0 = отображать числовое значение, 1 = не отображать числовое значение |
start_value | double | Начальное значение для Gauge |
end_value | double | Конечное значение для Gauge |
colorize | int | 0 = отображать блок черным цветом, 1 = раскрашивать блок в соответствии со статусом регистра |