验证状态:本页为接入视角新写(20 号票)。事实取材自 MQTT 清单层生成页与机构手册已核验场景正本(直播 / 对讲域),设备固件源码不在本工作区、其消费语义正本已标缺证处照实继承,本页自身不做二次核验、未联调。
对讲(ptt)与直播(webrtc)两个媒体域的设备侧通道全景:webrtc 直连信令族、ICE 下发、ptt 投递,以及 janus 信令转发通道与 iot v1 信封。这是接入动线的第四步——媒体面的实时行为。中心对 Janus Normal / Admin 通道的转发边界总口径见机构手册Janus 信令边界。
device/{deviceNo}/webrtc/v1 是 Web ⇄ Broker ⇄ 设备直连的信令通道(中心网关不消费,属中心不消费的接入面,默认订阅清单无 device/+/webrtc/#,见MQTT 主题清单 · 服务端订阅面)。Web 侧正本按用途分三组,设备侧按 sub 分派:
| 信令组 | 命令 | Web 侧正本 |
|---|---|---|
| 状态与媒体配置探测 | ping(直播状态快照)/ media(媒体配置读 / 写) |
探测设备直播状态与媒体配置 |
| P2P 信令 | call / sdp / candidate / bye(不经 Janus 的直连协商) |
与设备直连协商直播流 |
| SFU 起播控制 | ctrl:"play"(向 Janus 房间推流)/ ctrl:"idr"(关键帧) |
控制设备 SFU 直播起播与关键帧 |
device,{deviceNo},webrtc,{sessionId}(见设备身份与凭据)。{identity}/{id}/webrtc/{telemetry|retrieve}/v1)——契约行见MQTT 主题清单 · 谓词族,字段级见 yaml 详解 · telemetry / retrieve。reply topic、无 transaction 关联(正本口径);载荷与应答形态见各正本与设备业务 · mqtt-bridge。server/center-server/iot/v1/list-ice-server(上行 · 请求响应)——按请求方设备编号返回 WebRTC 打洞用的 ICE 服务器配置;契约行见静态 topic 表,字段级见 yaml 详解 · list-ice-server。device/{deviceNo}/webrtc/deliver/v1——把中心分配的 ICE 列表推送给 webrtc 在线的设备(无应答单向、Web 按内容去重)——正本见下发 ICE 服务器到设备。device/{deviceNo}/ptt/deliver/v1 承载两类形态不同、互为独立的下行(设备端按 payload 形态分派,正本口径):
pushPttConfig 后,中心按群组绑定关系为设备重生成 PTT 配置并异步重投到该 topic(对接结论;中心内部投递机制不展开)——正本见刷新设备 PTT 配置,业务语义见基础数据业务 · talk-group。{identity}/{id}/ptt/{telemetry|retrieve}/v1)——契约行见MQTT 主题清单 · 谓词族,字段级见 yaml 详解 · telemetry / retrieve。媒体服务端(Janus)的信令经中心转发,不经设备直连 topic:
server/center-server/iot/v1/forward/janus/to(静态 topic,直通白名单、janus 请求原文透传),transaction 第 2 段为 deviceNo、中心以该段解析目标 Janus 节点——契约行见静态 topic 表,字段级见 yaml 详解 · forward-janus-to;会话正本见创建并保活 Janus 直播会话。server/center-server/{webrtc|ptt}/v1/forward/janus/to 及 admin 变体)——行级见静态 topic 表,字段级见 yaml 详解 · webrtc forward-janus-to、ptt forward-janus-to。server/{janusNo}/to(admin 通道管理凭据由服务端侧注入)、回包 topic 取自请求 transaction 前缀或路由缓存——见MQTT 主题清单 · 动态下行。上述通道共用 iot v1 请求 / 应答信封:sub 区分同 topic 上的业务、id 为客户端 ID、reply 指定应答 topic、replyNumberMax/replyInterval 控制多次回复、token 为认证令牌、params 传参——成员语义与取值钳制见设备服务接口规范,消费者侧解包语义见MQTT 消费者。
sub 分派全集、应答形态)正本均标缺证——Web 正本只能证明「Web 发什么」,不能证明「设备认什么」。server/{janusNo}/from 入站)无正本——现役叙事均为 Web 经中心转发,设备经 webrtc ctrl 命令间接起播。canSpeak 占位语义、PTT 配置的设备侧应用行为缺证(正本已标)。