fix scanning wifi

This commit is contained in:
Mit4el
2025-03-17 00:32:18 +03:00
parent f254fbe7aa
commit 9dca608181
3 changed files with 33 additions and 13 deletions

View File

@@ -143,6 +143,10 @@ void webSocketEvent(uint8_t num, WStype_t type, uint8_t* payload, size_t length)
sendFileToWsByFrames("/widgets.json", "widget", "", num, WEB_SOCKETS_FRAME_SIZE);
sendFileToWsByFrames("/config.json", "config", "", num, WEB_SOCKETS_FRAME_SIZE);
sendStringToWs("settin", settingsFlashJson, num);
#ifndef ESP8266
ssidListHeapJson = "{}";
jsonWriteStr_(ssidListHeapJson, "0", "Scanning...");
#endif
sendStringToWs("ssidli", ssidListHeapJson, num);
sendStringToWs("errors", errorsHeapJson, num);
// запуск асинхронного сканирования wifi сетей при переходе на страницу
@@ -157,6 +161,12 @@ void webSocketEvent(uint8_t num, WStype_t type, uint8_t* payload, size_t length)
sendStringToWs("errors", errorsHeapJson, num);
// если не было создано приема данных по udp - то создадим его
addThisDeviceToList();
#ifndef ESP8266
settingsFlashJson = readFile(F("settings.json"), 4096);
settingsFlashJson.replace("\r\n", "");
Serial.println(settingsFlashJson);
WiFiUtilsItit();
#endif
}
// обработка кнопки сохранить настройки mqtt
@@ -173,17 +183,19 @@ void webSocketEvent(uint8_t num, WStype_t type, uint8_t* payload, size_t length)
// запуск асинхронного сканирования wifi сетей при нажатии выпадающего
// списка
if (headerStr == "/scan|") {
#ifdef ESP8266
std::vector<String> jArray;
jsonReadArray(settingsFlashJson, "routerssid", jArray);
#ifdef ESP8266
RouterFind(jArray);
sendStringToWs("ssidli", ssidListHeapJson, num);
#else
//String ssidScan = "{Scaning...}";
ssidListHeapJson = "{}";
jsonWriteStr_(ssidListHeapJson, "0", "Scaning...");
//ssidListHeapJson = "{}";
//jsonWriteStr_(ssidListHeapJson, "0", "Scanning...");
//Serial.println("Async scan:" + String(ssidListHeapJson));
sendStringToWs("ssidli", ssidListHeapJson, num);
ScanAsync();
if (ssidListHeapJson == "{\"0\":\"Scanning...\"}")
ScanAsync();
#endif
}