Skip to content

Главная (Dashboard)

http://<ip-платы>/dashboard.html — главная после логина. Сюда плата отправляет с /, если Wi-Fi сконфигурирован.

Что на странице

Карточки устройств

Сетка col-12 col-sm-6 col-md-4 (1 / 2 / 3 колонки в зависимости от ширины экрана). Каждая карточка показывает:

  • Имя устройства
  • Тип (relay, ds18b20, dht22_temp и т.д.)
  • Состояние или значение:
  • реле: ON / OFF цветной индикатор
  • датчик: текущее значение + единица (°C, %, см, и т.д.)
  • возраст последнего полла (карточка тускнеет если данные устарели)
  • Действие — для реле кликабельная сама карточка (toggle), для датчиков — read-only

Цветовая индикация

Класс Когда Цвет
state-on Реле включено бирюзовый
state-off Реле выключено серый
state-active Sensor свежий (свежее poll_interval × 3) зелёный
state-stale Sensor устарел (давно нет полла) тусклый серый

Поллинг

Дашборд опрашивает плату каждые 5 секунд через GET /api/v1/devices. RAM-лог (внизу страницы) — каждые 3 секунды через GET /api/v1/logs.

RAM-лог

Внизу страницы — кольцевой буфер логов с цветовой подсветкой по уровню (INFO / WARN / ERROR). Полезен для отладки: видно, как срабатывают триггеры, что отвечает облако, ошибки I²C/OneWire.

Размер кольца: 32 строки (ESP8266) / 64 строки (ESP32). При переполнении старые строки уезжают наверх.

Полезные приёмы

  • Toggle реле прямо с дашборда — клик по карточке (не по имени) посылает POST /api/v1/devices/{id}/state с "toggle".
  • Скрыть устройство с дашборда — пока нет UI-флага, можно временно убрать его через Устройства → удалить, потом добавить обратно когда потребуется. В roadmap — флаг hidden без удаления.
  • Если карточек нет — значит, в Устройствах ничего не создано. Создайте первое.

API за этой страницей

Метод Эндпоинт Что отдаёт
GET /api/v1/devices Все устройства с runtime-полями state/value/last_read_ms
GET /api/v1/logs Кольцевой буфер: {lines: [...], dropped: 0}
POST /api/v1/devices/{id}/state {state: "on"\|"off"\|"toggle"} для реле

Полный справочник — в API.