|
|
@@ -90,21 +90,24 @@ public class MqttSubscriber implements MqttCallbackExtended {
|
|
|
@Override
|
|
|
public void connectComplete(boolean reconnect, String serverURI) {
|
|
|
log.info("[MQTT] 连接断开,重连成功..." + serverURI);
|
|
|
+
|
|
|
String[] topics = mqttCore.getSubTopic();
|
|
|
- mqttClient.setCallback(this);
|
|
|
+ if(topics==null||topics.length==0){
|
|
|
+ mqttClient.setCallback(this);
|
|
|
+ log.info("[MQTT] 连接断开,重连成功 无topic ");
|
|
|
+ return;
|
|
|
+ }
|
|
|
for (String topic : topics) {
|
|
|
-
|
|
|
//TODO 测试设备乱发离线指令,暂时不订阅它
|
|
|
if ("/yfkj/cbd/offline/861551058867599".equals(topic)) {
|
|
|
continue;
|
|
|
}
|
|
|
-
|
|
|
try {
|
|
|
mqttClient.subscribe(topic);
|
|
|
- } catch (MqttException e) {
|
|
|
+ log.info("[MQTT] 连接断开,重连成功 重新订阅主题 {},{}", mqttCore.getServiceType(), topic);
|
|
|
+ } catch (Exception e) {
|
|
|
throw new RuntimeException(e);
|
|
|
}
|
|
|
- log.debug("[MQTT] 连接断开,重连成功 重新订阅主题 {},{}", mqttCore.getServiceType(), topic);
|
|
|
}
|
|
|
}
|
|
|
}
|