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