🚀 TCM Device Simulator — симулятор устройств для тестирования сервера мониторинга
Разработали инструмент для эмуляции N виртуальных устройств, подключённых к серверу TCM через WebSocket.
🎯 Зачем
Нужно протестировать сервер, который должен работать со 100–1000+ устройствами? Подключать реальные аппараты дорого и неудобно. Симулятор решает это: запускаете N виртуальных устройств, каждое ведёт себя как настоящий аппарат.
⚡ Возможности
🔹 Симуляция до 1000+ устройств 🔹 Фиксированный пул UID (UUID v4) 🔹 Пакетное подключение (batch connect) 🔹 Автоматическое переподключение 🔹 Отдельные директории in/ и out/ для каждого устройства
📡 Протокол
WebSocket + Protocol Buffers. Транспортная обёртка TransportMessage с uid, timestamp, payload, requestid, crc.
Поддерживаемые сообщения:
📊 DeviceStatus — статус устройства (модель, версия, температура, батарея) 📁 FilePart — потоковая передача файлов с хешированием (SHA256/SHA512) 📋 LogRequest — запрос логов с фильтрацией по типу, компоненту, уровню 🗄️ Registry — чтение реестра (полный, ветка, отдельное значение) 🔌 DeviceEvent — события подключения/отключения (USB, storage, phone) ⏰ DateTime — синхронизация времени 🔄 Restart — перезагрузка с причиной и задержкой
Полное описание протокола: http://dev-abs.ru/proto
📦 Стек
Node.js • ws (WebSocket) • Protocol Buffers • UUID v4
🚀 Быстрый старт
npm install node run-simulator.js Сервер должен быть на порту 3005 (или укажите свой URL в конфиге).
📖 Документация Репозиторий https://github.com/aovakur/Simulator_terminal_monitoring 📄 README.md — описание, конфигурация, примеры 📜 LICENSES/COMMERCIAL_LICENSE.md — текст лицензии 📊 В README — JSON-примеры сообщений и sequence-диаграммы
📝 Лицензия
Коммерческая. Для условий приобретения пишите:
👤 @andreyvakur
Подписаться | Канал в дзене | Сайт | ВК | YouTube | Сетка
В этом посте были ссылки, но мы их удалили по правилам Сетки