【会话回复逻辑人家机器人消息不做回复操作】
This commit is contained in:
parent
550b85b8ea
commit
07aa27bd4e
@ -1,6 +1,7 @@
|
|||||||
package club.joylink.rtss.services.voice.discriminate;
|
package club.joylink.rtss.services.voice.discriminate;
|
||||||
|
|
||||||
import club.joylink.rtss.simulation.cbtc.Simulation;
|
import club.joylink.rtss.simulation.cbtc.Simulation;
|
||||||
|
import club.joylink.rtss.simulation.cbtc.conversation.ConversationGroupHandlerService;
|
||||||
import club.joylink.rtss.simulation.cbtc.conversation.ConversationManagerService;
|
import club.joylink.rtss.simulation.cbtc.conversation.ConversationManagerService;
|
||||||
import club.joylink.rtss.simulation.cbtc.discriminate.*;
|
import club.joylink.rtss.simulation.cbtc.discriminate.*;
|
||||||
import club.joylink.rtss.simulation.cbtc.member.SimulationMember;
|
import club.joylink.rtss.simulation.cbtc.member.SimulationMember;
|
||||||
@ -18,7 +19,7 @@ import java.util.List;
|
|||||||
public class ReplyParseServiceImpl implements VoiceTransactionalService {
|
public class ReplyParseServiceImpl implements VoiceTransactionalService {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private ConversationManagerService conversationManagerService;
|
private ConversationGroupHandlerService conversationGroupHandlerService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Async("voiceDiscriminateExecutor")
|
@Async("voiceDiscriminateExecutor")
|
||||||
@ -55,7 +56,7 @@ public class ReplyParseServiceImpl implements VoiceTransactionalService {
|
|||||||
replyResult.getParamList().toArray(objArr);
|
replyResult.getParamList().toArray(objArr);
|
||||||
replyResult.setContent(String.format(replyRule.getMessageFormat(), objArr));
|
replyResult.setContent(String.format(replyRule.getMessageFormat(), objArr));
|
||||||
// 执行回复
|
// 执行回复
|
||||||
simulationMemberList.forEach(member -> conversationManagerService.conversationChat(simulation, member, replyResult.getContent(), null));
|
simulationMemberList.forEach(member -> conversationGroupHandlerService.textChat(simulation, member, result.getConversionGroupId(), replyResult.getContent()));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -69,8 +69,9 @@ public class VoiceDiscriminateService {
|
|||||||
/**
|
/**
|
||||||
* 接受语音文件、资源等必要条件,解析开始
|
* 接受语音文件、资源等必要条件,解析开始
|
||||||
*/
|
*/
|
||||||
public void doAnalysis(Simulation simulation, String content, List<SimulationMember> memberList) {
|
public void doAnalysis(Simulation simulation, Long id, String content, List<SimulationMember> memberList) {
|
||||||
VoiceDiscriminateResult result = voiceParseService.doParse(simulation, content);
|
VoiceDiscriminateResult result = voiceParseService.doParse(simulation, content);
|
||||||
|
result.setConversionGroupId(id);
|
||||||
result.setSimulationMemberList(memberList); // 匹配到人员集合
|
result.setSimulationMemberList(memberList); // 匹配到人员集合
|
||||||
operateParseService.doExec(result, simulation); // 指令执行
|
operateParseService.doExec(result, simulation); // 指令执行
|
||||||
replyParseService.doExec(result, simulation); // 回复执行
|
replyParseService.doExec(result, simulation); // 回复执行
|
||||||
@ -93,7 +94,8 @@ public class VoiceDiscriminateService {
|
|||||||
}
|
}
|
||||||
// 增加机器人已读操作
|
// 增加机器人已读操作
|
||||||
memberList.forEach(m -> conversationGroupManagerService.readConversationGroup(event.getSimulation(), m, conversationGroup.getId()));
|
memberList.forEach(m -> conversationGroupManagerService.readConversationGroup(event.getSimulation(), m, conversationGroup.getId()));
|
||||||
// 执行语音识别
|
if (!event.getMessage().getMember().isRobot()) { // 如果消息来源不为机器人,则执行语音识别
|
||||||
doAnalysis(event.getSimulation(), event.getMessage().getContent(), memberList);
|
doAnalysis(event.getSimulation(), conversationGroup.getId(), event.getMessage().getContent(), memberList);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -52,6 +52,11 @@ public class VoiceDiscriminateResult {
|
|||||||
*/
|
*/
|
||||||
private List<ParamExtractResult> paramExtractResultList;
|
private List<ParamExtractResult> paramExtractResultList;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 会话的ID,用于回复
|
||||||
|
*/
|
||||||
|
private Long conversionGroupId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 匹配人员集合
|
* 匹配人员集合
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user