====http API====
Сервис предоставляется по протоколу http на статическом или динамическом IP адресе контроллера при определении опции компиляции OTA (в builds_flags_* для соответствующей HW архитектуры добавляется строка)
-DOTA
По умолчанию, добавлено для архитектур DUE/Lighthub, ESP*, Mega2560Slim*
Осуществляется анонсирование контроллера через сервис MDNS для простого обнаружения в локальной сети по имени <имя-контроллера-из-конфигурации-mqtt>.local
(Если конфигурация еще не загружена - lighthub.local)
Анонсирование включается при использовании опции компиляции MDNS. Пример:
-DMDNS
TCP port для доступа к API: 80 (можно переопределить при компиляции при помощи директивы OTA_PORT)
Поддерживаемые endpoint - ы и методы:
^endpoint|Methods|Description|
|/sketch|POST,OPTIONS|Загрузка прошивки контроллера|
|/config.json|POST,GET,OPTIONS|Загрузить или прочитать JSON конфиг в/из NVRAM контроллера|
|/ram/[itemname]|POST,GET,OPTIONS|Загрузить или прочитать JSON конфиг (по указанному item, если он указан, или все дерево )в/из RAM контроллера - используется непосредственно слепок конфига в оперативной памяти|
|/config.bin|POST,GET,OPTIONS|Загрузить или прочитать системный конфиг в/из NVRAM контроллера (содержит MAC,IP параметры и прочие системные настройки)|
|/<произвольное имя>.|POST,GET,OPTIONS|Загрузить или прочитать произвольный файл с/на флэш контроллера|
|/command/|POST,OPTIONS|выполнить консольную команду контроллера (reboot, save, get, load, mac, ip etc). Параметры передаются в теле POST запроса)|
|/item/[/subitem][/suffix]|POST,GET,OPTIONS|выполнить команду либо прочитать статус соответствующего item. Смысл subitem и suffix а также, синтаксис команды (передается в теле POST запроса) абсолютно идентичны MQTT API|
|/|GET,OPTIONS|переадресация на страницу PWA приложения (по умолчанию http://lazyhome.ru/pwa) с передачей параметров mac и ip|