From c1e9ee8d342d4bca227698cb11641a5b52b0b0cf Mon Sep 17 00:00:00 2001 From: tanjianbin <632190820@qq.com> Date: Thu, 23 Apr 2026 15:30:42 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=9C=A8=E7=A9=BA=E9=97=B2=E6=A3=80?= =?UTF-8?q?=E6=B5=8B=E9=80=BB=E8=BE=91=E4=B8=AD=E6=B7=BB=E5=8A=A0TTS?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E6=A3=80=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 防止机器人在语音播报时触发空闲问候,避免语音重叠 --- .../java/com/example/lzwcai_terminal_temi/MainActivity.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/example/lzwcai_terminal_temi/MainActivity.kt b/app/src/main/java/com/example/lzwcai_terminal_temi/MainActivity.kt index 5616e66..57a803c 100644 --- a/app/src/main/java/com/example/lzwcai_terminal_temi/MainActivity.kt +++ b/app/src/main/java/com/example/lzwcai_terminal_temi/MainActivity.kt @@ -102,6 +102,7 @@ class MainActivity : AppCompatActivity(), OnRobotReadyListener, TtsListener, OnG private var autoRechargeJob: Job? = null private var latestYaw: Float? = null private var receptionAnchorYaw: Float? = null + private var isTtsSpeaking: Boolean = false private var pendingReceptionReturnWorkflow: Boolean = false private var lastWorkflowConfigRefreshAt: Long = 0L private lateinit var telemetryManager: TelemetryManager @@ -340,6 +341,7 @@ class MainActivity : AppCompatActivity(), OnRobotReadyListener, TtsListener, OnG connectionCoordinator.handleTtsStatusChange(ttsRequest) when (ttsRequest.status) { TtsRequest.Status.STARTED -> { + isTtsSpeaking = true Log.i("MainActivity", "TTS started") binding.animatedEmojiView.currentExpression = AnimatedEmojiView.Expression.TALKING liveKitManager?.setTtsMute(true) @@ -347,6 +349,7 @@ class MainActivity : AppCompatActivity(), OnRobotReadyListener, TtsListener, OnG TtsRequest.Status.COMPLETED, TtsRequest.Status.CANCELED, TtsRequest.Status.NOT_ALLOWED -> { + isTtsSpeaking = false Log.i("MainActivity", "TTS finished: ${ttsRequest.speech}") if (taskController.currentTask == "patrol") { binding.animatedEmojiView.currentExpression = AnimatedEmojiView.Expression.ANGRY @@ -356,6 +359,7 @@ class MainActivity : AppCompatActivity(), OnRobotReadyListener, TtsListener, OnG liveKitManager?.setTtsMute(false) } TtsRequest.Status.ERROR -> { + isTtsSpeaking = false Log.e("MainActivity", "TTS error: ${ttsRequest.speech}") binding.animatedEmojiView.currentExpression = AnimatedEmojiView.Expression.SAD liveKitManager?.setTtsMute(false) @@ -518,7 +522,7 @@ class MainActivity : AppCompatActivity(), OnRobotReadyListener, TtsListener, OnG } } } - if (isIdleTask && !atHomeBase && state == DETECTED && !isSpecialState) { + if (isIdleTask && !atHomeBase && state == DETECTED && !isSpecialState && !isTtsSpeaking) { val hour = java.util.Calendar.getInstance().get(java.util.Calendar.HOUR_OF_DAY) val greeting = when (hour) { in 6..11 -> "早上好"