批量查询设备类别信息(list-category-info)

验证状态:已源码核验、未联调;Web 与中心消费者双侧核验。 适用基线:源码归纳 @ 2026-09-14

用途与场景

平台 IoT v1 请求/应答:批量查询一批 clientId 前缀(设备 iot/webrtc 客户端)的在线快照与缓存类别状态(WebRTC/IOT 版本、电池、GPS、网络、磁盘、用户配置等),供直播页设备选择、状态角标与信息面板消费。本页是实时监看/回放链路对该 topic 调用的唯一操作正本;对讲链路对其他 topic 的同类查询见其正本(list-online-statuslist-ice-server)。

使用位置

页面/功能 角色或空间分支
单直播页设备前缀查询(9 类 categories,忙时 1 秒轮询) 登录用户;单直播页
多直播页设备前缀查询(categories 取 BATTERY_INFO_SUSER_CFG_S,忙 3 秒/闲 12 秒) 登录用户;多直播页
回放页设备前缀查询(categories 取 BATTERY_INFO_S 登录用户;回放页
采集服务器列表直发(categories 取 SERVER_INFO,前缀 server,{deviceNo},iot;列表变化时重查) 登录用户;采集服务器列表
设备列表直发(categories 取 DEVINFO_S,前缀 device,{deviceNo},iot;列表变化时重查) 登录用户;设备列表

对应 inventory operationId:mqtt-list-category-info-server-center-server-iot-v1-list-category-info-2eef513a(监看/回放 hook 调用点)与 mqtt-module-server-center-server-iot-v1-list-category-info-1e5de0e4mqtt-module-server-center-server-iot-v1-list-category-info-85075835(设备/采集服务器列表页直发调用点,2026-09-12 由整合票 20 按同 topic 同命令合并进本正本)。三类响应写入 useDataAcquisitionDeviceStore.categoryInfoListonReply);设备/采集服务器列表页分别写入各自的 categoryInfoList store。

端点

MQTT 请求 server/center-server/iot/v1/list-category-info(应答按 reply topic 回流)— 批量查询一批 clientId 前缀的在线快照与缓存类别状态(WebRTC/IOT 版本、电池、GPS、网络、磁盘、用户配置等)。

主题契约全量事实(方向、消费方、payload 归档口径)见 MQTT 主题清单 · 静态 topicyaml 详解 · list-category-info;该通道的业务语义(iot v1 信封、状态缓存来源)见设备业务 · mqtt-bridge 设备消息链。载荷形态 {id, reply, replyNumberMax, replyInterval, params:{mqttClientIdPrefixes, categories}}(categories 为类别名数组,消费者按字符串查缓存、不校验枚举);应答信封(id/status/replyNumber/data[])的机器契约见 yaml 详解。

轮询语义:single-live 忙 1 秒、闲 (locationInterval??5s)×3+100msmulti-live/playback 忙 3 秒、闲 12 秒;设备/采集服务器列表页在列表变化时重查。

动线与完成判据

层级 判据
发布完成 publishAsync Promise 成功;不代表中心已处理
应答到达 应答 topic 收到 status=200data 数组可解析(getReplyRows,单直播 )
超时 请求无内置超时;由轮询周期补偿(协议身份表)

错误与边界

  • params/categories/mqttClientIdPrefixes 三类业务拒绝经应答 status/error 回传。
  • 未上报过的类别不出现在 data[].categories;空对象不代表设备离线,仅表"无缓存"。
  • 快照轮询,无推送语义;onlineStatus 延迟取决于在线状态缓存写入源($SYS 事件族,非本域)。
  • 传输 QoS 不推出状态必达。

调用关系与资源清理

已知缺口

  1. data[].categories 值的权威 schema 由上报侧决定(设备固件或 Web 代报的 struct 原文),设备固件侧缺证。
  2. Broker ACL 与在线状态缓存写入源($SYS 事件族)属部署/其他域证据,未核验。
  3. 未执行真实 Broker 联调。