yzx 3 dni temu
rodzic
commit
98cfe98b86

+ 1 - 0
src/main/java/com/telerobot/fs/entity/pojo/TtsProvider.java

@@ -3,6 +3,7 @@ package com.telerobot.fs.entity.pojo;
 public class TtsProvider {
     public static final String ALIYUN = "aliyun_tts";
     public static final String DOUBAO = "doubao_vcl_tts";
+    public static final String XFYUN = "xf_tts";
     public static final String MICROSOFT = "microsoft_tts";
     public static final String CHINA_TELECOM = "chinatelecom_tts";
 

+ 13 - 0
src/main/java/com/telerobot/fs/robot/RobotChat.java

@@ -153,6 +153,19 @@ public class RobotChat extends RobotBase {
             String ttsModels = chatRobot.getAccount().ttsModels;
             logger.info("{}  Current tts provider is doubao, set ttsModels={}", getTraceId(), ttsModels);
         }
+        if(ttsProvider.equalsIgnoreCase(TtsProvider.XFYUN)) {
+            String ttsModels = StringUtils.trimToEmpty(chatRobot.getAccount().ttsModels);
+            String xfTtsMode = "clone".equalsIgnoreCase(ttsModels) ? "clone" : "";
+            logger.info("{} Current tts provider is xfyun, set xf_tts_mode={}, ttsModels={}",
+                    getTraceId(),
+                    StringUtils.isEmpty(xfTtsMode) ? "standard" : xfTtsMode,
+                    ttsModels
+            );
+            EslConnectionUtil.sendExecuteCommand("set",
+                    "xf_tts_mode=" + xfTtsMode,
+                    uuid
+            );
+        }
         if(ttsProvider.equalsIgnoreCase(TtsProvider.MICROSOFT)) {
             logger.info("{}  Current tts provider is microsoft!", getTraceId());
         }