From d4e9f0d375fee76b3d7317c19f8eb9f9d28f2e19 Mon Sep 17 00:00:00 2001 From: andy <1042025947@qq.com> Date: Thu, 10 Apr 2025 15:03:42 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=B0=E5=BD=95mq=E6=B6=88=E6=81=AF=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cloud/mqtt/config/MqttPublishMessage.java | 1 - .../message/handle/MessageUtilService.java | 39 +++++++++---------- 2 files changed, 18 insertions(+), 22 deletions(-) diff --git a/cloud-manage-server/src/main/java/com/evotech/hd/cloud/mqtt/config/MqttPublishMessage.java b/cloud-manage-server/src/main/java/com/evotech/hd/cloud/mqtt/config/MqttPublishMessage.java index 7b40c34..14b2235 100644 --- a/cloud-manage-server/src/main/java/com/evotech/hd/cloud/mqtt/config/MqttPublishMessage.java +++ b/cloud-manage-server/src/main/java/com/evotech/hd/cloud/mqtt/config/MqttPublishMessage.java @@ -33,7 +33,6 @@ public class MqttPublishMessage { // 一旦此方法干净地返回,消息就已被客户端接受发布,当连接可用,将在后台完成消息传递。 token = mqttTopic.publish(mqttMessage); token.waitForCompletion(); - return token.getMessage(); } catch (MqttException e) { e.printStackTrace(); } diff --git a/cloud-manage-server/src/main/java/com/evotech/hd/cloud/mqtt/message/handle/MessageUtilService.java b/cloud-manage-server/src/main/java/com/evotech/hd/cloud/mqtt/message/handle/MessageUtilService.java index 0ef4e92..b569a6f 100644 --- a/cloud-manage-server/src/main/java/com/evotech/hd/cloud/mqtt/message/handle/MessageUtilService.java +++ b/cloud-manage-server/src/main/java/com/evotech/hd/cloud/mqtt/message/handle/MessageUtilService.java @@ -1,26 +1,5 @@ package com.evotech.hd.cloud.mqtt.message.handle; -import java.util.Base64; -import java.util.Date; - -import javax.crypto.SecretKey; - -import org.eclipse.paho.client.mqttv3.MqttException; -import org.eclipse.paho.client.mqttv3.MqttMessage; -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.evotech.hd.cloud.dao.BatteryStationSecretKeyDao; -import com.evotech.hd.cloud.entity.BatteryStationSecretKey; -import com.evotech.hd.cloud.entity.MessageMqtt; -import com.evotech.hd.cloud.mqtt.config.MqttPublishMessage; -import com.evotech.hd.cloud.mqtt.message.MessageTopic; -import com.evotech.hd.cloud.mqtt.message.MqttMessageHeader; -import com.evotech.hd.cloud.mqtt.message.MyMqttMessage; -import com.evotech.hd.cloud.service.MessageMqttService; -import com.evotech.hd.common.core.constant.HDConstant; -import com.evotech.hd.common.redis.utils.RedisUtil; - import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.RandomUtil; import cn.hutool.crypto.KeyUtil; @@ -34,8 +13,25 @@ import cn.hutool.crypto.symmetric.SymmetricAlgorithm; import cn.hutool.crypto.symmetric.SymmetricCrypto; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.evotech.hd.cloud.dao.BatteryStationSecretKeyDao; +import com.evotech.hd.cloud.entity.BatteryStationSecretKey; +import com.evotech.hd.cloud.entity.MessageMqtt; +import com.evotech.hd.cloud.mqtt.config.MqttPublishMessage; +import com.evotech.hd.cloud.mqtt.message.MessageTopic; +import com.evotech.hd.cloud.mqtt.message.MqttMessageHeader; +import com.evotech.hd.cloud.mqtt.message.MyMqttMessage; +import com.evotech.hd.cloud.service.MessageMqttService; +import com.evotech.hd.common.core.constant.HDConstant; +import com.evotech.hd.common.redis.utils.RedisUtil; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; +import org.eclipse.paho.client.mqttv3.MqttMessage; +import org.springframework.stereotype.Service; + +import javax.crypto.SecretKey; +import java.util.Base64; +import java.util.Date; @Service @Slf4j @@ -107,6 +103,7 @@ public class MessageUtilService { try { MqttMessage mqttMessage = publishMessage.publish(encrypt, topic.toString()); try { + dataBody.set("header", JSONUtil.toJsonStr(header)); addMqttMessage(topic, mqttMessage.getId()+"", mqttMessage.getQos(), dataBody); } catch (Exception e) { log.error("MQTT->>>>>>>>>>>>>记录mqtt消息出现了错误{},topic:{}; header:{}, data:{}; message:{}",e.getMessage(),JSONUtil.toJsonStr(topic),JSONUtil.toJsonStr(header),JSONUtil.toJsonStr(dataBody), JSONUtil.toJsonStr(mqttMessage));