|
|
@@ -160,14 +160,13 @@ public abstract class AbstractChatRobot implements IChatRobot {
|
|
|
|
|
|
@Override
|
|
|
public synchronized void flushTtsRequestQueue(){
|
|
|
- if(TtsChannelState.OPENED.getCode().equals(ttsChannelState.getCode())) {
|
|
|
+ if (canFlushTtsRequestQueue()) {
|
|
|
while (true) {
|
|
|
String text = ttsRequestQueue.poll();
|
|
|
if (StringUtils.isEmpty(text)) {
|
|
|
break;
|
|
|
}
|
|
|
- EslConnectionUtil.sendExecuteCommand(ttsProvider + "_resume", text, uuid);
|
|
|
- logger.info("{} sendTtsRequest tts_resume text {}", uuid, text);
|
|
|
+ sendTtsResumeCommand(text);
|
|
|
}
|
|
|
}else{
|
|
|
logger.error("{} execute flushTtsRequestQueue error, ttsChannelState is not opened.", uuid);
|
|
|
@@ -223,6 +222,9 @@ public abstract class AbstractChatRobot implements IChatRobot {
|
|
|
flushTtsRequestQueue();
|
|
|
}else if(TtsChannelState.TRYING_OPEN.getCode().equals(ttsChannelState.getCode())) {
|
|
|
ttsRequestQueue.add(text);
|
|
|
+ if (isTxTts1Provider()) {
|
|
|
+ flushTtsRequestQueue();
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -281,10 +283,25 @@ public abstract class AbstractChatRobot implements IChatRobot {
|
|
|
flushTtsRequestQueue();
|
|
|
}else if(TtsChannelState.TRYING_OPEN.getCode().equals(ttsChannelState.getCode())) {
|
|
|
ttsRequestQueue.add(cmd);
|
|
|
+ if (isTxTts1Provider()) {
|
|
|
+ flushTtsRequestQueue();
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
+ private boolean canFlushTtsRequestQueue() {
|
|
|
+ if (TtsChannelState.OPENED.getCode().equals(ttsChannelState.getCode())) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ return isTxTts1Provider() && TtsChannelState.TRYING_OPEN.getCode().equals(ttsChannelState.getCode());
|
|
|
+ }
|
|
|
+
|
|
|
+ private void sendTtsResumeCommand(String text) {
|
|
|
+ EslConnectionUtil.sendExecuteCommand(ttsProvider + "_resume", text, uuid);
|
|
|
+ logger.info("{} sendTtsRequest tts_resume text {}", uuid, text);
|
|
|
+ }
|
|
|
+
|
|
|
protected void addDialogue(String role, String content){
|
|
|
// 避免重试时重复记录
|
|
|
if (llmRoundMessages.size() > 0) {
|