| | |
| | | package com.fzzy.mqtt; |
| | | |
| | | import lombok.Data; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.boot.context.properties.ConfigurationProperties; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | /** |
| | | * MQTT 配置信息 |
| | | */ |
| | | @Component |
| | | @ConfigurationProperties("mqtt") |
| | | @Slf4j |
| | | @Data |
| | | @Component |
| | | @ConfigurationProperties("spring.mqtt") |
| | | public class MqttProperties { |
| | | |
| | | /** |
| | |
| | | /** |
| | | * 用户名 |
| | | */ |
| | | private String clientUsername; |
| | | private String username; |
| | | |
| | | /** |
| | | * 密码 |
| | | */ |
| | | private String clientPassword; |
| | | private String password; |
| | | |
| | | |
| | | /** |
| | | * 客户端Id,同一台服务器下,不允许出现重复的客户端id |
| | | * 客户端Id |
| | | */ |
| | | private String clientId; |
| | | private String clientInId; |
| | | |
| | | /** |
| | | * 客户端Id |
| | | */ |
| | | private String clientOutId; |
| | | |
| | | /** |
| | | * 超时时间 |
| | | */ |
| | | private int clientTimeout; |
| | | private int completionTimeout = 5000; |
| | | |
| | | /** |
| | | * 设置会话心跳时间 单位为秒 服务器会每隔1.5*20秒的时间向客户端 |
| | | * 发送个消息判断客户端是否在线,但这个方法并没有重连的机制 |
| | | */ |
| | | private int clientAliveTime; |
| | | private int keepAliveInterval = 20; |
| | | |
| | | private int clientMaxConnectTime; |
| | | private int maxConnectTimes = 5; |
| | | |
| | | private String clientTopics; |
| | | private String topics; |
| | | |
| | | /** |
| | | * 连接方式 |
| | | */ |
| | | private Integer clientQos; |
| | | private Integer qos = 0; |
| | | |
| | | /** |
| | | * 默认连接主题,以/#结尾表示订阅所有以test开头的主题 |
| | | */ |
| | | private String defaultTopic; |
| | | |
| | | /** |
| | | * 设置是否清空session,这里如果设置为false表示服务器会保留客户端的连 |
| | | * 接记录,这里设置为true表示每次连接到服务器都以新的身份连接 |
| | | */ |
| | | private Boolean cleanSession; |
| | | private String defaultTopic; |
| | | |
| | | /** |
| | | * 是否断线重连 |
| | |
| | | */ |
| | | private Boolean isOpen; |
| | | |
| | | |
| | | } |