How 0xamirreza/ocserv-dashboard works
Ocserv Dashboard is a web-based control panel and customer-insights product for an OpenConnect VPN server. Administrators enter through the dashboard to manage VPN users and groups, monitor server activity, review reports, configure system services, and administer Telegram features; customers can view account usage. The repository also contains separate bot, live-log, expiry, and webhook services. The sampled frontend establishes app startup and route dispatch, while README capabilities describe several unsampled service boundaries; those links are marked unverified rather than presented as inspected calls.
Main entry points: routes.go API routing · main.ts Dashboard app · ocserv Ocserv operations · MainRoutes.ts Dashboard routes
Components 24
Web dashboard
- Dashboard app
web/src/main.ts - Dashboard routes
web/src/router/MainRoutes.ts - Dashboard features
web/src/views - API clients
web/src/api
Management API
- API routing
services/api/internal/providers/routing/routes.go - System and auth
services/api/internal/services/system/controller.go - VPN user management
services/api/internal/services/ocserv_user/controller.go - VPN group management
services/api/internal/services/ocserv_group/controller.go - Customer insights
services/api/internal/services/customer/controller.go - Dashboard monitoring
services/api/internal/services/home/controller.go - Reports and statistics
services/api/internal/services/report/controller.go - Telegram administration
services/api/internal/services/telegram/controller.go - Backup and restore
services/api/internal/services/backup/controller.go
VPN operations
- Ocserv operations
services/common/ocserv - Occtl commands
services/common/ocserv/occtl/occtl.go
Bot and integrations
- Telegram bot
services/telegram_bot/internal/bot/handlers/hub.go - Bot repository
services/telegram_bot/internal/repository/repository.go - Live log stream
services/log_stream/internal/sse/service.go - Usage statistics
services/log_stream/internal/stats/service.go - User expiry service
services/user_expiry/internal/service/service.go - Occtl webhook
services/common/occtl_docker/webhook.go
Shared services
- Application database
services/common/pkg/database/database.go
Other components
- Administrator
- Customer
Connections 18
- Administrator → Dashboard app: opens
README.md - Customer → Dashboard app: views usage
README.md - Dashboard app → Dashboard routes: starts router
web/src/main.ts - Dashboard routes → Dashboard features: dispatches
web/src/router/MainRoutes.ts - Dashboard app → API clients: uses API
- API clients → API routing: requests
- API routing → System and auth: routes to
- API routing → VPN user management: routes to
- API routing → VPN group management: routes to
- API routing → Customer insights: routes to
- API routing → Dashboard monitoring: routes to
- API routing → Reports and statistics: routes to
- API routing → Telegram administration: routes to
- API routing → Backup and restore: routes to
- VPN user management → Ocserv operations: manages users
- VPN group management → Ocserv operations: manages groups
- Occtl commands → Ocserv operations: operates server
- Telegram bot → Bot repository: uses repository