#!/bin/bash # Скрипт запуска полной системы видеостриминга # Запускает C++ backend и Flask web server в одном терминале с tmux set -e # Проверка установки tmux if ! command -v tmux &> /dev/null; then echo "tmux не установлен. Установка..." sudo apt-get install -y tmux fi # Имя сессии tmux SESSION="beacon_tracker" # Убить существующую сессию если есть tmux kill-session -t $SESSION 2>/dev/null || true # Создать новую сессию echo "Создание tmux сессии '$SESSION'..." tmux new-session -d -s $SESSION # Окно 1: C++ Backend tmux rename-window -t $SESSION:0 'C++ Backend' tmux send-keys -t $SESSION:0 'cd beacon_track/build' C-m tmux send-keys -t $SESSION:0 './main realtime output.txt' C-m # Окно 2: Flask Web Server tmux new-window -t $SESSION:1 -n 'Flask Web' tmux send-keys -t $SESSION:1 'cd web_viewer' C-m tmux send-keys -t $SESSION:1 'sleep 3' C-m # Подождать запуска C++ backend tmux send-keys -t $SESSION:1 'python3 app.py' C-m # Окно 3: Мониторинг tmux new-window -t $SESSION:2 -n 'Monitor' tmux send-keys -t $SESSION:2 'htop' C-m # Разделить окно мониторинга tmux split-window -h -t $SESSION:2 tmux send-keys -t $SESSION:2.1 'watch -n 1 "ls -lh /tmp/beacon_video_stream"' C-m # Вернуться к первому окну tmux select-window -t $SESSION:0 echo "" echo "======================================" echo " Система запущена!" echo "======================================" echo "" echo "tmux сессия '$SESSION' создана со следующими окнами:" echo "" echo " 0: C++ Backend - beacon_track" echo " 1: Flask Web - http://localhost:5000" echo " 2: Monitor - htop + pipe status" echo "" echo "Для подключения к сессии:" echo " tmux attach-session -t $SESSION" echo "" echo "Навигация в tmux:" echo " Ctrl+B, затем 0/1/2 - переключение между окнами" echo " Ctrl+B, затем D - отключиться от сессии (система продолжит работать)" echo " Ctrl+B, затем [ - режим прокрутки (q для выхода)" echo "" echo "Для остановки системы:" echo " tmux kill-session -t $SESSION" echo "" echo "Откройте браузер: http://localhost:5000" echo "" # Подключиться к сессии tmux attach-session -t $SESSION