refactor: embed mochi mqtt broker

This commit is contained in:
2026-08-03 14:19:28 +08:00
parent fefdba470a
commit 5edca1524f
13 changed files with 148 additions and 69 deletions

View File

@@ -1,5 +1,5 @@
# IoT Server
设备侧 MQTT 适配进程。连接外部 EMQX/Mosquitto Broker订阅 `devices/+/up``devices/+/ack`按《气体探测器通讯协议》V1.8 校验、解密和解析原始二进制帧;下行命令由受保护的内部 HTTP 接口接收后发布到 `devices/{deviceId}/down`
设备侧 MQTT 接入进程。使用 `github.com/mochi-mqtt/server/v2` 内嵌实现 MQTT Broker监听 `devices/+/up``devices/+/ack`按《气体探测器通讯协议》V1.8 校验、解密和解析原始二进制帧;下行命令由受保护的内部 HTTP 接口接收后发布到 `devices/{deviceId}/down`,不依赖 Eclipse Paho 或外部 EMQX/Mosquitto
生产环境必须启用 MQTT TLS、每设备凭证并通过环境变量或密钥注入覆盖 YAML 开发占位密
YAML 的 `MQTT.Devices` 为每台设备配置独立 Client ID、设备号和凭证Broker ACL 只允许设备发布自己的 `up/ack` 并订阅自己的 `down`生产环境必须启用 MQTT TLS,并通过密钥注入覆盖 YAML 开发占位密码;单设备开发配置可用 `HEQI_IOT_MQTT_PASSWORD` 覆盖密码