Сервер управления пультом стрельбища
Запуск
Режим разработки (Windows/Linux с эмулятором ESP)
npm run dev
или
NODE_ENV=development node index.js
В этом режиме:
- ✅ Используется mock-serialport (эмулятор ESP)
- ✅ Команды pause/resume выполняются немедленно
- ✅ Подходит для разработки интерфейса
Продакшн режим (Linux пульт с реальным ESP)
npm start
или
NODE_ENV=production node index.js
В этом режиме:
- ✅ Используется настоящий SerialPort (/dev/ttyS2)
- ✅ Команды pause/resume ждут подтверждения от ESP
- ✅ Полная интеграция с оборудованием
Автоопределение режима
Сервер автоматически определяет режим работы:
- Windows (
process.platform === 'win32') → режим разработки - Linux +
NODE_ENV=production→ продакшн режим - Linux +
NODE_ENV=development→ режим разработки
Зависимости
npm install
Основные пакеты:
serialport- работа с последовательным портом ESPws- WebSocket сервер для клиентов
Порты и подключения
- WebSocket: порт 9000
- HTTP API: порт 3000
- SerialPort: /dev/ttyS2 (115200 baud)
Структура проекта
index.js- главный файл сервераgame.js- логика игр и ESPws.js- WebSocket обработчикиmock-serialport.js- эмулятор для разработкиdata/- файлы конфигурации и пользователей