fix for scripts
This commit is contained in:
parent
f22a568832
commit
7349e0ae68
2 changed files with 111 additions and 24 deletions
|
|
@ -8,6 +8,7 @@ set "IP_FILE=.public_ip"
|
||||||
set "PREFIX_FILE=.link_prefix"
|
set "PREFIX_FILE=.link_prefix"
|
||||||
set "SECRETS_FILE=.secrets"
|
set "SECRETS_FILE=.secrets"
|
||||||
set "COMPOSE_FILE=deploy\docker-compose.yml"
|
set "COMPOSE_FILE=deploy\docker-compose.yml"
|
||||||
|
set "LOG_DIR=logs"
|
||||||
|
|
||||||
set "NO_BUILD=false"
|
set "NO_BUILD=false"
|
||||||
:parse_args
|
:parse_args
|
||||||
|
|
@ -205,11 +206,15 @@ rem --- Start servers ----------------------------------------------------------
|
||||||
echo.
|
echo.
|
||||||
echo == [4/4] Starting telesrv + telesrv-admin ==
|
echo == [4/4] Starting telesrv + telesrv-admin ==
|
||||||
|
|
||||||
start "telesrv" /B bin\telesrv.exe
|
if not exist "%LOG_DIR%" mkdir "%LOG_DIR%"
|
||||||
echo [ok] telesrv started
|
set "TELESRV_LOG=%LOG_DIR%\telesrv.log"
|
||||||
|
set "ADMIN_LOG=%LOG_DIR%\telesrv-admin.log"
|
||||||
|
|
||||||
start "telesrv-admin" /B bin\telesrv-admin.exe
|
start "telesrv" /B cmd /c "bin\telesrv.exe >> "%TELESRV_LOG%" 2>&1"
|
||||||
echo [ok] telesrv-admin started
|
echo [ok] telesrv started, logs -^> %TELESRV_LOG%
|
||||||
|
|
||||||
|
start "telesrv-admin" /B cmd /c "bin\telesrv-admin.exe >> "%ADMIN_LOG%" 2>&1"
|
||||||
|
echo [ok] telesrv-admin started, logs -^> %ADMIN_LOG%
|
||||||
|
|
||||||
echo.
|
echo.
|
||||||
echo ============================================
|
echo ============================================
|
||||||
|
|
@ -222,13 +227,57 @@ echo Admin API: http://127.0.0.1:2399
|
||||||
echo.
|
echo.
|
||||||
echo Admin login password: !ADMIN_PASSWORD!
|
echo Admin login password: !ADMIN_PASSWORD!
|
||||||
echo.
|
echo.
|
||||||
echo Ports to open in firewall:
|
echo Logs:
|
||||||
echo TCP 2398 - MTProto (login / chats / media)
|
echo telesrv: type %TELESRV_LOG%
|
||||||
echo TCP 12400 - TURN/STUN control (calls)
|
echo telesrv-admin: type %ADMIN_LOG%
|
||||||
echo UDP 12500-12999 - TURN media relay (calls)
|
|
||||||
echo UDP 12399 - SFU group calls
|
|
||||||
echo TCP 2400 - RTMP livestream ingest
|
|
||||||
echo.
|
echo.
|
||||||
echo ============================================
|
echo ============================================
|
||||||
|
|
||||||
|
rem --- Interactive menu ------------------------------------------------------
|
||||||
|
:menu
|
||||||
|
echo.
|
||||||
|
echo [1] View telesrv logs (last 50 lines)
|
||||||
|
echo [2] View telesrv-admin logs (last 50 lines)
|
||||||
|
echo [3] View both logs (last 50 lines)
|
||||||
|
echo [4] Follow telesrv logs (live)
|
||||||
|
echo [5] Follow telesrv-admin logs (live)
|
||||||
|
echo [q] Stop server and exit
|
||||||
|
echo.
|
||||||
|
set /p "choice= Choice: "
|
||||||
|
|
||||||
|
if "!choice!"=="1" (
|
||||||
|
powershell -NoProfile -Command "Get-Content '%TELESRV_LOG%' -Tail 50 -ErrorAction SilentlyContinue"
|
||||||
|
goto menu
|
||||||
|
)
|
||||||
|
if "!choice!"=="2" (
|
||||||
|
powershell -NoProfile -Command "Get-Content '%ADMIN_LOG%' -Tail 50 -ErrorAction SilentlyContinue"
|
||||||
|
goto menu
|
||||||
|
)
|
||||||
|
if "!choice!"=="3" (
|
||||||
|
echo --- telesrv ---
|
||||||
|
powershell -NoProfile -Command "Get-Content '%TELESRV_LOG%' -Tail 50 -ErrorAction SilentlyContinue"
|
||||||
|
echo --- telesrv-admin ---
|
||||||
|
powershell -NoProfile -Command "Get-Content '%ADMIN_LOG%' -Tail 50 -ErrorAction SilentlyContinue"
|
||||||
|
goto menu
|
||||||
|
)
|
||||||
|
if "!choice!"=="4" (
|
||||||
|
echo Press Ctrl+C to stop following
|
||||||
|
powershell -NoProfile -Command "Get-Content '%TELESRV_LOG%' -Wait -Tail 10"
|
||||||
|
goto menu
|
||||||
|
)
|
||||||
|
if "!choice!"=="5" (
|
||||||
|
echo Press Ctrl+C to stop following
|
||||||
|
powershell -NoProfile -Command "Get-Content '%ADMIN_LOG%' -Wait -Tail 10"
|
||||||
|
goto menu
|
||||||
|
)
|
||||||
|
if /i "!choice!"=="q" goto stop_server
|
||||||
|
echo Invalid choice
|
||||||
|
goto menu
|
||||||
|
|
||||||
|
:stop_server
|
||||||
|
echo.
|
||||||
|
echo [stop] stopping telesrv and telesrv-admin ...
|
||||||
|
taskkill /FI "WINDOWTITLE eq telesrv*" /F >nul 2>&1
|
||||||
|
taskkill /FI "WINDOWTITLE eq telesrv-admin*" /F >nul 2>&1
|
||||||
|
echo [ok] stopped.
|
||||||
exit /b 0
|
exit /b 0
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ IP_FILE=".public_ip"
|
||||||
PREFIX_FILE=".link_prefix"
|
PREFIX_FILE=".link_prefix"
|
||||||
SECRETS_FILE=".secrets"
|
SECRETS_FILE=".secrets"
|
||||||
COMPOSE_FILE="deploy/docker-compose.yml"
|
COMPOSE_FILE="deploy/docker-compose.yml"
|
||||||
|
LOG_DIR="logs"
|
||||||
|
|
||||||
NO_BUILD=false
|
NO_BUILD=false
|
||||||
for arg in "$@"; do
|
for arg in "$@"; do
|
||||||
|
|
@ -163,6 +164,10 @@ fi
|
||||||
# --- Start servers ----------------------------------------------------------
|
# --- Start servers ----------------------------------------------------------
|
||||||
step "[4/4] Starting telesrv + telesrv-admin"
|
step "[4/4] Starting telesrv + telesrv-admin"
|
||||||
|
|
||||||
|
mkdir -p "$LOG_DIR"
|
||||||
|
TELESRV_LOG="$LOG_DIR/telesrv.log"
|
||||||
|
ADMIN_LOG="$LOG_DIR/telesrv-admin.log"
|
||||||
|
|
||||||
cleanup() {
|
cleanup() {
|
||||||
echo
|
echo
|
||||||
echo "[stop] stopping telesrv and telesrv-admin ..."
|
echo "[stop] stopping telesrv and telesrv-admin ..."
|
||||||
|
|
@ -177,16 +182,16 @@ trap cleanup EXIT INT TERM
|
||||||
# Start telesrv (main server)
|
# Start telesrv (main server)
|
||||||
BIN="./bin/telesrv"
|
BIN="./bin/telesrv"
|
||||||
[[ -f "bin/telesrv.exe" ]] && BIN="./bin/telesrv.exe"
|
[[ -f "bin/telesrv.exe" ]] && BIN="./bin/telesrv.exe"
|
||||||
$BIN &
|
$BIN >>"$TELESRV_LOG" 2>&1 &
|
||||||
TELESRV_PID=$!
|
TELESRV_PID=$!
|
||||||
echo "[ok] telesrv started (PID ${TELESRV_PID})"
|
echo "[ok] telesrv started (PID ${TELESRV_PID}), logs -> ${TELESRV_LOG}"
|
||||||
|
|
||||||
# Start telesrv-admin (admin panel)
|
# Start telesrv-admin (admin panel)
|
||||||
ADMIN_BIN="./bin/telesrv-admin"
|
ADMIN_BIN="./bin/telesrv-admin"
|
||||||
[[ -f "bin/telesrv-admin.exe" ]] && ADMIN_BIN="./bin/telesrv-admin.exe"
|
[[ -f "bin/telesrv-admin.exe" ]] && ADMIN_BIN="./bin/telesrv-admin.exe"
|
||||||
$ADMIN_BIN &
|
$ADMIN_BIN >>"$ADMIN_LOG" 2>&1 &
|
||||||
ADMIN_PID=$!
|
ADMIN_PID=$!
|
||||||
echo "[ok] telesrv-admin started (PID ${ADMIN_PID})"
|
echo "[ok] telesrv-admin started (PID ${ADMIN_PID}), logs -> ${ADMIN_LOG}"
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo "============================================"
|
echo "============================================"
|
||||||
|
|
@ -199,15 +204,48 @@ echo " Admin API: http://127.0.0.1:2399"
|
||||||
echo ""
|
echo ""
|
||||||
echo " Admin login password: ${ADMIN_PASSWORD}"
|
echo " Admin login password: ${ADMIN_PASSWORD}"
|
||||||
echo ""
|
echo ""
|
||||||
echo " Ports to open in firewall:"
|
echo " Logs:"
|
||||||
echo " TCP 2398 - MTProto (login / chats / media)"
|
echo " telesrv: tail -f ${TELESRV_LOG}"
|
||||||
echo " TCP 12400 - TURN/STUN control (calls)"
|
echo " telesrv-admin: tail -f ${ADMIN_LOG}"
|
||||||
echo " UDP 12500-12999 - TURN media relay (calls)"
|
|
||||||
echo " UDP 12399 - SFU group calls"
|
|
||||||
echo " TCP 2400 - RTMP livestream ingest"
|
|
||||||
echo ""
|
|
||||||
echo " Press Ctrl+C to stop."
|
|
||||||
echo "============================================"
|
echo "============================================"
|
||||||
|
|
||||||
wait "$TELESRV_PID" 2>/dev/null || true
|
# --- Interactive menu -------------------------------------------------------
|
||||||
wait "$ADMIN_PID" 2>/dev/null || true
|
show_menu() {
|
||||||
|
echo
|
||||||
|
echo " [1] View telesrv logs (last 50 lines)"
|
||||||
|
echo " [2] View telesrv-admin logs (last 50 lines)"
|
||||||
|
echo " [3] View both logs (last 50 lines)"
|
||||||
|
echo " [4] Tail telesrv logs (live)"
|
||||||
|
echo " [5] Tail telesrv-admin logs (live)"
|
||||||
|
echo " [q] Stop server and exit"
|
||||||
|
echo
|
||||||
|
}
|
||||||
|
|
||||||
|
while true; do
|
||||||
|
# Check if processes are still alive
|
||||||
|
if ! kill -0 "$TELESRV_PID" 2>/dev/null; then
|
||||||
|
echo "[WARN] telesrv (PID ${TELESRV_PID}) exited unexpectedly"
|
||||||
|
echo " Check ${TELESRV_LOG} for details"
|
||||||
|
kill "$ADMIN_PID" 2>/dev/null || true
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
if ! kill -0 "$ADMIN_PID" 2>/dev/null; then
|
||||||
|
echo "[WARN] telesrv-admin (PID ${ADMIN_PID}) exited unexpectedly"
|
||||||
|
echo " Check ${ADMIN_LOG} for details"
|
||||||
|
kill "$TELESRV_PID" 2>/dev/null || true
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
|
||||||
|
show_menu
|
||||||
|
read -rp " Choice: " choice
|
||||||
|
case "$choice" in
|
||||||
|
1) tail -n 50 "$TELESRV_LOG" 2>/dev/null || echo " (no logs yet)" ;;
|
||||||
|
2) tail -n 50 "$ADMIN_LOG" 2>/dev/null || echo " (no logs yet)" ;;
|
||||||
|
3) echo " --- telesrv ---" ; tail -n 50 "$TELESRV_LOG" 2>/dev/null || echo " (no logs yet)"
|
||||||
|
echo " --- telesrv-admin ---" ; tail -n 50 "$ADMIN_LOG" 2>/dev/null || echo " (no logs yet)" ;;
|
||||||
|
4) echo " Press Ctrl+C to stop tailing"; tail -f "$TELESRV_LOG" ;;
|
||||||
|
5) echo " Press Ctrl+C to stop tailing"; tail -f "$ADMIN_LOG" ;;
|
||||||
|
q|Q) break ;;
|
||||||
|
*) echo " Invalid choice" ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue