Документы

Технические описания, спецификации, заметки для разработчиков и системных администраторов.

Для пользователей

  • Руководство пользователя — установка приложения, загрузка программы в контроллер, привязка, гостевые ключи, автоматизация, безопасность.
  • Конфигуратор контроллера — выбор варианта связи между телефоном и контроллером.
    • BLE-контроллер — получает команды по Bluetooth без интернета, питается от батареек, срабатывает только когда телефон рядом (ESP32 / S3 / C3 / C6).
    • Internet-контроллер — постоянно онлайн, открывает объект из любой точки (ESP32 / ESP8266 — Shelly Plus 1, NodeMCU, Wemos D1; Raspberry Pi Zero W / 3 / 4 / 5, Python + GPIO).
  • Интеграции без замены программы — Tasmota, ESPHome, Home Assistant и Shelly подключаются через вебхук Entrixy.

Архитектура и протоколы

  • Архитектура v2 — общая схема «клиент — сервер — контроллер», потоки данных, форматы сообщений.
  • E2EE архитектура — сквозное шифрование, что и где зашифровано (AES-256-GCM на устройстве).
  • BLE — модель угроз — что атакующий может и чего не может сделать, слушая радиоэфир (ECDH X25519 + HMAC-SHA256).
  • BLE — синхронизация времени — как контроллер узнаёт текущее время (для проверки окна действия гостевых ключей).

Исходники прошивок и скриптов

  • /esp32-example/ — BLE-программа (NimBLE, deep-sleep). Шаблон для конфигуратора /esp/ble/.
  • /esp32-ws-example/ — Wi-Fi-программа для ESP32 (WSS-клиент, реле). Шаблон для конфигуратора /esp/socket/ в режиме ESP32.
  • /integrations/esp8266/ — Wi-Fi-программа для ESP8266. Шаблон для конфигуратора /esp/socket/ в режиме ESP8266.
  • /integrations/raspberry-pi/ — Wi-Fi-скрипт на Python для Raspberry Pi. Шаблон для конфигуратора /esp/socket/ в режиме Pi.
  • /integrations/nodejs/ — Wi-Fi-клиент на Node.js для серверов без графической оболочки и роутеров OpenWRT. Конфигуратор его пока не собирает, но протокол совместим.

Дизайн и интерфейс

Эксплуатация сервера

Тестирование

  • Тест-план — 191 сценарий, из них 37 критичны для рабочего сервера. Покрывает BLE-pair, WS-online, гостевые ключи, гео/Wi-Fi/время, webhooks (phone + server), restart-recovery, локализацию.