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 "SECRETS_FILE=.secrets"
|
||||
set "COMPOSE_FILE=deploy\docker-compose.yml"
|
||||
set "LOG_DIR=logs"
|
||||
|
||||
set "NO_BUILD=false"
|
||||
:parse_args
|
||||
|
|
@ -205,11 +206,15 @@ rem --- Start servers ----------------------------------------------------------
|
|||
echo.
|
||||
echo == [4/4] Starting telesrv + telesrv-admin ==
|
||||
|
||||
start "telesrv" /B bin\telesrv.exe
|
||||
echo [ok] telesrv started
|
||||
if not exist "%LOG_DIR%" mkdir "%LOG_DIR%"
|
||||
set "TELESRV_LOG=%LOG_DIR%\telesrv.log"
|
||||
set "ADMIN_LOG=%LOG_DIR%\telesrv-admin.log"
|
||||
|
||||
start "telesrv-admin" /B bin\telesrv-admin.exe
|
||||
echo [ok] telesrv-admin started
|
||||
start "telesrv" /B cmd /c "bin\telesrv.exe >> "%TELESRV_LOG%" 2>&1"
|
||||
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 ============================================
|
||||
|
|
@ -222,13 +227,57 @@ echo Admin API: http://127.0.0.1:2399
|
|||
echo.
|
||||
echo Admin login password: !ADMIN_PASSWORD!
|
||||
echo.
|
||||
echo Ports to open in firewall:
|
||||
echo TCP 2398 - MTProto (login / chats / media)
|
||||
echo TCP 12400 - TURN/STUN control (calls)
|
||||
echo UDP 12500-12999 - TURN media relay (calls)
|
||||
echo UDP 12399 - SFU group calls
|
||||
echo TCP 2400 - RTMP livestream ingest
|
||||
echo Logs:
|
||||
echo telesrv: type %TELESRV_LOG%
|
||||
echo telesrv-admin: type %ADMIN_LOG%
|
||||
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
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ IP_FILE=".public_ip"
|
|||
PREFIX_FILE=".link_prefix"
|
||||
SECRETS_FILE=".secrets"
|
||||
COMPOSE_FILE="deploy/docker-compose.yml"
|
||||
LOG_DIR="logs"
|
||||
|
||||
NO_BUILD=false
|
||||
for arg in "$@"; do
|
||||
|
|
@ -163,6 +164,10 @@ fi
|
|||
# --- Start servers ----------------------------------------------------------
|
||||
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() {
|
||||
echo
|
||||
echo "[stop] stopping telesrv and telesrv-admin ..."
|
||||
|
|
@ -177,16 +182,16 @@ trap cleanup EXIT INT TERM
|
|||
# Start telesrv (main server)
|
||||
BIN="./bin/telesrv"
|
||||
[[ -f "bin/telesrv.exe" ]] && BIN="./bin/telesrv.exe"
|
||||
$BIN &
|
||||
$BIN >>"$TELESRV_LOG" 2>&1 &
|
||||
TELESRV_PID=$!
|
||||
echo "[ok] telesrv started (PID ${TELESRV_PID})"
|
||||
echo "[ok] telesrv started (PID ${TELESRV_PID}), logs -> ${TELESRV_LOG}"
|
||||
|
||||
# Start telesrv-admin (admin panel)
|
||||
ADMIN_BIN="./bin/telesrv-admin"
|
||||
[[ -f "bin/telesrv-admin.exe" ]] && ADMIN_BIN="./bin/telesrv-admin.exe"
|
||||
$ADMIN_BIN &
|
||||
$ADMIN_BIN >>"$ADMIN_LOG" 2>&1 &
|
||||
ADMIN_PID=$!
|
||||
echo "[ok] telesrv-admin started (PID ${ADMIN_PID})"
|
||||
echo "[ok] telesrv-admin started (PID ${ADMIN_PID}), logs -> ${ADMIN_LOG}"
|
||||
|
||||
echo
|
||||
echo "============================================"
|
||||
|
|
@ -199,15 +204,48 @@ echo " Admin API: http://127.0.0.1:2399"
|
|||
echo ""
|
||||
echo " Admin login password: ${ADMIN_PASSWORD}"
|
||||
echo ""
|
||||
echo " Ports to open in firewall:"
|
||||
echo " TCP 2398 - MTProto (login / chats / media)"
|
||||
echo " TCP 12400 - TURN/STUN control (calls)"
|
||||
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 " Logs:"
|
||||
echo " telesrv: tail -f ${TELESRV_LOG}"
|
||||
echo " telesrv-admin: tail -f ${ADMIN_LOG}"
|
||||
echo "============================================"
|
||||
|
||||
wait "$TELESRV_PID" 2>/dev/null || true
|
||||
wait "$ADMIN_PID" 2>/dev/null || true
|
||||
# --- Interactive menu -------------------------------------------------------
|
||||
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