|
|
@ -75,6 +75,9 @@ class AgentServiceImpl: NSObject { |
|
|
//是否保留最终结果 |
|
|
//是否保留最终结果 |
|
|
private var isKeepResult = true; |
|
|
private var isKeepResult = true; |
|
|
|
|
|
|
|
|
|
|
|
// 新增:是否在识别过程中被中断 |
|
|
|
|
|
public var isInterrupt: Bool = true |
|
|
|
|
|
|
|
|
var currsessionId: String = "" |
|
|
var currsessionId: String = "" |
|
|
var language: String = "" |
|
|
var language: String = "" |
|
|
private var serverurl = "" |
|
|
private var serverurl = "" |
|
|
@ -1664,7 +1667,9 @@ class ChatApiStreamCallback: StreamCallback { |
|
|
// 停止等待音效 |
|
|
// 停止等待音效 |
|
|
agentService.audioPlayer?.stopAwaitSound() |
|
|
agentService.audioPlayer?.stopAwaitSound() |
|
|
} |
|
|
} |
|
|
|
|
|
if(agentService.isInterrupt){ |
|
|
|
|
|
BleService.shared.closeCodec() |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
if speakResponse && reply && broadcast && sessionid == agentService.currsessionId{ |
|
|
if speakResponse && reply && broadcast && sessionid == agentService.currsessionId{ |
|
|
agentService.azureTtsHelper?.flushStream(sessionid:sessionid) |
|
|
agentService.azureTtsHelper?.flushStream(sessionid:sessionid) |
|
|
@ -1829,6 +1834,9 @@ extension AgentServiceImpl: TtsEventListener { |
|
|
MusicService.shared.reduceVolume() |
|
|
MusicService.shared.reduceVolume() |
|
|
case .playbackCompleted: |
|
|
case .playbackCompleted: |
|
|
restartIdleCheck() |
|
|
restartIdleCheck() |
|
|
|
|
|
if(isInterrupt){ |
|
|
|
|
|
BleService.shared.openEncoder() |
|
|
|
|
|
} |
|
|
sendEvent(name: "playback_completed", data: ["status": "playback_completed"]) |
|
|
sendEvent(name: "playback_completed", data: ["status": "playback_completed"]) |
|
|
MusicService.shared.restoreVolume() |
|
|
MusicService.shared.restoreVolume() |
|
|
case .synthesisCanceled: |
|
|
case .synthesisCanceled: |
|
|
@ -2132,7 +2140,7 @@ extension AgentServiceImpl: AzureAsrHelper.ContinuousRecognizeCallback { |
|
|
isStartingRecognition = false |
|
|
isStartingRecognition = false |
|
|
// 使用模式感知的空闲检测启动方法 |
|
|
// 使用模式感知的空闲检测启动方法 |
|
|
startIdleCheckForMode(mode: currentRecognitionMode) |
|
|
startIdleCheckForMode(mode: currentRecognitionMode) |
|
|
if (currentRecognitionMode == "ble_wakeup") { |
|
|
if (currentRecognitionMode == "ble_wakeup") { |
|
|
audioPlayer?.playStartSound() |
|
|
audioPlayer?.playStartSound() |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|