From f365b6a515b3b1b5125277a66256cccd551400e3 Mon Sep 17 00:00:00 2001 From: Abdullah Gohar Date: Sun, 14 Apr 2024 07:50:03 +0500 Subject: [PATCH] Fixed non-connection issue --- software/source/clients/base_device.py | 15 +++++++++++++-- software/start.py | 6 ++++++ 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/software/source/clients/base_device.py b/software/source/clients/base_device.py index a614498..5d60c50 100644 --- a/software/source/clients/base_device.py +++ b/software/source/clients/base_device.py @@ -3,6 +3,7 @@ from dotenv import load_dotenv load_dotenv() # take environment variables from .env. import os +import sys import asyncio import threading import pyaudio @@ -58,7 +59,17 @@ CAMERA_WARMUP_SECONDS = float(os.getenv("CAMERA_WARMUP_SECONDS", 0)) # Specify OS current_platform = get_system_info() -is_win10 = lambda: platform.system() == "Windows" and "10" in platform.version() + +def is_win11(): + return sys.getwindowsversion().build >= 22000 + +def is_win10(): + try: + return platform.system() == "Windows" and "10" in platform.version() and not is_win11() + except: + return False + +print(platform.system(), platform.version()) # Initialize PyAudio p = pyaudio.PyAudio() @@ -359,7 +370,7 @@ class Device: code = message["content"] result = interpreter.computer.run(language, code) send_queue.put(result) - + if is_win10(): logger.info("Windows 10 detected") # Workaround for Windows 10 not latching to the websocket server. diff --git a/software/start.py b/software/start.py index 4f3377f..6016d17 100644 --- a/software/start.py +++ b/software/start.py @@ -122,6 +122,10 @@ def _run( # llm_service = "llamafile" stt_service = "local-whisper" select_local_model() + + system_type = platform.system() + if system_type == "Windows": + server_host = "localhost" if not server_url: server_url = f"{server_host}:{server_port}" @@ -129,6 +133,8 @@ def _run( if not server and not client: server = True client = True + + def handle_exit(signum, frame): os._exit(0)