240809:新增取消对话,增加获取当前ai通道
authorxiewei <892331662@qq.com>
Fri, 9 Aug 2024 08:58:26 +0000 (16:58 +0800)
committerxiewei <892331662@qq.com>
Fri, 9 Aug 2024 08:58:26 +0000 (16:58 +0800)
13 files changed:
app/src/main/java/com/zhixun/android/sdk/polymerizesdk/ChatActivity.java
app/src/main/java/com/zhixun/android/sdk/polymerizesdk/MainActivity.java
app/src/main/res/layout/activity_chat.xml
polysdk/build.gradle
polysdk/src/main/java/com/zhixun/android/sdk/polysdk/aigc/JWebSocketClient.java
polysdk/src/main/java/com/zhixun/android/sdk/polysdk/asr/ChatManager.java
polysdk/src/main/java/com/zhixun/android/sdk/polysdk/asr/TranscriptionManager.java
polysdk/src/main/java/com/zhixun/android/sdk/polysdk/bean/AsrHeader.java
polysdk/src/main/java/com/zhixun/android/sdk/polysdk/bean/AsrReply.java
polysdk/src/main/java/com/zhixun/android/sdk/polysdk/callback/IPolyAPI.java
polysdk/src/main/java/com/zhixun/android/sdk/polysdk/callback/IPolyAiAPI.java
polysdk/src/main/java/com/zhixun/android/sdk/polysdk/data/PolyAiKit.java
polysdk/src/main/java/com/zhixun/android/sdk/polysdk/data/PolyApiKit.java

index b771367..c9783e6 100644 (file)
@@ -219,6 +219,9 @@ public class ChatActivity extends AppCompatActivity {
         });
     }
 
+    public void cancleChat(View view){
+        PolymerizeAgent.getInstance().getAiAPI().cancleChat();
+    }
     @Override
     protected void onDestroy() {
         super.onDestroy();
index 95765b1..618af78 100644 (file)
@@ -42,6 +42,8 @@ public class MainActivity extends AppCompatActivity {
         }
 
         VoiceChatManager.getInstance().start();
+        String cannel = PolymerizeAgent.getInstance().getAiAPI().getAIChannel();
+        Log.i(TAG,"cannel--"+cannel);
     }
 
 
@@ -117,6 +119,7 @@ public class MainActivity extends AppCompatActivity {
                 });
 
 
+
         /*ChatGPTClient.getInstance().checkAIKey("sk-proj-04ogvrZQqyaiv1OWw8OZT3BlbkFJG9Gyr8oFvRdmr3oXQNbX", new IOnKeyCheckCallback() {
             @Override
             public void OnKeyCheckResult(boolean result) {
index 8299e6c..994ae08 100644 (file)
             android:layout_marginLeft="15dp"
             android:text="豆包"/>
 
+        <Button
+            android:onClick="cancleChat"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginLeft="15dp"
+            android:text="取消"/>
 
     </LinearLayout>
 </LinearLayout>
\ No newline at end of file
index 64c4f01..bb411fc 100644 (file)
@@ -54,7 +54,7 @@ task makeJar(type: Copy) {
     include('classes.jar')
 
     // 重命名为自定义的名字
-    rename('classes.jar', 'Poly-SDK-v1.5-240806.jar')
+    rename('classes.jar', 'Poly-SDK-v1.5-240809.jar')
 }
 
 // 在打包release版本时执行makeJar任务
index a4ce6ac..ecab5fc 100644 (file)
@@ -31,8 +31,6 @@ public class JWebSocketClient extends WebSocketClient {
 //        this.send("\\u000B");
     }
 
-
-
     @Override
     public void onMessage(String message) {//接收到消息时调用
     }
index cc535ad..cddecac 100644 (file)
@@ -36,6 +36,7 @@ public class ChatManager {
 
 
     private static ChatManager sInstance;
+
     public static ChatManager getInstance() {
         if (sInstance == null) {
             synchronized (ChatManager.class) {
@@ -50,11 +51,11 @@ public class ChatManager {
 
     private final int MSG_RECONNECT = 101;
     private final int MSG_SENDPING = 102;
-    private Handler handler = new Handler(Looper.getMainLooper()){
+    private Handler handler = new Handler(Looper.getMainLooper()) {
         @Override
         public void handleMessage(@NonNull Message msg) {
             super.handleMessage(msg);
-            switch (msg.what){
+            switch (msg.what) {
                 case MSG_RECONNECT:
                     SobLog.d(TAG, "MSG_RECONNECT");
                     close();
@@ -62,7 +63,7 @@ public class ChatManager {
                     break;
                 case MSG_SENDPING:
 
-                    if(chatClient!=null&&chatClient.isOpen()){
+                    if (chatClient != null && chatClient.isOpen()) {
                         chatClient.sendPing();
                     }
                     break;
@@ -79,7 +80,7 @@ public class ChatManager {
     private String chatType = "";
 
     public void init() {
-        SobLog.d(TAG,"init--ChatManager--1.5-2408071055--");
+        SobLog.d(TAG, "init--ChatManager--1.5-2408071055--");
         connectChat();
     }
 
@@ -87,19 +88,19 @@ public class ChatManager {
     private void connectChat() {
         String url;
         String channel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
-        if(channel.equals(MyConfig.CHANNLE_CHAT)){
-            if(channelChangeCallback!=null){
-                channelChangeCallback.onChange(true,channel);
+        if (channel.equals(MyConfig.CHANNLE_CHAT)) {
+            if (channelChangeCallback != null) {
+                channelChangeCallback.onChange(true, channel);
             }
             isReConnect = false;
             return;
         }
-        if(TextUtils.isEmpty(channel)||channel.equals(MyConfig.CHANNLE_CHAT)){
-            url = MyConfig.URL_AI_CHAT+"?is_auth=1"+"&dt="+MyConfig.TOKEN;
-        }else {
-            url = MyConfig.URL_AI_CHAT+"?platform="+channel+"&is_auth=1"+"&dt="+MyConfig.TOKEN;
+        if (TextUtils.isEmpty(channel) || channel.equals(MyConfig.CHANNLE_CHAT)) {
+            url = MyConfig.URL_AI_CHAT + "?is_auth=1" + "&dt=" + MyConfig.TOKEN;
+        } else {
+            url = MyConfig.URL_AI_CHAT + "?platform=" + channel + "&is_auth=1" + "&dt=" + MyConfig.TOKEN;
         }
-        SobLog.d(TAG,"url--"+url);
+        SobLog.d(TAG, "url--" + url);
         URI chatRri = URI.create(url);
         chatClient = new JWebSocketClient(chatRri) {
             @Override
@@ -124,13 +125,13 @@ public class ChatManager {
             public void onOpen(ServerHandshake handShakeData) {
                 super.onOpen(handShakeData);
                 SobLog.d(TAG, "onOpen: chatClient");
-                if(isReConnect){
-                    if(channelChangeCallback!=null){
-                        channelChangeCallback.onChange(true,channel);
+                if (isReConnect) {
+                    if (channelChangeCallback != null) {
+                        channelChangeCallback.onChange(true, channel);
                     }
                 }
                 isReConnect = false;
-                handler.sendEmptyMessageDelayed(MSG_SENDPING,5000);
+                handler.sendEmptyMessageDelayed(MSG_SENDPING, 5000);
 
             }
 
@@ -139,29 +140,29 @@ public class ChatManager {
                 super.onWebsocketPong(conn, f);
 
                 handler.removeMessages(MSG_SENDPING);
-                handler.sendEmptyMessageDelayed(MSG_SENDPING,5000);
+                handler.sendEmptyMessageDelayed(MSG_SENDPING, 5000);
             }
 
             @Override
             public void onClose(int code, String reason, boolean remote) {
                 super.onClose(code, reason, remote);
-                SobLog.d(TAG, "chatClient:ttsClient-"+code+"-reason-"+reason);
-                if(!ischeckoutChannel){
+                SobLog.d(TAG, "chatClient:ttsClient-" + code + "-reason-" + reason);
+                if (!ischeckoutChannel) {
                     handler.removeMessages(MSG_RECONNECT);
-                    handler.sendEmptyMessageDelayed(MSG_RECONNECT,2000);
-                    if(isReConnect){
-                        if(channelChangeCallback!=null){
-                            channelChangeCallback.onChange(false,channel);
+                    handler.sendEmptyMessageDelayed(MSG_RECONNECT, 1500);
+                    if (isReConnect) {
+                        if (channelChangeCallback != null) {
+                            channelChangeCallback.onChange(false, channel);
                         }
                         isReConnect = false;
                     }
-                }else {
+                } else {
                     ischeckoutChannel = false;
                     isReConnect = true;
                     handler.removeMessages(MSG_RECONNECT);
                     connectChat();
                     if (onChatMsgListener != null) {
-                        if(chatType.equals("start")||chatType.equals("middle")){
+                        if (chatType.equals("start") || chatType.equals("middle")) {
                             chatType = "end";
                             onChatMsgListener.onChange(chatType, "");
                         }
@@ -186,27 +187,28 @@ public class ChatManager {
     }
 
     public void sendChat(String text) {
-        sendChat(null,text);
+        sendChat(null, text);
     }
-    public void sendChat(String system,String text) {
+
+    public void sendChat(String system, String text) {
         String channel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         String key = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
-        if(!TextUtils.isEmpty(channel)
-                &&channel.equals(MyConfig.CHANNLE_CHAT)){
+        if (!TextUtils.isEmpty(channel)
+                && channel.equals(MyConfig.CHANNLE_CHAT)) {
 
-            SobLog.d(TAG, "has GPT --"+text);
+            SobLog.d(TAG, "has GPT --" + text);
             if (onChatMsgListener != null) {
                 onChatMsgListener.onChange("start", null);
             }
             ChatGPTClient.getInstance().setAPI_KEY(key);
-            ChatGPTClient.getInstance().sendMessage(system,text, new IOnChatCallback() {
+            ChatGPTClient.getInstance().sendMessage(system, text, new IOnChatCallback() {
                 @Override
-                public void OnChatResult(int size,int position,String result) {
-                    SobLog.d(TAG, "ChatGPTClient:result-"+result);
+                public void OnChatResult(int size, int position, String result) {
+                    SobLog.d(TAG, "ChatGPTClient:result-" + result);
                     if (onChatMsgListener != null) {
                         onChatMsgListener.onChange("middle", result);
                     }
-                    if(position == size-1){
+                    if (position == size - 1) {
                         if (onChatMsgListener != null) {
                             onChatMsgListener.onChange("end", null);
                         }
@@ -214,7 +216,7 @@ public class ChatManager {
                 }
             });
 
-        }else {
+        } else {
             if (chatClient == null
                     || chatClient.isClosed()) {
                 SobLog.d(TAG, "sendChat fail chatClient--isClosed");
@@ -223,7 +225,7 @@ public class ChatManager {
             HashMap<String, String> msgMap = new HashMap<>();
             msgMap.put("type", "chat");
             msgMap.put("content", text);
-            if(!TextUtils.isEmpty(channel)){
+            if (!TextUtils.isEmpty(channel)) {
                 msgMap.put("platform", channel);
             }
             String msg = new Gson().toJson(msgMap);
@@ -248,20 +250,21 @@ public class ChatManager {
     private boolean isReConnect = false;
     private boolean ischeckoutChannel = false;
     private IAIChannelChangeCallback channelChangeCallback;
-    public void checkoutChannel(IAIChannelChangeCallback channelChangeCallback){
+
+    public void checkoutChannel(IAIChannelChangeCallback channelChangeCallback) {
         this.channelChangeCallback = channelChangeCallback;
 
-        if(chatClient!=null&&chatClient.isOpen()){
+        if (chatClient != null && chatClient.isOpen()) {
             ischeckoutChannel = true;
             close();
-        }else {
+        } else {
             ischeckoutChannel = false;
             isReConnect = true;
             handler.removeMessages(MSG_RECONNECT);
             connectChat();
         }
         if (onChatMsgListener != null) {
-            if(chatType.equals("start")||chatType.equals("middle")){
+            if (chatType.equals("start") || chatType.equals("middle")) {
                 chatType = "end";
                 onChatMsgListener.onChange(chatType, "");
             }
@@ -269,5 +272,20 @@ public class ChatManager {
 
     }
 
+    public void cancleChat() {
+        SobLog.d(TAG, "cancleChat--" + chatType);
+        if (chatType.equals("start") || chatType.equals("middle")) {
+            chatType = "end";
+            if (onChatMsgListener != null) {
+                onChatMsgListener.onChange(chatType, "");
+            }
+            if (chatClient != null && chatClient.isOpen()) {
+                close();
+            }
+
+        }
+
+    }
+
 
 }
index caaef8a..86d3ffb 100644 (file)
@@ -87,7 +87,7 @@ public class TranscriptionManager {
                             cacheAudio = new byte[0];
                             SobLog.d(TAG,"convertAudioPcmToMp3--onError--"+msg);
                             if(onTranscriptionDataChange!=null){
-                                onTranscriptionDataChange.onChange("end",msg);
+                                onTranscriptionDataChange.onChange("fail",msg);
                             }
                         }
 
@@ -122,7 +122,7 @@ public class TranscriptionManager {
                                     }
                                 }else {
                                     if(onTranscriptionDataChange!=null){
-                                        onTranscriptionDataChange.onChange("end","Data parsing failed");
+                                        onTranscriptionDataChange.onChange("fail","Data parsing failed");
                                     }
                                 }
                             }
@@ -137,7 +137,7 @@ public class TranscriptionManager {
                         });
                     }else {
                         if(onTranscriptionDataChange!=null){
-                            onTranscriptionDataChange.onChange("end","Data parsing failed");
+                            onTranscriptionDataChange.onChange("fail","Data parsing failed");
                         }
                     }
 
@@ -181,43 +181,59 @@ public class TranscriptionManager {
                 Log.e(TAG, "arsClient onMessage:" + ByteTools.byteArrToHex(data));
             }
 
+            @Override
+            public void onError(Exception ex) {
+                super.onError(ex);
+                SobLog.d(TAG, "arsClient onError:" + ex.getMessage());
+            }
+
             @Override
             public void onMessage(String message) {
                 //message就是接收到的消息
-
+                SobLog.d(TAG, "arsClient:" + message);
                 AsrReply reply = JsonUtils.stringToObject(message,AsrReply.class);
-                SobLog.d(TAG, "arsClient:" + new Gson().toJson(reply));
-                if(reply==null|| TextUtils.isEmpty(reply.getEvent()))return;
-                if(reply.getEvent().equals("TranscriptionStarted")&&reply.getStatus()==20000000){
-                    arsTransStart = true;
-                    isStarting = false;
-                    isStoping = false;
-                    if(onTranscriptionDataChange!=null){
-                        onTranscriptionDataChange.onStartChange(1,arsTransStart);
-                    }
-                }else if(reply.getEvent().equals("TranscriptionCompleted")&&reply.getStatus()==20000000){
-                    arsTransStart = false;
-                    isStoping = false;
-                    isStarting = false;
-                    if(onTranscriptionDataChange!=null){
-                        onTranscriptionDataChange.onStartChange(2,arsTransStart);
-                    }
-                }else if(reply.getEvent().equals("SentenceEnd")&&reply.getStatus()==20000000){
-                    if(onTranscriptionDataChange!=null){
-                        String msg = reply.getResult().getResult();
-                        onTranscriptionDataChange.onChange("end",msg);
-                    }
-                }else if(reply.getEvent().equals("Changed")&&reply.getStatus()==20000000){
-                    if(onTranscriptionDataChange!=null){
-                        String msg = reply.getResult().getResult();
-                        onTranscriptionDataChange.onChange("Changed",msg);
+
+                if(reply!=null&&!TextUtils.isEmpty(reply.getEvent())) {
+                    if(reply.getEvent().equals("TranscriptionStarted")&&reply.getStatus()==20000000){
+                        arsTransStart = true;
+                        isStarting = false;
+                        isStoping = false;
+                        if(onTranscriptionDataChange!=null){
+                            onTranscriptionDataChange.onStartChange(1,arsTransStart);
+                        }
+                    }else if(reply.getEvent().equals("TranscriptionCompleted")&&reply.getStatus()==20000000){
+                        arsTransStart = false;
+                        isStoping = false;
+                        isStarting = false;
+                        if(onTranscriptionDataChange!=null){
+                            onTranscriptionDataChange.onStartChange(2,arsTransStart);
+                        }
+                    }else if(reply.getEvent().equals("SentenceEnd")&&reply.getStatus()==20000000){
+                        if(onTranscriptionDataChange!=null){
+                            String msg = reply.getResult().getResult();
+                            onTranscriptionDataChange.onChange("end",msg);
+                        }
+                    }else if(reply.getEvent().equals("Changed")&&reply.getStatus()==20000000){
+                        if(onTranscriptionDataChange!=null){
+                            String msg = reply.getResult().getResult();
+                            onTranscriptionDataChange.onChange("Changed",msg);
+                        }
+                    }else {
+                        if(onTranscriptionDataChange!=null){
+                            String msg = reply.getResult().getResult();
+                            onTranscriptionDataChange.onChange(reply.getEvent(),msg);
+                        }
                     }
                 }else {
-                    if(onTranscriptionDataChange!=null){
-                        String msg = reply.getResult().getResult();
-                        onTranscriptionDataChange.onChange(reply.getEvent(),msg);
+                    AsrHeader header = reply.getHeader();
+                    if(header!=null){
+                        if(onTranscriptionDataChange!=null){
+                            String msg = header.getMsg();
+                            onTranscriptionDataChange.onChange("fail",msg);
+                        }
                     }
                 }
+
             }
 
             @Override
@@ -359,7 +375,7 @@ public class TranscriptionManager {
             }
             if(cacheAudio.length==0){
                 if(onTranscriptionDataChange!=null){
-                    onTranscriptionDataChange.onChange("end","Data parsing failed");
+                    onTranscriptionDataChange.onChange("fail","audio length is 0");
                 }
             }else {
                 handler.removeMessages(MSG_CONVERT_GPT);
index a8e8121..6ff7379 100644 (file)
@@ -2,14 +2,28 @@ package com.zhixun.android.sdk.polysdk.bean;
 
 public class AsrHeader {
 
+
     /**
-     * event : StartTranscription
-     * trace_id : 3fa6b9e6a30b407ea38ad7ae69e6c291
+     * event : Failed
+     * msg : NoValidSpeechesFoundInInputAudio
+     * status : 40030004
+     * task_id : d0644da0c7e96a01a6c3b5a6af9e0486
      */
 
     private String event;
+    private String msg;
+    private int status;
+    private String task_id;
     private String trace_id;
 
+    public String getTrace_id() {
+        return trace_id;
+    }
+
+    public void setTrace_id(String trace_id) {
+        this.trace_id = trace_id;
+    }
+
     public String getEvent() {
         return event;
     }
@@ -18,11 +32,27 @@ public class AsrHeader {
         this.event = event;
     }
 
-    public String getTrace_id() {
-        return trace_id;
+    public String getMsg() {
+        return msg;
     }
 
-    public void setTrace_id(String trace_id) {
-        this.trace_id = trace_id;
+    public void setMsg(String msg) {
+        this.msg = msg;
+    }
+
+    public int getStatus() {
+        return status;
+    }
+
+    public void setStatus(int status) {
+        this.status = status;
+    }
+
+    public String getTask_id() {
+        return task_id;
+    }
+
+    public void setTask_id(String task_id) {
+        this.task_id = task_id;
     }
 }
index 238451f..ccd7966 100644 (file)
@@ -16,6 +16,16 @@ public class AsrReply {
     private String event;
     private AsrResult result;
 
+    private AsrHeader header;
+
+    public AsrHeader getHeader() {
+        return header;
+    }
+
+    public void setHeader(AsrHeader header) {
+        this.header = header;
+    }
+
     public int getStatus() {
         return status;
     }
index 27bdafa..0986e75 100644 (file)
@@ -19,6 +19,8 @@ public interface IPolyAPI {
 
     void setAIChannelKey(String channel,String key,IAIChannelChangeCallback channelChangeCallback);
 
+
+
     void release();
 
     void printRegiestDevice();
index 2693548..7d71470 100644 (file)
@@ -41,6 +41,8 @@ public interface IPolyAiAPI {
 
     void sendChatMsg(String text);
 
+    void cancleChat();
+    String getAIChannel();
     void setGPTModel(String model);
     String getGPTModel();
 
index 6e1809d..a0b0b99 100644 (file)
@@ -63,7 +63,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void speechRecognition(String format,String sample_rate,String lang,File file, AIRequestCallback aiRequestCallback) {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             aiRequestCallback.onFail(NOTLOGIN_TIP);
             SobLog.d(TAG,NOTLOGIN_TIP);
@@ -93,7 +93,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void translate(String lang, String text, AIRequestCallback aiRequestCallback) {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             aiRequestCallback.onFail(NOTLOGIN_TIP);
             SobLog.d(TAG,NOTLOGIN_TIP);
@@ -132,7 +132,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void getSupportLan(AIRequestCallback aiRequestCallback) {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             aiRequestCallback.onFail(NOTLOGIN_TIP);
             SobLog.d(TAG,NOTLOGIN_TIP);
@@ -166,7 +166,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void detectLanguage(String text, AIRequestCallback aiRequestCallback) {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             aiRequestCallback.onFail(NOTLOGIN_TIP);
             SobLog.d(TAG,NOTLOGIN_TIP);
@@ -238,7 +238,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void creatAigcImg(AigcTask aigcTask, AIRequestCallback aiRequestCallback) {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             aiRequestCallback.onFail(NOTLOGIN_TIP);
             SobLog.d(TAG,NOTLOGIN_TIP);
@@ -278,7 +278,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void queryTaskState(AigcQuery aigcQuery, AIRequestCallback aiRequestCallback) {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             aiRequestCallback.onFail(NOTLOGIN_TIP);
             SobLog.d(TAG,NOTLOGIN_TIP);
@@ -317,7 +317,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void sendChatMsg(String text) {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             SobLog.d(TAG,NOTLOGIN_TIP);
             return;
@@ -325,6 +325,11 @@ public class PolyAiKit implements IPolyAiAPI {
         ChatManager.getInstance().sendChat(text);
     }
 
+    @Override
+    public void cancleChat() {
+        ChatManager.getInstance().cancleChat();
+    }
+
     @Override
     public void setGPTModel(String model) {
         SpUtils.getInstance().saveValue(SpUtils.KEY_CHAT_MODEL,model);
@@ -335,6 +340,12 @@ public class PolyAiKit implements IPolyAiAPI {
         return SpUtils.getInstance().getChatModel();
     }
 
+    @Override
+    public String getAIChannel() {
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
+        return cannel;
+    }
+
     @Override
     public void checkGPTKey(String key, IOnKeyCheckCallback onKeyCheckCallback) {
         ChatGPTClient.getInstance().checkAIKey(key, onKeyCheckCallback);
@@ -342,7 +353,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void sendChatMsg(String system, String text) {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             SobLog.d(TAG,NOTLOGIN_TIP);
             return;
@@ -360,7 +371,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void startTrans() {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             SobLog.d(TAG,NOTLOGIN_TIP);
             return;
@@ -370,7 +381,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void stopTrans() {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             SobLog.d(TAG,NOTLOGIN_TIP);
             return;
@@ -380,7 +391,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void sendTransByte(byte[] data) {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             SobLog.d(TAG,NOTLOGIN_TIP);
             return;
@@ -398,7 +409,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void startSynthesis() {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             SobLog.d(TAG,NOTLOGIN_TIP);
             return;
@@ -408,7 +419,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void sendLongTextStream(String text) {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             SobLog.d(TAG,NOTLOGIN_TIP);
             return;
@@ -418,7 +429,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void runSynthesis(String text) {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             SobLog.d(TAG,NOTLOGIN_TIP);
             return;
@@ -428,7 +439,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void stopSynthesis() {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             SobLog.d(TAG,NOTLOGIN_TIP);
             return;
@@ -446,7 +457,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void convertAudioMsbcToPcm(String inputPath, String outPath, String rate,String track, IAudioConvertListener iAudioConvertListener) {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             iAudioConvertListener.onError(NOTLOGIN_TIP);
             return;
@@ -457,7 +468,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void convertAudioMsbcToPcm(byte[] inData, String rate, String track, IAudioConvertListener iAudioConvertListener) {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             iAudioConvertListener.onError(NOTLOGIN_TIP);
             return;
@@ -472,7 +483,7 @@ public class PolyAiKit implements IPolyAiAPI {
 
     @Override
     public void convertAudioSbcToPcm(byte[] inData, String rate, String track, IAudioConvertListener iAudioConvertListener) {
-        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL_KEY);
+        String cannel = SpUtils.getInstance().getStringValue(SpUtils.KEY_CHANNEL);
         if(!AuthReceiverHandler.getInstance().isLogined()&&!cannel.equals(MyConfig.CHANNLE_CHAT)){
             iAudioConvertListener.onError(NOTLOGIN_TIP);
             return;
index f356341..e9c8f1b 100644 (file)
@@ -69,6 +69,8 @@ public class PolyApiKit implements IPolyAPI, IBtReceiverCallback {
         TranscriptionManager.getInstance().connectTran();
     }
 
+
+
     @Override
     public void release() {
         AuthMsgSendHandler.getInstance().clear();