From 844ebaa29591c9ffbc3e5b26610c75796b92615e Mon Sep 17 00:00:00 2001
From: kerwincui <164770707@qq.com>
Date: Thu, 28 Jul 2022 21:18:05 +0800
Subject: [PATCH] =?UTF-8?q?=E8=AE=BE=E5=A4=87=E4=BF=A1=E5=8F=B7=E5=AE=9E?=
=?UTF-8?q?=E6=97=B6=E6=98=BE=E7=A4=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../main/java/com/ruoyi/iot/controller/ToolController.java | 4 ++--
.../src/main/java/com/ruoyi/iot/mqtt/EmqxService.java | 6 +++---
.../src/main/resources/mapper/iot/DeviceMapper.xml | 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/springboot/wumei-iot/src/main/java/com/ruoyi/iot/controller/ToolController.java b/springboot/wumei-iot/src/main/java/com/ruoyi/iot/controller/ToolController.java
index 38d98d0b..5e60b22d 100644
--- a/springboot/wumei-iot/src/main/java/com/ruoyi/iot/controller/ToolController.java
+++ b/springboot/wumei-iot/src/main/java/com/ruoyi/iot/controller/ToolController.java
@@ -195,8 +195,8 @@ public class ToolController extends BaseController {
if (model.getAction().equals("client_disconnected")) {
device.setStatus(4);
deviceService.updateDeviceStatusAndLocation(device, "");
- // 发布设备状态
- emqxService.publishStatus(device.getProductId(), device.getSerialNumber(), 4, device.getIsShadow());
+ // 设备掉线后发布设备状态
+ emqxService.publishStatus(device.getProductId(), device.getSerialNumber(), 4, device.getIsShadow(),device.getRssi());
// 清空保留消息,上线后发布新的属性功能保留消息
emqxService.publishProperty(device.getProductId(), device.getSerialNumber(), null);
emqxService.publishFunction(device.getProductId(), device.getSerialNumber(), null);
diff --git a/springboot/wumei-iot/src/main/java/com/ruoyi/iot/mqtt/EmqxService.java b/springboot/wumei-iot/src/main/java/com/ruoyi/iot/mqtt/EmqxService.java
index 10b1bea8..02dbf699 100644
--- a/springboot/wumei-iot/src/main/java/com/ruoyi/iot/mqtt/EmqxService.java
+++ b/springboot/wumei-iot/src/main/java/com/ruoyi/iot/mqtt/EmqxService.java
@@ -136,7 +136,7 @@ public class EmqxService {
device.setSerialNumber(deviceNum);
deviceService.reportDevice(device,deviceEntity);
// 发布设备状态
- publishStatus(productId, deviceNum, 3, deviceEntity.getIsShadow());
+ publishStatus(productId, deviceNum, 3, deviceEntity.getIsShadow(),device.getRssi());
} catch (Exception e) {
logger.error("接收设备信息,解析数据时异常 message={}", e.getMessage());
}
@@ -216,8 +216,8 @@ public class EmqxService {
/**
* 1.发布设备状态
*/
- public void publishStatus(Long productId, String deviceNum, int deviceStatus, int isShadow) {
- String message = "{\"status\":" + deviceStatus + ",\"isShadow\":" + isShadow + "}";
+ public void publishStatus(Long productId, String deviceNum, int deviceStatus, int isShadow,int rssi) {
+ String message = "{\"status\":" + deviceStatus + ",\"isShadow\":" + isShadow + ",\"rssi\":" + rssi + "}";
emqxClient.publish(1, false, "/" + productId + "/" + deviceNum + pStatusTopic, message);
}
diff --git a/springboot/wumei-iot/src/main/resources/mapper/iot/DeviceMapper.xml b/springboot/wumei-iot/src/main/resources/mapper/iot/DeviceMapper.xml
index e3b0e8bf..60e29dc7 100644
--- a/springboot/wumei-iot/src/main/resources/mapper/iot/DeviceMapper.xml
+++ b/springboot/wumei-iot/src/main/resources/mapper/iot/DeviceMapper.xml
@@ -112,7 +112,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- select device_id, device_name,product_id, serial_number,user_id, user_name, tenant_id, tenant_name, status,is_shadow ,location_way,things_model_value, active_time from iot_device
+ select device_id, device_name,product_id, serial_number,user_id, user_name, tenant_id, tenant_name, status,is_shadow, rssi ,location_way,things_model_value, active_time from iot_device