From ec949435ee3335906cc04aaca8ed3c4caf1f7c11 Mon Sep 17 00:00:00 2001 From: IrvingGao <1729854488@qq.com> Date: Mon, 17 Jun 2024 16:31:48 +0800 Subject: [PATCH] [wifi] connecting loop --- wifi_manager.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/wifi_manager.py b/wifi_manager.py index f9a0457..aed264c 100644 --- a/wifi_manager.py +++ b/wifi_manager.py @@ -182,12 +182,27 @@ def check_wifi_connection(): return True, wifi_ssid elif len(columns) >= 4 and columns[2] == "connecting": wifi_ssid = columns[4] + check_connecting_loop() if led_enabled: orangepi.set_led_on('blue') - logging.info(f"Wi-Fi connected: {wifi_ssid}") + logging.info(f"Wi-Fi connecting: {wifi_ssid}") return True, wifi_ssid return False, None +def check_connecting_loop(): + connecting = True + while connecting: + cmd = "nmcli dev status" + result = subprocess.run(cmd, shell=True, capture_output=True, text=True) + output = result.stdout.strip() + lines = output.split("\n")[1:] # Skip the header line + for line in lines: + columns = line.split() + if len(columns) >= 4 and columns[2] == "connected": + wifi_ssid = columns[3] + connecting = False + break + def get_known_wifi(): # 定义一个空列表来存储解析后的连接信息 connections = []