From 9cd117a8a0ed84a97288cec3a1ee4f23e04f1a0f Mon Sep 17 00:00:00 2001 From: wulin Date: Thu, 23 Nov 2023 17:39:36 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8B=B1=E8=AF=AD=E6=8C=87=E4=BB=A4=E8=BD=AC?= =?UTF-8?q?=E5=B0=8F=E5=86=99=E6=AF=94=E5=AF=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iot/third/enums/ActionPartSpeechEnum.java | 5 +++-- .../com/qiuguo/iot/third/service/NlpService.java | 4 ++-- .../api/controller/device/DeviceController.java | 15 +++++++++++++++ .../src/main/resources/bootstrap-dev.yml | 2 +- 4 files changed, 21 insertions(+), 5 deletions(-) diff --git a/iot-common/iot-third/src/main/java/com/qiuguo/iot/third/enums/ActionPartSpeechEnum.java b/iot-common/iot-third/src/main/java/com/qiuguo/iot/third/enums/ActionPartSpeechEnum.java index 8bde375..686a122 100644 --- a/iot-common/iot-third/src/main/java/com/qiuguo/iot/third/enums/ActionPartSpeechEnum.java +++ b/iot-common/iot-third/src/main/java/com/qiuguo/iot/third/enums/ActionPartSpeechEnum.java @@ -859,11 +859,12 @@ public enum ActionPartSpeechEnum implements IChinesePartSpeech{ }else{ //找到扩展指令 for (String key1 :entity.getKeys()){ - if(ask.contains(key1)){ + if(ask.toLowerCase().contains(key1)){ return entity.getExCommand().get(key1); - } } + //找不到继续用原来的 + return entity.getSystemTalkAnswerConfig(); } //return keyGroup.get(key); } diff --git a/iot-common/iot-third/src/main/java/com/qiuguo/iot/third/service/NlpService.java b/iot-common/iot-third/src/main/java/com/qiuguo/iot/third/service/NlpService.java index af37da8..c6d147b 100644 --- a/iot-common/iot-third/src/main/java/com/qiuguo/iot/third/service/NlpService.java +++ b/iot-common/iot-third/src/main/java/com/qiuguo/iot/third/service/NlpService.java @@ -79,7 +79,7 @@ public class NlpService { return b.getKey().length() - a.getKey().length(); }); - String pText = text; + String pText = text.toLowerCase(); i = 0; int j = 0; Boolean isFinding = false; @@ -167,7 +167,7 @@ public class NlpService { ActionPartSpeechEnum actionPartSpeechEnum = ActionPartSpeechEnum.getEnumWithCode(key.getType()); action = actionPartSpeechEnum.getAction(systemTalkAnswerConfigService.getSystemTalkWithKeyGroup(), - key.getKey(), + key.getKey().toLowerCase(), actions, action, systemTalkAnswerConfigEntities, diff --git a/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/device/DeviceController.java b/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/device/DeviceController.java index 36f06c9..ddf92d9 100644 --- a/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/device/DeviceController.java +++ b/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/device/DeviceController.java @@ -1,6 +1,7 @@ package com.qiuguo.iot.user.api.controller.device; import com.alibaba.fastjson.JSONArray; +import com.qiuguo.iot.base.constans.RedisConstans; import com.qiuguo.iot.base.enums.*; import com.qiuguo.iot.base.utils.StringUtils; import com.qiuguo.iot.data.domain.BaseMessageResp; @@ -11,6 +12,7 @@ import com.qiuguo.iot.data.domain.box.BoxSession; import com.qiuguo.iot.data.domain.user.UserSession; import com.qiuguo.iot.data.entity.device.DeviceUserBindEntity; import com.qiuguo.iot.data.entity.device.DeviceUserTalkRecordEntity; +import com.qiuguo.iot.data.model.system.SystemTalkAnswerConfig; import com.qiuguo.iot.data.request.device.DeviceUserBindRequest; import com.qiuguo.iot.data.request.device.DeviceUserTalkRecordRequest; import com.qiuguo.iot.data.request.qiuguo.cloud.UserTalkRequst; @@ -21,6 +23,7 @@ import com.qiuguo.iot.data.service.device.DeviceInfoService; import com.qiuguo.iot.data.service.device.DeviceUserBindService; import com.qiuguo.iot.data.service.device.DeviceUserTalkRecordService; import com.qiuguo.iot.data.domain.action.Actions; +import com.qiuguo.iot.data.service.system.SystemTalkAnswerConfigService; import com.qiuguo.iot.third.command.ActionCommand; import com.qiuguo.iot.third.service.AliYunTranslateService; import com.qiuguo.iot.third.service.NlpService; @@ -75,9 +78,21 @@ public class DeviceController { @Resource private AliYunTranslateService aliYunTranslateService; + @Resource + private SystemTalkAnswerConfigService systemTalkAnswerConfigService; @Value("${device.timeout}") private Long timeOut;//2分钟 + + @GetMapping("/init/sysTalkAnswer") + public Mono sysTalkAnswer(@RequestParam Integer type) { + if(type == 0){ + systemTalkAnswerConfigService.initGroup(); + return Mono.just("重新读取指令完成"); + } + return Mono.just("未知请求"); + + } @PostMapping("/talk") public Mono deviceInit(@RequestBody UserTalkRequst userTalkRequst){ return nlpService.getActionWithLacSingle(userTalkRequst.getId(), userTalkRequst.getAsk().replace("@小果(智能AI助手) ", ""), someProperties.getType()) diff --git a/iot-modules/iot-box-websocket-api/src/main/resources/bootstrap-dev.yml b/iot-modules/iot-box-websocket-api/src/main/resources/bootstrap-dev.yml index 5ab6f9e..9424762 100644 --- a/iot-modules/iot-box-websocket-api/src/main/resources/bootstrap-dev.yml +++ b/iot-modules/iot-box-websocket-api/src/main/resources/bootstrap-dev.yml @@ -53,7 +53,7 @@ tts: suanfa: false #nacos控制变化 url: http://192.168.8.211:18000/run/predict # #http://47.110.40.30:18000/run/predict # #算法语音合成 lac: - #type: suanfa #nacos控制变化 + type: hub #nacos控制变化 huburl: http://192.168.8.175:8866/predict/lac suanfaurl: http://192.168.8.211:6000/qg_human/lac_word