From e084a4ae3f5038c4ec7dae6028a2e3d7527680a8 Mon Sep 17 00:00:00 2001 From: ila <2+ila@noreply.git.ilapage.cn> Date: Fri, 14 Aug 2026 17:45:10 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E8=AE=B0=E5=BD=95=20Sense=20MediaMTX?= =?UTF-8?q?=20=E9=AA=8C=E8=AF=81=E6=96=B9=E6=B3=95=20(#67)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Local-Development-and-Verification.-.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/Local-Development-and-Verification.-.md b/Local-Development-and-Verification.-.md index a9a67e2..e0a05ec 100644 --- a/Local-Development-and-Verification.-.md +++ b/Local-Development-and-Verification.-.md @@ -159,6 +159,29 @@ $env:SENSE_CREDENTIAL_KEY = [Convert]::ToBase64String($keyBytes) 视频接入还需在仓库外配置 SENSE_ONVIF_DISCOVERY_IP(获准的本机网卡 IP)和 SENSE_ONVIF_ALLOWED_CIDRS(逗号分隔的获准摄像头网段)。不要使用 0.0.0.0/0 代替授权清单。 协议回归位于 app/sense/onvif、app/sense/rtsp、app/sense/admission;隔离 PostgreSQL 重启恢复测试通过 SENSE_ADMISSION_TEST_DATABASE_URL 显式启用。验证至少覆盖 Digest/Basic、无配置发现提示、URL 凭据和敏感查询拒绝、目标网段、重定向、Media/Stream 主机归一化、主子码流、失败重探保留已验证 Profile,以及 viewer 只读权限。 +MediaMTX 保持仓库外独立二进制。运行前在进程环境设置: + +```powershell +$env:SENSE_MEDIAMTX_BINARY = '' +$env:SENSE_MEDIAMTX_CONFIG = '<仓库外 mediamtx.yml>' +$env:SENSE_MEDIAMTX_API = 'http://127.0.0.1:9997' +``` + +配置文件不存在时 Sense 只生成 loopback API 和空 `paths: {}` 的无凭据基础配置;模板位于 `Sense/server/config/mediamtx/mediamtx.yml.example`。Control API 不允许非回环地址。真实集成验证使用: + +```powershell +$env:SENSE_MEDIAMTX_TEST_BINARY = '' +go test ./tests/media -run TestRealMediaMTXControlLifecycle -v + +$env:SENSE_MEDIA_TEST_DATABASE_URL = '<隔离 PostgreSQL 连接>' +go test ./tests/media -run TestPostgresColdStartRestoresDesiredRoute -v + +$env:SENSE_MEDIA_MIGRATION_TEST_DATABASE_URL = '<隔离 PostgreSQL 连接>' +go test ./cmd/migrate/migration/version -run TestMediaMigrationOnPostgres -v +``` + +测试必须使用隔离端口和数据库;结束后停止测试进程。不得输出连接串或摄像头凭据。 +