Files
qipai/docs/db-changelog/2026-06-22-M06-C-iot-messages.md
T
2026-08-10 16:28:11 +08:00

1.4 KiB
Raw Blame History

M06-C IoT 消息数据库变更

  • 迁移版本:2026062220
  • 名称:m06c_iot_messages

新增

  • qipai_iot_commands:13 位命令 ID、状态、请求/回包、发布/ACK/超时和失败原因。
  • qipai_iot_device_events:原始/标准化消息、Topic、事件类型、payload 哈希、接收次数。
  • qipai_iot_dead_letters:非法 Topic、未知设备和解析失败消息。

幂等与回滚

  • 设备事件按租户、设备、Topic 和 payload 哈希唯一;重复消息只增加计数。
  • 死信按 Topic 和 payload 哈希唯一。
  • down 迁移仅删除 M06-C 三张表,不影响设备资产和拓扑。

M06-C-R1 语义收口(2026-08-10

  • 本阶段不新增表或迁移版本;沿用既有 JSON 与状态列修正协议语义。
  • 未知厂商结果的事件写 processing_status=PROTOCOL_ERROR,原结果保留在 raw_payload,标准化结果写 UNKNOWN_VENDOR_RESULT,相关命令写 FAILED/UNKNOWN_VENDOR_RESULT,并新增协议死信和开放告警。
  • 门锁密码/卡号请求和 record.content 在写入 request_payload/raw_payload/normalized_payload/response_payload 前哈希与脱敏。
  • AddDevice 首 ACK 保持命令 PUBLISHED,携带 subtype/subID 的最终 ACK 才转 ACKED 并创建 701C/701G 拓扑。
  • WSL MySQL 8.4.10 一次性数据库已验证上述语义及裸 devicewill=close 离线落库;完整迁移往返仍为 144 up、124 verify、140 down。