From d4b58636a8de8344575085b4cdf267ca5a8b9a2b Mon Sep 17 00:00:00 2001 From: wulin Date: Sat, 28 Oct 2023 23:48:34 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=9F=B3=E4=B9=90=E6=8E=A8?= =?UTF-8?q?=E9=80=81=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iot/box/websocket/api/command/MusicActionCommand.java | 2 +- .../iot/box/websocket/api/handler/BoxWebSocketHandler.java | 6 +++++- .../box/websocket/api/handler/CustomerWebSocketHandler.java | 5 ++++- .../iot/box/websocket/api/service/BaseWebSocketService.java | 2 +- 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/command/MusicActionCommand.java b/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/command/MusicActionCommand.java index 8ab48c8..ca9e03e 100644 --- a/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/command/MusicActionCommand.java +++ b/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/command/MusicActionCommand.java @@ -84,13 +84,13 @@ public class MusicActionCommand extends ActionCommand implements IActionCommand boxSession.setMusic(resp.getMusic()); baseSession.setMusic(resp.getMusic()); } + return Mono.just(true); }else{ log.info("设备sn:{}不在线,无法播放", baseSession.getSn()); resp.setText("设备不在线,无法播放"); baseSession.setMusic(null); resp.setMusic(null); resp.setType(AskTypeEnum.TTS.getCode()); - } }else{//果box的 //记录音乐状态 diff --git a/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/handler/BoxWebSocketHandler.java b/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/handler/BoxWebSocketHandler.java index a68d99f..d4c9cab 100644 --- a/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/handler/BoxWebSocketHandler.java +++ b/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/handler/BoxWebSocketHandler.java @@ -13,6 +13,7 @@ import com.qiuguo.iot.box.websocket.api.domain.BaseSession; import com.qiuguo.iot.box.websocket.api.domain.box.BoxSession; import com.qiuguo.iot.box.websocket.api.domain.box.BoxTalkMessage; import com.qiuguo.iot.box.websocket.api.domain.box.resp.BoxMessageResp; +import com.qiuguo.iot.box.websocket.api.domain.user.UserTalkMessage; import com.qiuguo.iot.box.websocket.api.filter.LogMdcConfiguration; import com.qiuguo.iot.box.websocket.api.filter.LogWebFilter; import com.qiuguo.iot.box.websocket.api.service.BaseWebSocketService; @@ -145,7 +146,10 @@ public class BoxWebSocketHandler implements WebSocketHandler { String text = webSocketMessage.getPayloadAsText(); log.info("设备端收到消息:{}", text); BoxTalkMessage boxTalkMessage = JSONObject.parseObject(text, BoxTalkMessage.class); - boxTalkMessage.setSn(boxSession.getSn()); + if(boxTalkMessage.getSn() == null || !boxTalkMessage.getSn().equals(boxSession.getSn())){ + log.info("设备信息有误不能为空"); + return baseWebSocketService.closeSendMsg(boxSession, "设备信息不全", AskTypeEnum.TIME.getCode()); + } log.info("收到SN:{},消息:{}", boxTalkMessage.getSn(), boxTalkMessage.getMessage()); return nlpService.getActionWithLacSingle( boxSession.getUserId(), diff --git a/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/handler/CustomerWebSocketHandler.java b/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/handler/CustomerWebSocketHandler.java index 7abb75f..e081497 100644 --- a/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/handler/CustomerWebSocketHandler.java +++ b/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/handler/CustomerWebSocketHandler.java @@ -116,7 +116,10 @@ public class CustomerWebSocketHandler implements WebSocketHandler { String text = webSocketMessage.getPayloadAsText(); log.info("收到用户消息:{}", text); UserTalkMessage userTalkMessage = JSONObject.parseObject(text, UserTalkMessage.class); - userTalkMessage.setUserId(userSession.getUserId()); + if(userTalkMessage.getUserId() == null || !userTalkMessage.getUserId().equals(userSession.getUserId())){ + log.info("用户ID不能为空"); + return baseWebSocketService.closeSendMsg(userSession, "用户信息有无", AskTypeEnum.TIME.getCode()); + } log.info("收到用户userId:{},消息:{}", userTalkMessage.getUserId(), userTalkMessage.getMessage()); return nlpService.getActionWithLacSingle( userSession.getUserId(), diff --git a/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/service/BaseWebSocketService.java b/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/service/BaseWebSocketService.java index 22a92b8..1e36fdf 100644 --- a/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/service/BaseWebSocketService.java +++ b/iot-modules/iot-box-websocket-api/src/main/java/com/qiuguo/iot/box/websocket/api/service/BaseWebSocketService.java @@ -306,7 +306,7 @@ public class BaseWebSocketService { }else{ sendMsg(baseSession, JSONObject.toJSONString(baseMessageResp)); } - + } /**