From 1c9549b105375fdfb23b767ef1af308f0c047df6 Mon Sep 17 00:00:00 2001 From: xce Date: Sun, 18 Jan 2026 19:01:34 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=97=A0=E7=94=A8=E5=88=A4?= =?UTF-8?q?=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/agri/framework/interceptor/MqttMessageHandler.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/agri-framework/src/main/java/com/agri/framework/interceptor/MqttMessageHandler.java b/agri-framework/src/main/java/com/agri/framework/interceptor/MqttMessageHandler.java index bc2252c..0703736 100644 --- a/agri-framework/src/main/java/com/agri/framework/interceptor/MqttMessageHandler.java +++ b/agri-framework/src/main/java/com/agri/framework/interceptor/MqttMessageHandler.java @@ -372,7 +372,7 @@ public class MqttMessageHandler implements SmartLifecycle { // 新增:只有在线才转发;不在线就清理残留订阅,解决“取消订阅失败兜底” String onlineKey = "online:" + clientId; Boolean online = stringRedisTemplate.hasKey(onlineKey); - if (online == null || !online) { + if (!online) { // 不在线:从两边索引移除(避免一直给离线前端发) stringRedisTemplate.opsForSet().remove("sub:" + deviceId, clientId); stringRedisTemplate.opsForSet().remove("subc:" + clientId, deviceId);