Kafka 系列 —(24)智能锁场景专用 Topic 样例 + 数据格式校验 Schema

目录

1. 智能锁场景专用 Topic 设计(MQTT + IoT Core + Kafka)

核心 Topic 目录(智能锁场景)

① 状态上报(State Report)

② 远程开锁命令(Remote Unlock Command)

③ 命令回执(Command Ack)

④ 事件上报(Event)

⑤ OTA 升级

2. 每类消息的 JSON 示例

① 状态上报(state/report)

② 远程开锁 command/unlock

③ 命令 Ack(command/ack)

④ 事件上报(如:door-open)

⑤ OTA 结果

3. 数据格式校验 Schema(JSON Schema)

① 状态上报 JSON Schema

② 开锁命令 Schema

③ 事件上报 Schema

4. Protobuf Schema(可选)

5. IoT 智能锁 Topic 使用建议(最佳实践)


智能锁场景专用 Topic 样例 + 数据格式校验 Schema(JSON Schema / Protobuf Schema)。 内容包含 MQTT / IoT Core / Kafka 三端统一规范.


1. 智能锁场景专用 Topic 设计(MQTT + IoT Core + Kafka)

以下为 统一三端 Topic 命名规范

/${productKey}/${deviceName}/${module}/${event}

或 Kafka

iot.${product}.${device}.${module}.${event}

其中:

  • productKey:产品唯一 ID(如 smart-lock-v2)

  • deviceName:设备序列号 SN

  • module:功能模块(lock/state/battery/ota/event)

  • event:动作(report/update/command/ack)


核心 Topic 目录(智能锁场景)

① 状态上报(State Report)

MQTT / IoT Core

/smartlock/${sn}/state/report

Kafka

iot.smartlock.${sn}.state.report

用途:实时上报锁的状态。


② 远程开锁命令(Remote Unlock Command)

MQTT / IoT Core

/smartlock/${sn}/command/unlock

Kafka

iot.smartlock.${sn}.command.unlock

用途:App 或云平台下发开锁指令。


③ 命令回执(Command Ack)

MQTT / IoT Core

/smartlock/${sn}/command/ack

Kafka

iot.smartlock.${sn}.command.ack

④ 事件上报(Event)

MQTT / IoT Core

/smartlock/${sn}/event/${eventType}
/smartlock/${sn}/event/door-open
/smartlock/${sn}/event/tamper
/smartlock/${sn}/event/fingerprint

Kafka

iot.smartlock.${sn}.event.door_open
iot.smartlock.${sn}.event.tamper
iot.smartlock.${sn}.event.fingerprint

⑤ OTA 升级

MQTT / IoT Core

/smartlock/${sn}/ota/progress
/smartlock/${sn}/ota/result

Kafka

iot.smartlock.${sn}.ota.progress
iot.smartlock.${sn}.ota.result

2. 每类消息的 JSON 示例


① 状态上报(state/report)

{
  "sn": "LOCK123456",
  "ts": 1732093200000,
  "battery": 78,
  "lock_state": "locked",
  "network": "wifi",
  "rssi": -69,
  "fw_version": "1.2.0",
  "door_state": "closed"
}

② 远程开锁 command/unlock

{
  "cmd_id": "CMD98765",
  "action": "unlock",
  "method": "app",
  "expire_at": 1732093225000,
  "reason": "user_request"
}

③ 命令 Ack(command/ack)

{
  "cmd_id": "CMD98765",
  "result": "success",
  "ts": 1732093205000,
  "detail": "motor_unlocked"
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

34号树洞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值