package com.ruoyi.mqtt.config; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Primary; import org.springframework.stereotype.Component; /** * @author jianglw * @version 1.0 * @date 2021/5/20 9:42 * mqtt配置类 获取mqtt连接 */ @Slf4j @Component public class MqttConfiguration { @Autowired private MqttPushClient mqttPushClient; public static String host="tcp://127.0.0.1:1883"; public static String clientId="mqttjs_cloud"; public static String userName="admin"; public static String password="public"; public static int timeout=1000; public static int keepAlive=10; /** * 连接至mqtt服务器,获取mqtt连接 * @return */ @Bean @Primary @ConditionalOnProperty(prefix = "mqtt", name = "enabled", havingValue = "true") public MqttPushClient getMqttPushClient() { log.info( host,clientId ); //连接至mqtt服务器,获取mqtt连接 mqttPushClient.connect(host, clientId, userName, password, timeout, keepAlive); //一连接mqtt,就订阅默认需要订阅的主题(如test_queue) new MqttSubClient(mqttPushClient); return mqttPushClient; } }