Page:
Task-24-ONVIF与RTSP视频接入验证
Pages
Architecture-and-Code-Map
Audience-Document-Template
Business-Rules-and-Glossary
Common-Changes
Delivery-Documentation-Guide
Deployment-Template
Deployment-and-Operations
Development-Workflow
Existing-Project-Adoption-Guide
Home
Local-Development-and-Verification
Multi-Agent-Collaboration
New-Project-Documentation-Setup
Product-Requirements
Product-Roadmap
Project-Profile
Requirements-Migration-Matrix
Task-1-三项目并行建单与协同工单顺序
Task-101-Sense-GoAdmin-应用外壳
Task-104-Sense-30天登录有效期
Task-106-Sense-本机-Supervisor-实例
Task-12-Bell独立登录RBAC与认证审计
Task-17-Bell不可变Event与永久幂等收据
Task-18-Bell开发测试合成事件入口
Task-19-Bell规则匹配与Event-Alert链路
Task-20-Bell-Alert并发处置与审计时间线
Task-21-Sense独立GoAdmin产品骨架
Task-22-Sense独立登录RBAC与审计
Task-23-Sense设备台账与凭据边界
Task-24-ONVIF与RTSP视频接入验证
Task-25-MediaMTX进程与状态对账
Task-26-Sense单路实时监看
Task-27-Sense区域与方向警戒线版本配置
Task-28-三项目当前MVP交互原型
Task-3-GoAdmin默认模块精简与UI组件复用
Task-30-Sense原型对齐GoAdmin与Element-Plus
Task-31-Bell原型对齐GoAdmin与Element-Plus
Task-32-Sense网管与非技术人员原型
Task-33-Bell普通用户预警处理原型
Task-36-Bell-MVP文档与待验收归档
Task-37-Sense-Windows前后端一键打包
Task-40-Sense全模式密码最短6位
Task-42-Sense密码策略仅限制最短6位
Task-44-Sense管理员侧栏模块为空修复
Task-46-Sense-Windows包内配置加载
Task-48-支持ONVIF-Digest认证与安全Media地址归一化
Task-5-冻结Sense与Bell-GoAdmin技术基线
Task-50-ONVIF与RTSP分离凭据并持久化Profile
Task-51-接入成功后自动建立媒体路由并进入实时监看
Task-54-修复实时监看按需拉流循环等待
Task-56-修复设备编辑请求包含新建专用字段
Task-58-建立explore-main-dev分支治理并重置GoAdmin开发基线
Task-61-Sense冻结GoAdmin源码产品骨架
Task-64-Sense登录RBAC与审计
Task-65-Sense设备台账与凭据边界
Task-66-Sense视频接入与Profile
Task-67-Sense视频服务生命周期与状态对账
Task-68-Sense单路实时监看与播放状态反馈
Task-69-Sense多边形区域与方向警戒线配置
Task-70-Sense-Windows配置启动与打包交付
Task-9-Bell独立GoAdmin产品骨架
Task-90-Sense项目根目录Windows启动脚本
Task-92-Sense旧设备能力JSONB兼容迁移
Task-95-Sense旧媒体路由唯一约束兼容迁移
Task-97-Sense免验证码登录与管理员密码重置
Task-99-Sense登录页只读配置接口
Task-Archive-Template
Troubleshooting
Clone
This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
24 ONVIF 与 RTSP 视频接入验证
- 类型:需求
- 所属 Epic:#7
- 所属 MVP / 版本:#8
- 状态:已完成
- 日期:2026-08-12
- Gitea 工单:#24
- Wiki 页面:Task-24-ONVIF与RTSP视频接入验证
- Wiki revision:见本地镜像头
背景与目标
支持获准网络中的摄像机发现或手工接入,读取并验证主辅 Profile。
最终方案
实现默认关闭的受控 WS-Discovery,仅允许显式配置的本机网卡 IP;支持无凭据 ONVIF 地址、Profile/StreamUri SOAP 解析、主辅分辨率分类和 RTSP TCP/OPTIONS 验证。认证失败、不可达、超时、校时与重探测状态可定位;凭据只经内部端口取得。
与已确认方案一致。为使用 #21 的模块注册和项目内窄端口,实施前已在工单评论中记录精确集成 write_path;未修改 contracts、Brain、Bell 或根级部署。
修改文件
- Sense/server/app/sense/:本工单后端领域、适配器、服务、HTTP 与测试。
- Sense/server/cmd/sense/modules_*.go:独立模块注册文件。
- Sense/server/database/migrations/:本工单需要的 PostgreSQL 迁移(如适用)。
- Sense/ui/src/:本工单 API、页面、路由及明确需要的局部业务组件。
- Sense/tests/、Sense/testdata/:无生产数据、无真实秘密的验收说明与夹具。
验收结果
ONVIF XML 夹具、凭据 URI 拒绝、主辅 Profile、RTSP 状态映射和接入编排 race 测试通过。
工单保持 open / 待验收,未代替用户执行浏览器、真实设备或部署环境验收。
测试
- Go 1.26.5 go vet ./...:通过。
- Go 1.26.5 go test -race ./...:全部通过。
- Go 1.26.5 go test -count=1 ./...:全部通过。
- Go 1.26.5 go build ./...:通过。
- corepack pnpm@9.15.1 install --frozen-lockfile:通过。
- corepack pnpm@9.15.1 lint --quiet:通过。
- corepack pnpm@9.15.1 build:通过;仅有 Element Plus vendor bundle 体积建议警告。
- Sense 独立 smoke、Harness 严格检查和 31 项 Harness 测试:通过。
- 未验证部分:未扫描真实网络,未验证具体摄像机的 WS-Security/厂商兼容、时间漂移恢复或真实 RTSP。
相关提交
- $(System.Collections.Hashtable.commit) 本工单实现提交
5177861docs: document Sense MVP operations (#22-#27)
用户验收
- 2026-08-14:用户明确确认当前未验收工单通过验收。
- 本次验收确认该工单在历史
explore快照中的交付与证据;不恢复旧自研基础框架为dev产品基线,后续迁移仍受 #58、#61、#62 约束。