Документация проекта
Тестирование и развёртывание
Проверка API
C++, Python и Rust проверяются по общему REST-контракту: авторизация, роли, камеры, защита реквизитов, поток, история, запись, PTZ и диагностика. Python также имеет модульные тесты Motion, Tracking, YOLO workers, истории, HLS, записи и профилировщика.
Профилирование
- RTSP и восстановление;
- Motion и Tracking;
- оба контура YOLO;
- JPEG и HLS;
- принятые, обработанные и отброшенные кадры;
- FPS и глубина очередей.
Один k6-сценарий сравнивает REST-часть трёх серверов; результаты сохраняются в машинно-читаемом виде и сводной таблице.
Windows
C++ сервер собирается Clang и CMake, зависимости управляются vcpkg и SDK OpenCV/ONNX Runtime. Node.js 18 раздаёт клиент и проксирует разрешённые REST/HLS-запросы.
Docker и Ubuntu
Сборка рассчитана на Ubuntu 24.04. Docker Compose объединяет сервер, клиент и PostgreSQL. Настройки, модели, записи и журналы подключаются отдельными томами. Предусмотрены health endpoint, ротация журналов и счётчики ошибок.
Переносимость и VPS
Захват и аналитика отделены от REST API и UI, поэтому сценарий работает в Windows и Linux-контейнере. Публичный VPS даёт HTTPS-доступ к клиенту, REST и HLS, оставляя внутренние сервисы закрытыми.