From 320c0c10a90140627b10a6fcf498e79d09785da6 Mon Sep 17 00:00:00 2001 From: zhuguifei <312353457@qq.com> Date: 星期三, 27 十一月 2024 13:42:58 +0800 Subject: [PATCH] 添加mqtt数据接口 --- jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/mqtt/MqttConfig.java | 22 ++++++++++++++++++---- 1 files changed, 18 insertions(+), 4 deletions(-) diff --git a/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/mqtt/MqttConfig.java b/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/mqtt/MqttConfig.java index 41d3db4..43c838f 100644 --- a/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/mqtt/MqttConfig.java +++ b/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/mqtt/MqttConfig.java @@ -15,6 +15,7 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.data.redis.core.RedisTemplate; import java.util.*; @@ -44,6 +45,8 @@ private RedisUtil redisUtil; @Autowired private EmqxApi emqxApi; + @Autowired + private RedisTemplate redisTemplate; @Bean @@ -98,6 +101,8 @@ mqttClient.subscribe(MqttConstant.TENANT_UP_PREFIX_REALTIME_DATA); System.out.println("admin璁㈤槄" + MqttConstant.TENANT_UP_PREFIX_REALTIME_DATA); // 璁㈤槄绉熸埛鎶ヨ鏁版嵁 + mqttClient.subscribe(MqttConstant.TENANT_UP_PREFIX_REAL_FAULT_DATA); + System.out.println("admin璁㈤槄" + MqttConstant.TENANT_UP_PREFIX_REAL_FAULT_DATA); mqttClient.subscribe(MqttConstant.TENANT_UP_PREFIX_FAULT_DATA); System.out.println("admin璁㈤槄" + MqttConstant.TENANT_UP_PREFIX_FAULT_DATA); mqttClient.subscribe(MqttConstant.TENANT_UP_PREFIX_EQU); @@ -153,7 +158,14 @@ * 鏈嶅姟绔紙admin瑙掕壊锛夊惎鍔ㄦ椂鏌ヨ鎵�鏈夎澶囧苟缂撳瓨鍒皉edis */ private void initClients() { - redisUtil.removeAll(MqttConstant.MQTT_ONLINE_CLIENT); + //鍒濆鍖栨椂鍏堝垹闄ゆ墍鏈夊湪绾胯澶� + Set keys = redisTemplate.keys( String.format(MqttConstant.MQTT_ONLINE_CLIENT,"*")); + if (keys != null && !keys.isEmpty()) { + keys.forEach(key -> System.out.println("鍒濆鍖栧垹闄ゅ湪绾胯澶�: " + key)); + redisTemplate.delete(keys); + } else { + System.out.println("鍒濆鍖栨棤鍦ㄧ嚎璁惧: " + MqttConstant.MQTT_ONLINE_CLIENT); + } JSONObject clients = emqxApi.queryEmqx(EmqxApi.CMD_CLIENTS); //TODO 鏍规嵁emqx杩斿洖缂栧啓瀹炰綋绫� @@ -180,13 +192,15 @@ item.put("type", info[0]); item.put("tenantId", info[1]); //item.put("code", info[2]); + + if (connected) { + redisUtil.hset(String.format(MqttConstant.MQTT_ONLINE_CLIENT,item.get("tenantId").toString()) , clientid, item); + } }catch (Exception e){ e.printStackTrace(); } - if (connected) { - redisUtil.set(MqttConstant.MQTT_ONLINE_CLIENT + clientid, item); - } + } -- Gitblit v1.9.3