refactor(iot): 移除 MQTT 传输层,仅保留设备开放接口与门禁写操作策略
- 依赖:删除根 pom 的 paho.version 与 org.eclipse.paho.client.mqttv3 依赖声明, 同步移除 ruoyi-iot 模块中的 Paho 依赖,模块描述改为“iot设备数据与开放接口” - MQTT 协议栈整体删除:IotMqttConfig、IotMqttProperties、MqttClientManager、 MqttMessageDispatcher、MqttCallbackHandler、MqttConnectionCallback、 IMqttMessageListener、MqttMessageDTO、MqttPublishRequest、MqttMessageEvent、 IMqttService/MqttServiceImpl、IotMqttController,以及 lock 侧 topic 订阅与 LockMessageListener、AccessRecordHandler、CommandRespHandler、 GatewayOnlineHandler、LockSignalHandler - MQTT 报文留痕链路删除:LockMqttLog 实体、LockMqttLogMapper(+XML)、 ILockMqttLogService/LockMqttLogServiceImpl、LockMqttLogController, 以及对应的前端页面 build_ui/src/views/iot/mqttlog 与 API build_ui/src/api/iot/mqttlog.js - 命令下发改为仅落库:LockCommandServiceImpl 派发时直接置 TRANSPORT_DISABLED 失败, retryPending 返回 0;删除 GatewayOfflineCheckTask、LockCommandRetryTask、 LockDeviceOfflineCheckTask 等依赖 MQTT 的补偿与离线检查定时任务 - 保留与传输无关的门禁写操作策略:新增 IotLockSecurityProperties(iot.lock-security), RealIotSecurityGate 及其测试改用该配置类 - 配置与调用处清理:application*.yml 中 iot.mqtt 段迁移为 iot.lock-security, 删除 broker-url/client-id/username/password/topics/will/qos 等连接参数, 修正 iot.face 环境标识注释引用;QA 工具启动参数改用 --iot.lock-security.*, 并移除 browser_regression.js 的 mqttlog 路由 - 测试同步:删除依赖 MQTT 与传输层的 CommandRespHandlerMockTest、 Round5sEgressIsolationTest、Round5sExecutionIntegrationTest、 Round5v4BrowserFixture、Round5v4KingbaseIntegrationTest; 更新 RealIotSecurityGateTest、FaceExtractClientMockTest、 TrainIotLockAuthBridgeMockTest 说明:数据库侧 lock_mqtt_log 表结构与历史验收文档保留,未做数据迁移; 前端若仍配置了“MQTT报文日志”菜单,需在后台菜单管理中一并移除。
This commit is contained in:
1 parent
f5e8d7f564
commit
1def568f24
54 files changed
+690
-4734
No files matched your search
@@ -176,7 +176,7 @@ iot:
|
||||
#base-url: http://localhost:8096 # 相对路径拼接后端 base URL 用;本地联调用默认值即可,生产环境改成公网地址(如 http://<公网IP>:<端口>)
|
||||
# 人脸特征提取服务(数据库 lock_service_config 中 config_type=02 的配置优先级更高)
|
||||
face:
|
||||
# 必须与 iot.mqtt.environment-id 一致,否则 requireFaceIdentity 判定环境不一致而拒绝人脸提取授权
|
||||
# 必须与 iot.lock-security.environment-id 一致,否则 requireFaceIdentity 判定环境不一致而拒绝人脸提取授权
|
||||
environment-id: railway-iot-01
|
||||
#endpoint: http://192.168.1.202:8802/bdws_api/Third/Api/Easen/getFaceFeatureData
|
||||
endpoint: http://192.168.1.230:8802/bdws_api/Third/Api/Easen/getFaceFeatureData
|
||||
@@ -191,14 +191,13 @@ iot:
|
||||
enabled: true
|
||||
api-key: please-change-me
|
||||
path-prefix: /openapi/iot
|
||||
mqtt:
|
||||
# 开关,false 时不创建任何连接
|
||||
# 门禁写操作安全策略(原 MQTT 配置中与传输无关的策略项,MQTT 已整体移除)
|
||||
lock-security:
|
||||
enabled: true
|
||||
mock: false
|
||||
protocol-verified: true # 真实协议证据已审批,允许真实下发(默认 false,必须显式开)
|
||||
retry-task-enabled: false # 开启命令补偿调度(每 60s 捞 READY 指令兜底下发,默认 false)
|
||||
environment-id: railway-iot-01 # 真实环境标识,必须不含 "mock"(避免回退到默认 local-mock)
|
||||
real-device-write-enabled: true # 真实下行总开关(默认 false,必须显式开)
|
||||
protocol-verified: true
|
||||
environment-id: railway-iot-01
|
||||
real-device-write-enabled: true
|
||||
device-whitelist: [
|
||||
'807104B5', '80745D79','80745D95','80745D6F',
|
||||
'80745DA3','80745D78','80745D89','80745D93',
|
||||
@@ -217,43 +216,3 @@ iot:
|
||||
'80745DA9','80745D91','80745D6B','80745DA6',
|
||||
'80745D81','80745D9E','80745D83','80745DA0',
|
||||
'E8F7AFF69483']
|
||||
# MQTT服务器地址,ssl 场景使用 ssl://host:8883
|
||||
#broker-url: tcp://192.168.1.202:1883
|
||||
broker-url: tcp://192.168.1.230:1883
|
||||
# 客户端ID,同一服务器下必须唯一;为空时自动生成
|
||||
client-id:
|
||||
username: admin3
|
||||
password: admin3
|
||||
# false 时服务端保留离线消息,需配合固定 client-id
|
||||
clean-session: true
|
||||
connection-timeout: 30
|
||||
keep-alive-interval: 60
|
||||
# 断线自动重连
|
||||
automatic-reconnect: true
|
||||
max-reconnect-delay: 30000
|
||||
# 连接健康检查周期(毫秒),0 表示不做定时重连
|
||||
health-check-interval: 30000
|
||||
# 发布消息等待服务端确认时间(毫秒),0 表示不等待
|
||||
publish-timeout: 3000
|
||||
# 消息持久化目录,为空使用内存
|
||||
persistence-directory:
|
||||
default-qos: 1
|
||||
default-retained: false
|
||||
# 只订阅上行主题(下行由平台发布,不消费自己发出的指令)
|
||||
topics:
|
||||
- topic: ydlink/+/thing/onoff_line # 网关上下线
|
||||
qos: 1
|
||||
- topic: ydlink/+/thing/property/set_response # 属性设置响应
|
||||
qos: 1
|
||||
- topic: ydlink/+/thing/action/execute_response # 远程开关锁响应
|
||||
qos: 1
|
||||
- topic: ydlink/+/thing/data/batch_report # 授权下发结果
|
||||
qos: 1
|
||||
- topic: ydlink/+/thing/event/trigger # 开门记录上报
|
||||
qos: 1
|
||||
# 遗嘱消息:无法区分主动断开与异常掉线,门禁场景建议关闭(离线由 GatewayOfflineCheckTask 判定)
|
||||
# will:
|
||||
# topic: ydlink/status
|
||||
# payload: offline
|
||||
# qos: 1
|
||||
# retained: true
|
||||
Reference in new issue
Block a user