Skip to main content

REST API v1.0

Спецификация управленческого протокола REST API

Внимание! Не подключайте контроллер в публичную сеть Интернет! Вместо этого используйте локальную сеть, или выделенную подсеть для безопасного администрирования контроллера и прокси сервера (Nginx, Apache как обратный прокси).

Формат данных ответа

Каждый ответ от контроллера формируется в виде JSON строки и имеет вид

{
  "success": true,
  "data": {...}
}

Свойство data имеет внутри состояние запрашиваемого функционала.

Список методов

 

GET /api/systeminfo
Получение спискасистемной возможностей котроллераинформации

GET /api/systeminfo

Ответ

{
  "success": true,
  "data": {
    "hostname": "umni-838a74",
    "capabilities": [
      "ethernet",
      "sdcard",
      "webserver",
      "mqtt",
      "opentherm",
      "rf433",
      "onewire",
      "alarm",
      "ntc1",
      "ntc2",
      "ai1",
      "ai2",
      "opencollectors",
      "oc1",
      "oc2",
      "buzzer",
      "inputs",
      "inp1",
      "inp2",
      "inp3",
      "inp4",
      "inp5",
      "inp6",
      "outputs",
      "out1",
      "out2",
      "out3",
      "out4",
      "out5",
      "out6",
      "out7",
      "out8"
    ],
    "networks": [
      {
        "name": "ethernet",
        "ip": "192.168.88.122",
        "mask": "255.255.252.0",
        "gw": "192.168.88.9",
        "active": true
      }
    ],
    "heap": {
      "total": 380928,
      "free": 190464,
      "min": 166876
    }
  }
}
Пояснения
hostname имя устройства строка
capabilities список доступных возможностей контроллера массив строк
networks список сетевых подключений объект
heap список общей и доступной оперативной памяти объект
Возможности контроллера (capabilities)
ethernet устройство использует проводное подключение
wifi устройство использует wifi
sdcard устройство использует microSD карту памяти
webserver устройство использует веб-сервер
mqtt устройство использует клиента mqtt
opentherm устройство использует opentherm (для газовых котлов)
rf433 устройство использует беспроводной канал 433 мГц
onewire устройство использует onewire
alarm у устройства есть вывод по датчики наличия 12в
ntc1 у устройства есть NTC термистор №1 (резистор 10К)
ntc2 у устройства есть NTC термистор №2 (резистор 10К)
ai1 у устройства имеется аналоговый вход №1
ai2 у устройства имеется аналоговый вход №2
opencollectors устройство имеет выходы "открытый коллектор"
oc1 устройство имеет выход открытого коллектора №1
oc2 устройство имеет выход открытого коллектора №2
buzzer устройство имеет на своем борту бипер (buzzer)
inputs устройство имеет цифровые входы
inp1 устройство имеет цифровой вход №1
inp2 устройство имеет цифровой вход №2
inp3 устройство имеет цифровой вход №3
inp4 устройство имеет цифровой вход №4
inp5 устройство имеет цифровой вход №5
inp6 устройство имеет цифровой вход №6
outputs устройство имеет цифровые выходы (релейные выходы)
out1 устройство имеет выход №1
out2 устройство имеет выход №2
out3 устройство имеет выход №3
out4 устройство имеет выход №4
out5 устройство имеет выход №5
out6 устройство имеет выход №6
out7 устройство имеет выход №7
out8 устройство имеет выход №8

Получение конфигурации

Возвращает JSON объект конфигурации для указанной секции

GET /api/conf?section={string}
Список ответов конфигурационных секций

adc

{
  "success": true,
  "data": {
    "channels": [
      {
        "id": 0,
        "label": "ADC Input 1",
        "active": true
      },
      {
        "id": 1,
        "label": "ADC Input 2",
        "active": true
      }
    ]
  }
}

ntc

{
  "success": true,
  "data": {
    "channels": [
      {
        "id": 0,
        "label": "NTC Sensor 1",
        "active": true
      },
      {
        "id": 1,
        "label": "NTC Sensor 2",
        "active": true
      }
    ]
  }
}

dio

{
  "success": true,
  "data": {
    "inputs": [
      {
        "config_index": 1,
        "port_index": 1,
        "label": "Input 1 (port 1)",
        "active": true
      },
      ...
    ],
    "outputs": [
      {
        "config_index": 1,
        "port_index": 0,
        "label": "Output 1 (port 0)",
        "active": true,
        "default_state": 0
      },
      ...
    ]
  }
}

onewire

{
  "success": true,
  "data": {
    "sensors": [
      {
        "sn": "F7062454B2EE5528",
        "label": "Sensor F7062454B2EE5528",
        "active": true
      }
    ]
  }
}

rf433

{
  "success": true,
  "data": {
    "devices": []
  }
}

Сохранение конфигурации