feat: добавить TEST сервисы для разработки

- services/test/*.service — 3 test сервиса (порты +1)
- install_test_services.sh — установка test сервисов
- services/test/start_test.sh — быстрый запуск в tmux
- docs/deployment/systemd-services.md — документация

TEST сервисы:
- wyoming-satelite-vosk-test.service :10701 + WebSocket :8675
- wyoming-wakeword-vosk-test.service :10401
- wyoming-event-test.service :10501

Использование:
1. sudo ./install_test_services.sh — установка
2. sudo systemctl start wyoming-*-test.service — запуск
3. ./services/test/start_test.sh — запуск в tmux

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
2026-05-20 17:29:36 +03:00
co-authored by Qwen-Coder
parent 26932097a5
commit e5914b23b3
6 changed files with 386 additions and 0 deletions
+104
View File
@@ -169,3 +169,107 @@ ExecStart=satellite-python -m wyoming_satellite ...
- [Руководство по развёртыванию](../../DEPLOY.md)
- [MQTT LED интеграция](integration/mqtt-led.md)
---
## TEST сервисы (для разработки)
Для тестирования новых функций без влияния на production службы созданы **TEST сервисы**.
### Отличия от production
| Сервис | Production | Test |
|--------|------------|------|
| Satellite | порт 10700 | порт 10701 + WebSocket :8675 |
| Wake Word | порт 10400 | порт 10401 |
| Event | порт 10500 | порт 10501 |
### Вариант 1: Установка TEST сервисов (рекомендуется)
**Установка:**
```bash
cd ~/projects/satellite-dev
sudo ./install_test_services.sh
```
**Запуск:**
```bash
# Запуск всех test сервисов
sudo systemctl start wyoming-event-test.service
sudo systemctl start wyoming-satelite-vosk-test.service
sudo systemctl start wyoming-wakeword-vosk-test.service
# Проверка статуса
sudo systemctl status wyoming-satelite-vosk-test.service
# Логи
journalctl -u wyoming-satelite-vosk-test.service -f
```
**Преимущества:**
- ✅ Автоматический перезапуск при ошибке
- ✅ Production службы не затрагиваются
- ✅ Легко переключаться между test/prod
### Вариант 2: Быстрый запуск в tmux
**Требования:** `tmux` установлен (`sudo apt-get install tmux`)
**Запуск:**
```bash
cd ~/projects/satellite-dev
./services/test/start_test.sh
```
**Управление:**
```bash
# Подключиться к сессии
tmux attach -t satellite-test
# Остановить все сервисы
tmux kill-session -t satellite-test
```
**Структура окон:**
- **Окно 0:** Wake Word (порт 10401)
- **Окно 1:** Event Service (порт 10501)
- **Окно 2:** Satellite (порт 10701 + WebSocket :8675)
### Тестирование WebSocket
**Проверка подключения:**
```bash
cd ~/projects/satellite-dev
source .venv/bin/activate
# Python тест клиент
python3 examples/websocket-service/test_client.py --uri ws://127.0.0.1:8675
# Или браузер
# Откройте examples/websocket-service/client.html
```
**Проверка audio level:**
```javascript
// В browser console (client.html)
// Уровень микрофона должен обновляться 10 раз в секунду
// {"type": "audio-level", "data": {"level": 0.42}}
```
### Остановка TEST сервисов
```bash
# systemd сервисы
sudo systemctl stop wyoming-event-test.service
sudo systemctl stop wyoming-satelite-vosk-test.service
sudo systemctl stop wyoming-wakeword-vosk-test.service
# tmux сессия
tmux kill-session -t satellite-test
```