From 4fabfe4dbd2eb28d07a4350597d314958cc1c281 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期四, 09 十月 2025 11:16:43 +0800
Subject: [PATCH] 优化

---
 server/services/src/main/java/com/doumee/core/mqtt/service/MqttPushCallback.java |   24 +++++++++++++-----------
 1 files changed, 13 insertions(+), 11 deletions(-)

diff --git a/server/services/src/main/java/com/doumee/core/mqtt/service/MqttPushCallback.java b/server/services/src/main/java/com/doumee/core/mqtt/service/MqttPushCallback.java
index aae9670..d8c11d4 100644
--- a/server/services/src/main/java/com/doumee/core/mqtt/service/MqttPushCallback.java
+++ b/server/services/src/main/java/com/doumee/core/mqtt/service/MqttPushCallback.java
@@ -1,5 +1,6 @@
 package com.doumee.core.mqtt.service;
 
+import com.doumee.config.SpringContextUtil;
 import com.doumee.core.mqtt.config.MqttClientInit;
 import com.doumee.core.mqtt.config.MqttConfig;
 import com.doumee.service.business.DeviceService;
@@ -18,16 +19,13 @@
         @Autowired
         private MqttConfig mqttConfig;
         //鎺ユ敹娑堟伅鍥炶皟
-        @Override
-        public void connectionLost(Throwable cause) {
 
+    @Override
+        public void connectionLost(Throwable cause) {
             // 杩炴帴涓㈠け鍚庯紝涓�鑸湪杩欓噷闈㈣繘琛岄噸杩�
             System.out.println("杩炴帴鏂紑锛岄噸杩炰腑");
-            try {
-                MqttClientInit.refreshClient();
-            } catch (MqttException e) {
-                throw new RuntimeException(e);
-            }
+            MqttClientInit.isNeedReSub =true;
+            MqttClientInit.refreshClient();
         }
 
         @Override
@@ -38,9 +36,13 @@
         @Override
         public void messageArrived(String topic, MqttMessage message) throws Exception {
             // subscribe鍚庡緱鍒扮殑娑堟伅浼氭墽琛屽埌杩欓噷闈�
-            System.out.println("鎺ユ敹娑堟伅涓婚 : " + topic);
-            System.out.println("鎺ユ敹娑堟伅Qos : " + message.getQos());
-            System.out.println("鎺ユ敹娑堟伅鍐呭 : " + new String(message.getPayload()));
-            deviceSubcribeService.listener(new String(message.getPayload()),topic);
+            try {
+                System.out.println("鎺ユ敹娑堟伅涓婚 : " + topic);
+                System.out.println("鎺ユ敹娑堟伅Qos : " + message.getQos());
+                System.out.println("鎺ユ敹娑堟伅鍐呭 : " + new String(message.getPayload()));
+                deviceSubcribeService.listener(message.getId()+"",new String(message.getPayload()),topic);
+            }catch (Exception e){
+                e.printStackTrace();
+            }
         }
 }

--
Gitblit v1.9.3