记录仪设备接入总览

本章是接入视角章(分层术语见根目录 CONTEXT.md「文档分层模型」):面向记录仪设备(net-body-camera,执法记录仪 / 随身摄像机)固件与设备侧软件的开发者。它与按部署客群划分的机构场景零售场景手册并列,与采集服务器接入章构成平台的两个接入面:

  • 采集服务器接入讲「中心侧的采集服务软件如何对接平台」(REST 服务间 + MQTT + data/v1 指令服务面);
  • 本章讲「记录仪设备本身如何对接平台」——设备不是中心 REST 的调用方(一般经采集服务器),而是独立的 MQTT 客户端 + 文件上传执行方 + 媒体端点:上行遥测与检索、接收下行命令与应答、维护在线状态、执行文件上传与固件升级。

验证状态:本章为接入视角新写(dev-manual-restructure 20 号票),不伪造核验基线。页面事实全部引用清单层(MQTT inventory / 详解 yaml / endpoints,自带 provenance 头)与机构、零售手册已核验场景正本(各页自带验证状态与适用基线),本章只做导航级复述与动线重组,不做二次核验、未联调;事实冲突时一律以链接目标为准。设备固件源码不在本工作区,「设备如何消费」的语义凡正本已标缺证处,本章照实标注、不补写。

读者画像与接入前提

你开发的是运行在记录仪设备上的固件 / 设备侧软件。接入前需要具备:

  • 一套已部署的中心服务器(center-server)与至少一台采集服务器,且管理侧已在台账登记这台设备并绑定到采集服务器(绑定由管理侧维护、设备实际信息以回流时点为准——采集侧视角见采集服务器接入 · 名下设备与绑定清单同步);
  • 中心侧台账分配的设备编号(deviceNo)——MQTT 寻址以编号而非 ID 进行;
  • 你要实现的软件面(按动线展开):
    1. MQTT 客户端——以 device,{deviceNo},… 身份接入 Broker:上行遥测 / 检索 / 保活,订阅自身 deliver 与直连命令 topic;
    2. 下行命令执行——device/{deviceNo}/iot/configs/v1 上的 get / set / bcplus(Web 直发,中心网关不消费,设备是最终消费者);
    3. 媒体面——device/{deviceNo}/webrtc/v1 直连信令族与 device/{deviceNo}/ptt/deliver/v1 对讲投递(配合 janus 信令通道);
    4. 文件与固件执行——按 retrieve 应答给定的目标上传文件、按固件信息升级(唯一的设备侧 HTTP 直连例外是公网固件检查端点)。

接入动线

按对接顺序读本章各页:

步骤 页面 解决的问题
1. 身份与凭据 设备身份与凭据 deviceNo 从哪来、MQTT 客户端身份怎么构造、账号材料与固件检查端点
2. 上行面 上行面:遥测与检索上报 遥测 / 检索往哪个 topic 发、分类信息如何归档
3. 下行面 下行面:deliver 落点与直连命令 设备要订阅哪些 topic:应答 / DMS 推送落点、configs 直连命令族、文件上传与固件升级执行
4. 媒体通道族 媒体通道族:ptt / webrtc / janus 信令 直播信令、ICE 下发、对讲 join/kick 与配置投递、janus 转发通道与 iot 信封
5. QoS 与在线 QoS 与在线状态 全局 QoS 约定、保活与在线判定、broker 事件与对账

事实引用边界

本章遵守场景层引用边界(spec「场景层改写」),且以 MQTT 为主:

  • 可复述:MQTT topic 形状与方向(引主题清单行)、导航级端点行(方法 + 路径 + 一句话用途)、行为规则的一句话点名;
  • 不复述:payload 字段表、请求/响应结构、错误码、QoS/retain 数值、超时与重试约定——字段级一律链重点主题详解对应小节与设备服务接口规范,数值级链业务页(business/);
  • 机构手册中「Web 如何遥控 / 监看设备」的逐命令正本(设备遥控 5 页、直播 14 页、对讲 19 页等)是本章下行面的需求来源,本章从设备实现方视角反向引用(正本里「设备行为缺证」的结论原样继承),不复制其字段级内容。

术语与阅读坐标

  • 记录仪设备 / 采集设备:记录仪在台账语境里是「采集设备」(data-acquisition-device),由采集服务器管理——台账概念见机构手册设备与资产域总览,采集侧接入叙事见采集服务器接入
  • MQTT 面:主题全量(18 静态 + 7 谓词族 + $SYS + 动态下行 + 服务端订阅面)见MQTT 主题清单;7 个重点主题的字段级 yaml 见重点主题详解。注意清单收录的是中心网关消费 / 发布面device/{deviceNo}/… 上的 Web 直连命令族(configs / webrtc / ptt deliver)中心网关不消费,不在清单内,其口径见各动线页的「订阅面」引用。
  • iot v1 信封:请求 / 应答消息的信封成员与语义(sub、id、reply、replyNumberMax、replyInterval、token、params 等)见设备服务接口规范——本章各页一句话点名、不复述。
  • 公共 wire 边界(发布 Promise 语义、QoS 不可推必达等)见机构手册MQTT 连接与消息边界