跳过导航,直接进入主要内容跳过导航,直接进入主要内容跳过导航,直接进入主要内容

CLI 工具总览

cmd/ 附带四个辅助可执行文件——发现探测、交互式快速上手工具、深度诊断采集器,以及可独立运行形态的虚拟相机模拟器。它们都是零依赖单二进制,每次发布为六个平台构建。

哪个工具干哪件事?

你想…… 运行
看局域网上有哪些 ONVIF 设备(脚本友好输出) discover
交互式摆弄一台相机——连接、云台点动、取流地址 onvif-quick
采集一台相机的全操作报告(提 issue、留档抓包) onvif-diagnostics
无硬件测试录像机/NVR 对接虚拟相机 onvif-server
把抓到的 SOAP 交互变成回归测试(开发者) generate-tests

各工具手册:discover · onvif-quick · onvif-diagnostics · onvif-server

接触一台未知相机的典型顺序是前三个接力:discover 找到它, onvif-quick 证明本库能与它通信,onvif-diagnostics -capture-xml 记录你需要的其余一切。

安装

v2.1.0 起每个 release 都附带六平台预构建产物(linux/amd64、linux/arm64、linux/arm、 darwin/amd64、darwin/arm64、windows/amd64)及 SHA256SUMS——下载即用, 无需 Go 工具链:

gh release download v2.2.0 -R mickeyzzc/onvif-go -p 'onvif-quick_linux_amd64'

或按版本锚定从源码安装:

go install github.com/mickeyzzc/onvif-go/v2/cmd/discover@v2.2.0
go install github.com/mickeyzzc/onvif-go/v2/cmd/onvif-quick@v2.2.0
go install github.com/mickeyzzc/onvif-go/v2/cmd/onvif-diagnostics@v2.2.0
go install github.com/mickeyzzc/onvif-go/v2/cmd/onvif-server@v2.2.0

或在检出目录构建(make build 会连开发者工具 generate-tests 一起构建;它不进发布产物)。

共同约定

  • 退出码 0 = 成功;非 0 且 stderr 有信息 = 失败。
  • 相机凭证从不读配置文件——只认命令行旗标(onvif-server 另支持 ONVIF_SERVER_PASSWORD 环境变量),密钥不落 dotfile。
  • 所见即库之所为:这些工具只是公开 API 的薄壳,没有工具侧特例—— 在工具里观察到的行为,在你自己的集成代码里同样成立。

discover 与 onvif-quick 背后的发现机制见 discovery 手册;嵌入模拟器而非运行二进制见 server 手册。

可访问性增强功能已加载,支持焦点管理、键盘导航和屏幕阅读器
页面已加载完成,可访问性功能已启用