DRS9 信息发布系统
系统概述
一套企业级看板信息发布管理系统,支持企业内部数据大屏展示和公共场所信息发布。系统采用 C/S + B/S 混合架构,通过服务器端统一管理内容分发和设备控制。
应用场景
- 企业内部:数据大屏、会议显示、KPI 展示、公告发布
- 公共场所:学校信息发布、商场广告、车站信息发布、医院导诊显示
系统架构
┌─────────────────────────────────────────────────────────────────┐
│ 服务器端 (ASP.NET Core) │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 内容管理 │ │ 设备管理 │ │ 用户管理 │ │ 推送服务 │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
│ │ │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ WebSocket 实时通信 │ │
│ └──────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────┘
│
┌───────────────┴───────────────┐
▼ ▼
┌─────────────────────┐ ┌─────────────────────┐
│ 移动客户端 App │ │ 浏览器客户端 │
│ (Android/iOS/Win) │ │ (Web) │
│ - 内容展示 │ │ - 内容展示 │
│ - WebSocket 长连接 │ │ - 短连接/轮询 │
│ - 自动升级 │ │ - 临时访问授权 │
└─────────────────────┘ └─────────────────────┘
技术选型
服务器端
- 框架:ASP.NET Core 8.0+
- 通信:WebSocket (实时)、REST API (配置管理)
- 数据库:SQLite (单机) / PostgreSQL/MySQL (集群)
- 缓存:内存缓存 / Redis (分布式)
客户端
- 移动端:.NET MAUI / Flutter (跨平台)
- Web端:Vue 3 / React
功能模块
服务器端
1. 内容管理模块
- 应用类型:数据看板、网页轮转器、图片轮播、视频播放
- 内容编排:支持多内容组合、定时切换、优先级控制
- URL 管理:每个应用对应一个服务器端 URL 地址
2. 设备管理模块
- 设备注册:设备码激活绑定
- 设备分组:按区域/部门批量管理
- 远程控制:推送内容、重启应用、禁用设备、升级 App
- 状态监控:在线状态、内容加载情况、设备信息
3. 授权认证模块
- 认证方式:设备码(首次注册) + Token(日常通信)
- 设备码格式:
XXX-XXX-XXX(如ABC-123-XYZ) - Token 类型:JWT,包含设备 ID、权限、过期时间
4. 推送服务模块
- 实时推送:通过 WebSocket 推送内容更新、指令
- 指令类型:刷新内容、切换应用、重启、截图上报
- 离线消息:设备离线时消息持久化,上线后推送
客户端
1. 移动客户端 App
- 配置简化:仅需设置服务器地址
- 自动获取:内容 URL 由服务器动态分配
- 长连接:WebSocket 保持与服务器连接
- 自动升级:支持服务器推送的版本更新
2. 浏览器客户端
- 访问方式:通过授权链接或设备码访问
- 实时同步:WebSocket 或短轮询获取更新
- 临时授权:支持限时访问 Token
设备授权流程
┌─────────┐ 设备码 ┌─────────┐ 验证+Token ┌─────────┐
│ 客户端 │ ───────────────→ │ 服务器端 │ ───────────────→ │ 客户端 │
└─────────┘ └─────────┘ └─────────┘
│ │ │
│ 激活请求(设备码) │ │
│ ABC-123-XYZ │ │
│ │ │
│ ┌─────────────────┐ │
│ │ 验证设备码 │ │
│ │ 绑定设备身份 │ │
│ │ 生成 JWT Token │ │
│ └─────────────────┘ │
│ │ │
│ 返回 Token │ │
│ ←───────────────────────── │
│ │ │
│ 后续请求携带 Token │
│ ────────────────────────────────────────────────────────→│
数据库设计(草案)
表结构
devices- 设备信息表device_groups- 设备分组表applications- 应用内容表device_assignments- 设备与应用分配表users- 用户管理表audit_logs- 操作审计日志
部署要求
服务器端
- 操作系统:Linux (推荐) / Windows Server
- 运行时:.NET 8.0 Runtime
- 端口:HTTP (8080)、HTTPS (8443)、WebSocket (同端口)
- 内存:最低 2GB,推荐 4GB+
客户端
- 移动端:Android 8.0+ / iOS 12+
- Windows:Windows 10+
开发计划
Phase 1 - 基础框架
- 服务器端项目搭建
- 数据库设计与迁移
- 设备注册与认证
- WebSocket 通信基础
Phase 2 - 核心功能
- 内容管理模块
- 设备管理模块
- 推送服务模块
- 移动端 App 基础框架
Phase 3 - 高级功能
- 内容编排与定时切换
- 设备分组批量管理
- 自动升级功能
- 浏览器客户端
Phase 4 - 优化完善
- 性能优化
- 监控告警
- 部署文档
- 用户手册
许可证
待定
Description
Languages
C#
60.2%
HTML
37.7%
CSS
1.4%
Shell
0.7%