mirror of
https://github.com/xinnan-tech/xiaozhi-esp32-server.git
synced 2026-07-30 02:43:56 +08:00
update:前端增加可配置的本地唤醒词运行时
This commit is contained in:
@@ -19,12 +19,9 @@ class WakewordEventBridge:
|
||||
return self._running
|
||||
|
||||
def build_ready_message(self) -> str:
|
||||
return json.dumps(
|
||||
{
|
||||
"type": "bridge_connected",
|
||||
"payload": {"status": "ready"},
|
||||
},
|
||||
ensure_ascii=False,
|
||||
return self.build_message(
|
||||
"bridge_connected",
|
||||
{"status": "ready"},
|
||||
)
|
||||
|
||||
def publish_detected(self, wake_word: str) -> None:
|
||||
@@ -40,13 +37,7 @@ class WakewordEventBridge:
|
||||
if not self._running:
|
||||
return
|
||||
|
||||
message = json.dumps(
|
||||
{
|
||||
"type": event_type,
|
||||
"payload": payload or {},
|
||||
},
|
||||
ensure_ascii=False,
|
||||
)
|
||||
message = self.build_message(event_type, payload or {})
|
||||
with self._clients_lock:
|
||||
clients = list(self._clients)
|
||||
|
||||
@@ -69,6 +60,24 @@ class WakewordEventBridge:
|
||||
self._clients.append(client_queue)
|
||||
return client_queue
|
||||
|
||||
def build_message(
|
||||
self,
|
||||
event_type: str,
|
||||
payload: dict[str, Any] | None = None,
|
||||
request_id: str | None = None,
|
||||
success: bool = True,
|
||||
error: str | None = None,
|
||||
) -> str:
|
||||
message: dict[str, Any] = {
|
||||
"type": event_type,
|
||||
"requestId": request_id,
|
||||
"success": success,
|
||||
"payload": payload or {},
|
||||
}
|
||||
if error:
|
||||
message["error"] = error
|
||||
return json.dumps(message, ensure_ascii=False)
|
||||
|
||||
def remove_client(self, client_queue: queue.Queue[str]) -> None:
|
||||
with self._clients_lock:
|
||||
if client_queue in self._clients:
|
||||
|
||||
Reference in New Issue
Block a user