Files
geutebruck/geutebruck-api/stop-services.ps1
Administrator a92b909539 feat: GeViScope SDK integration with C# Bridge and Flutter app
- Add GeViScope Bridge (C# .NET 8.0) on port 7720
  - Full SDK wrapper for camera control, PTZ, actions/events
  - 17 REST API endpoints for GeViScope server interaction
  - Support for MCS (Media Channel Simulator) with 16 test channels
  - Real-time action/event streaming via PLC callbacks

- Add GeViServer Bridge (C# .NET 8.0) on port 7710
  - Integration with GeViSoft orchestration layer
  - Input/output control and event management

- Update Python API with new routers
  - /api/geviscope/* - Proxy to GeViScope Bridge
  - /api/geviserver/* - Proxy to GeViServer Bridge
  - /api/excel/* - Excel import functionality

- Add Flutter app GeViScope integration
  - GeViScopeRemoteDataSource with 17 API methods
  - GeViScopeBloc for state management
  - GeViScopeScreen with PTZ controls
  - App drawer navigation to GeViScope

- Add SDK documentation (extracted from PDFs)
  - GeViScope SDK docs (7 parts + action reference)
  - GeViSoft SDK docs (12 chunks)

- Add .mcp.json for Claude Code MCP server config

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 08:14:17 +01:00

87 lines
3.3 KiB
PowerShell

# Stop Geutebruck API Services
# This script stops Flutter Web, Python API, SDK Bridge, and GeViServer
#
# Usage:
# .\stop-services.ps1 # Stop all services
# .\stop-services.ps1 -KeepGeViServer # Stop only API/Bridge, keep GeViServer running
param(
[switch]$KeepGeViServer
)
$ErrorActionPreference = "SilentlyContinue"
Write-Host "========================================" -ForegroundColor Cyan
if ($KeepGeViServer) {
Write-Host "Stopping API Services (keeping GeViServer)" -ForegroundColor Cyan
} else {
Write-Host "Stopping Geutebruck API Services" -ForegroundColor Cyan
}
Write-Host "========================================" -ForegroundColor Cyan
Write-Host ""
# Stop Flutter Web Server
$flutterPort = Get-NetTCPConnection -LocalPort 8081 -State Listen -ErrorAction SilentlyContinue
if ($flutterPort) {
$flutterPid = $flutterPort | Select-Object -First 1 -ExpandProperty OwningProcess
Write-Host "[1/5] Stopping Flutter Web (PID: $flutterPid)..." -ForegroundColor Yellow
Stop-Process -Id $flutterPid -Force
Write-Host " [OK] Flutter Web stopped" -ForegroundColor Green
} else {
Write-Host "[1/5] Flutter Web is not running" -ForegroundColor Gray
}
# Stop Python API
$uvicorn = Get-Process -Name "uvicorn"
if ($uvicorn) {
Write-Host "[2/5] Stopping Python API (PID: $($uvicorn.Id))..." -ForegroundColor Yellow
Stop-Process -Name "uvicorn" -Force
Write-Host " [OK] Python API stopped" -ForegroundColor Green
} else {
Write-Host "[2/5] Python API is not running" -ForegroundColor Gray
}
# Stop SDK Bridge
$sdkBridge = Get-Process -Name "GeViScopeBridge"
if ($sdkBridge) {
Write-Host "[3/5] Stopping SDK Bridge (PID: $($sdkBridge.Id))..." -ForegroundColor Yellow
Stop-Process -Name "GeViScopeBridge" -Force
Write-Host " [OK] SDK Bridge stopped" -ForegroundColor Green
} else {
Write-Host "[3/5] SDK Bridge is not running" -ForegroundColor Gray
}
# Stop C# GeViServer Bridge
$geviServerBridge = Get-Process -Name "GeViServerBridge"
if ($geviServerBridge) {
Write-Host "[4/5] Stopping C# GeViServer Bridge (PID: $($geviServerBridge.Id))..." -ForegroundColor Yellow
Stop-Process -Name "GeViServerBridge" -Force
Write-Host " [OK] C# Bridge stopped" -ForegroundColor Green
} else {
Write-Host "[4/5] C# GeViServer Bridge is not running" -ForegroundColor Gray
}
# Stop GeViServer (unless -KeepGeViServer flag is set)
if (-not $KeepGeViServer) {
$geviServer = Get-Process -Name "GeViServer"
if ($geviServer) {
Write-Host "[5/5] Stopping GeViServer (PID: $($geviServer.Id))..." -ForegroundColor Yellow
Stop-Process -Name "GeViServer" -Force
Write-Host " [OK] GeViServer stopped" -ForegroundColor Green
} else {
Write-Host "[5/5] GeViServer is not running" -ForegroundColor Gray
}
} else {
$geviServer = Get-Process -Name "GeViServer"
if ($geviServer) {
Write-Host "[5/5] Keeping GeViServer running (PID: $($geviServer.Id))" -ForegroundColor Green
} else {
Write-Host "[5/5] GeViServer is not running (cannot keep)" -ForegroundColor Yellow
}
}
Write-Host ""
Write-Host "========================================" -ForegroundColor Green
Write-Host "Services Stopped" -ForegroundColor Green
Write-Host "========================================" -ForegroundColor Green