From ab2050c3493afa22619e5bb9c0bfb7b48990f96c Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期一, 17 二月 2025 15:18:38 +0800
Subject: [PATCH] 111
---
server/services/src/main/java/com/doumee/core/mqtt/service/MqttPushCallback.java | 33 ++++++++++++++++++++++++---------
1 files changed, 24 insertions(+), 9 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 83eab12..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,33 +1,48 @@
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;
import com.doumee.service.business.DeviceSubcribeService;
-import org.eclipse.paho.client.mqttv3.IMqttDeliveryToken;
-import org.eclipse.paho.client.mqttv3.MqttCallback;
-import org.eclipse.paho.client.mqttv3.MqttMessage;
+import org.eclipse.paho.client.mqttv3.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+/**
+ * @author T14
+ */
@Service
public class MqttPushCallback implements MqttCallback {
@Autowired
private DeviceSubcribeService deviceSubcribeService;
+ @Autowired
+ private MqttConfig mqttConfig;
//鎺ユ敹娑堟伅鍥炶皟
- public void connectionLost(Throwable cause) {
+ @Override
+ public void connectionLost(Throwable cause) {
// 杩炴帴涓㈠け鍚庯紝涓�鑸湪杩欓噷闈㈣繘琛岄噸杩�
- System.out.println("杩炴帴鏂紑锛屽彲浠ュ仛閲嶈繛");
+ System.out.println("杩炴帴鏂紑锛岄噸杩炰腑");
+ MqttClientInit.isNeedReSub =true;
+ MqttClientInit.refreshClient();
}
+ @Override
public void deliveryComplete(IMqttDeliveryToken token) {
System.out.println("deliveryComplete---------" + token.isComplete());
}
+ @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