Browse Source

修复语音识别会话ID处理逻辑

weicu
tanlongsheng 10 months ago
parent
commit
49d0aa3170
  1. 25
      local_plugins/agent_service/android/src/main/kotlin/com/yunqiinnovation/agent_service/AgentService.kt

25
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 = ""
}
}
}

Loading…
Cancel
Save