#
vincentlu
2026-03-25 9168afdfd66cdcd362d07ea77dc4fad07f2b030f
#
4个文件已修改
1个文件已删除
173 ■■■■ 已修改文件
zy-acs-hk/zy-acs-hk-latent/src/main/java/com/zy/acs/hk/latent/config/MqttProperties.java 103 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-hk/zy-acs-hk-latent/src/main/java/com/zy/acs/hk/latent/controller/MqttDemoController.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-hk/zy-acs-hk-latent/src/main/java/com/zy/acs/hk/latent/demo/MqttDemoRunner.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-hk/zy-acs-hk-latent/src/main/java/com/zy/acs/hk/latent/mqtt/EmqxMqttClient.java 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-hk/zy-acs-hk-latent/src/main/resources/application.yml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-hk/zy-acs-hk-latent/src/main/java/com/zy/acs/hk/latent/config/MqttProperties.java
@@ -1,15 +1,17 @@
package com.zy.acs.hk.latent.config;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
@Data
@Configuration
@ConfigurationProperties(prefix = "mqtt")
public class MqttProperties {
    private boolean enabled = true;
    private boolean enabled;
    private String brokerUrl = "tcp://127.0.0.1:1883";
    private String brokerUrl;
    private String clientId;
@@ -17,103 +19,16 @@
    private String password;
    private boolean cleanSession = true;
    private boolean cleanSession;
    private boolean automaticReconnect = true;
    private boolean automaticReconnect;
    private int connectionTimeout = 10;
    private int connectionTimeout;
    private int keepAliveInterval = 20;
    private int keepAliveInterval;
    private int qos = 1;
    private int qos;
    private String demoTopic = "rcs/hk/latent/demo";
    public boolean isEnabled() {
        return enabled;
    }
    public void setEnabled(boolean enabled) {
        this.enabled = enabled;
    }
    public String getBrokerUrl() {
        return brokerUrl;
    }
    public void setBrokerUrl(String brokerUrl) {
        this.brokerUrl = brokerUrl;
    }
    public String getClientId() {
        return clientId;
    }
    public void setClientId(String clientId) {
        this.clientId = clientId;
    }
    public String getUsername() {
        return username;
    }
    public void setUsername(String username) {
        this.username = username;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public boolean isCleanSession() {
        return cleanSession;
    }
    public void setCleanSession(boolean cleanSession) {
        this.cleanSession = cleanSession;
    }
    public boolean isAutomaticReconnect() {
        return automaticReconnect;
    }
    public void setAutomaticReconnect(boolean automaticReconnect) {
        this.automaticReconnect = automaticReconnect;
    }
    public int getConnectionTimeout() {
        return connectionTimeout;
    }
    public void setConnectionTimeout(int connectionTimeout) {
        this.connectionTimeout = connectionTimeout;
    }
    public int getKeepAliveInterval() {
        return keepAliveInterval;
    }
    public void setKeepAliveInterval(int keepAliveInterval) {
        this.keepAliveInterval = keepAliveInterval;
    }
    public int getQos() {
        return qos;
    }
    public void setQos(int qos) {
        this.qos = qos;
    }
    public String getDemoTopic() {
        return demoTopic;
    }
    public void setDemoTopic(String demoTopic) {
        this.demoTopic = demoTopic;
    }
}
zy-acs-hk/zy-acs-hk-latent/src/main/java/com/zy/acs/hk/latent/controller/MqttDemoController.java
@@ -2,6 +2,7 @@
import com.zy.acs.hk.latent.config.MqttProperties;
import com.zy.acs.hk.latent.mqtt.EmqxMqttClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -15,14 +16,11 @@
@RequestMapping("/demo/mqtt")
public class MqttDemoController {
    private final EmqxMqttClient emqxMqttClient;
    @Autowired
    private EmqxMqttClient emqxMqttClient;
    private final MqttProperties mqttProperties;
    public MqttDemoController(EmqxMqttClient emqxMqttClient, MqttProperties mqttProperties) {
        this.emqxMqttClient = emqxMqttClient;
        this.mqttProperties = mqttProperties;
    }
    @Autowired
    private MqttProperties mqttProperties;
    @PostMapping("/publish")
    public Map<String, Object> publish(@RequestParam(required = false) String topic,
zy-acs-hk/zy-acs-hk-latent/src/main/java/com/zy/acs/hk/latent/demo/MqttDemoRunner.java
File was deleted
zy-acs-hk/zy-acs-hk-latent/src/main/java/com/zy/acs/hk/latent/mqtt/EmqxMqttClient.java
@@ -1,15 +1,10 @@
package com.zy.acs.hk.latent.mqtt;
import com.zy.acs.hk.latent.config.MqttProperties;
import org.eclipse.paho.client.mqttv3.IMqttDeliveryToken;
import org.eclipse.paho.client.mqttv3.MqttCallbackExtended;
import org.eclipse.paho.client.mqttv3.MqttClient;
import org.eclipse.paho.client.mqttv3.MqttConnectOptions;
import org.eclipse.paho.client.mqttv3.MqttException;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import lombok.extern.slf4j.Slf4j;
import org.eclipse.paho.client.mqttv3.*;
import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;
@@ -18,18 +13,14 @@
import java.nio.charset.StandardCharsets;
import java.util.UUID;
@Slf4j
@Component
public class EmqxMqttClient {
    private static final Logger log = LoggerFactory.getLogger(EmqxMqttClient.class);
    private final MqttProperties mqttProperties;
    private MqttClient mqttClient;
    public EmqxMqttClient(MqttProperties mqttProperties) {
        this.mqttProperties = mqttProperties;
    }
    @Autowired
    private MqttProperties mqttProperties;
    @PostConstruct
    public void connect() {
zy-acs-hk/zy-acs-hk-latent/src/main/resources/application.yml
@@ -16,4 +16,3 @@
  connection-timeout: 10
  keep-alive-interval: 20
  qos: 1
  demo-topic: rcs/hk/latent/demo