diff --git a/local_plugins/agent_service/android/src/main/kotlin/com/yunqiinnovation/agent_service/AgentService.kt b/local_plugins/agent_service/android/src/main/kotlin/com/yunqiinnovation/agent_service/AgentService.kt index 6a6dade10..70018fff2 100644 --- a/local_plugins/agent_service/android/src/main/kotlin/com/yunqiinnovation/agent_service/AgentService.kt +++ b/local_plugins/agent_service/android/src/main/kotlin/com/yunqiinnovation/agent_service/AgentService.kt @@ -135,6 +135,7 @@ object AgentService : CoroutineScope { // AI流生成相关 private var currentAiJob: Job? = null private var currsessionId: String = "" + private var currsessionAsrId: String = "" private var vipExptime:Int = 0 @@ -687,13 +688,14 @@ object AgentService : CoroutineScope { ) ) }else{ - text = recognitionResult + recognizing - if(recognitionResult.isEmpty()){ - currsessionId = sessionid + if(currsessionAsrId.isEmpty()) { + currsessionAsrId = sessionid } + text = recognitionResult + recognizing + sendEvent( "recognizing", mapOf( - "sessionid" to currsessionId, + "sessionid" to currsessionAsrId, "text" to text, "language" to detectedLanguage ) @@ -742,20 +744,31 @@ object AgentService : CoroutineScope { ) ) }else{ + if (currsessionAsrId.isEmpty()) { + currsessionAsrId = sessionid + } recognitionResult += result pendingProcessJob?.cancel() + sendEvent( + "recognizing", mapOf( + "sessionid" to currsessionAsrId, + "text" to recognitionResult, + "language" to detectedLanguage + ) + ) pendingProcessJob = launch { delay(2000) if (recognitionResult.isNotEmpty()) { sendEvent( "recognition_result", mapOf( - "sessionid" to currsessionId, + "sessionid" to currsessionAsrId, "text" to recognitionResult, "language" to detectedLanguage ) ) - processWithChatApi(currsessionId, recognitionResult) + processWithChatApi(currsessionAsrId, recognitionResult) recognitionResult = "" + currsessionAsrId = "" } } }