From 7fe7a02777eae33c5e93b2cd50aa9443af24bc27 Mon Sep 17 00:00:00 2001 From: IrvingGao <1729854488@qq.com> Date: Thu, 23 May 2024 17:15:25 +0800 Subject: [PATCH] [bug] board --- takway/clients/web_socket_client_utils.py | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/takway/clients/web_socket_client_utils.py b/takway/clients/web_socket_client_utils.py index ae4f6dd..bc29d37 100644 --- a/takway/clients/web_socket_client_utils.py +++ b/takway/clients/web_socket_client_utils.py @@ -358,10 +358,6 @@ class WebSocketClinet: if not self.wakeup_event.is_set(): continue - # 切换播放模式 - self.listening_event.clear() - self.speaking_event.set() - # 接收数据 while True: # 当唤醒状态被关闭时,退出循环 @@ -370,19 +366,26 @@ class WebSocketClinet: self.speaking_event.clear() client.close_client() break - + ''' # 当正在说话时接收到时,默认全是废消息 if self.listening_event.is_set() and not self.speaking_event.is_set(): client.close_client() break + ''' response, data_type = client.receive_per_data() if data_type == dict: print(f"{datetime.now()}: receive json data: {response}") # 打印接收到的消息 # 误识别情况 if response['code'] == 201: - print(f"false audio: wakeup: {self.wakeup_event.is_set()}, interrupt: {self.interrupt_event.is_set()}, listening: {self.listening_event.is_set()}") - continue + # 恢复对话状态 + self.listening_event.set() + self.speaking_event.clear() + break + elif response['code'] == 200: + # 切换播放模式 + self.listening_event.clear() + self.speaking_event.set() elif data_type == bytes: # 开始播放 print(f"{datetime.now()}: receive audio data")