diff --git a/Cmd.ino b/Cmd.ino index 6e1b58a1..9001fb42 100644 --- a/Cmd.ino +++ b/Cmd.ino @@ -107,8 +107,8 @@ void button() { digitalWrite(button_param.toInt(), start_state.toInt()); } - if (button_param == "scenario") { - jsonWriteStr(configSetup, "scenario", start_state); + if (button_param == "scen") { + jsonWriteStr(configSetup, "scen", start_state); Scenario_init(); saveConfig(); } @@ -135,12 +135,12 @@ void buttonSet() { String button_state = sCmd.next(); String button_param = jsonReadStr(optionJson, "button_param" + button_number); - if (button_param != "na" || button_param != "scenario" || button_param.indexOf("line") != -1) { + if (button_param != "na" || button_param != "scen" || button_param.indexOf("line") != -1) { digitalWrite(button_param.toInt(), button_state.toInt()); } - if (button_param == "scenario") { - jsonWriteStr(configSetup, "scenario", button_state); + if (button_param == "scen") { + jsonWriteStr(configSetup, "scen", button_state); Scenario_init(); saveConfig(); } diff --git a/Init.ino b/Init.ino index 49922054..4465b97f 100644 --- a/Init.ino +++ b/Init.ino @@ -1,50 +1,11 @@ void All_init() { - - server.on("/init", HTTP_GET, [](AsyncWebServerRequest * request) { - String value; - if (request->hasArg("arg")) { - value = request->getParam("arg")->value(); - } - if (value == "0") { //выкл сценариев - jsonWriteStr(configSetup, "scenario", value); - saveConfig(); - Scenario_init(); - request->send(200, "text/text", "OK"); - } - if (value == "1") { //вкл сценариев - jsonWriteStr(configSetup, "scenario", value); - saveConfig(); - Scenario_init(); - request->send(200, "text/text", "OK"); - } - if (value == "2") { //инициализация - Device_init(); - request->send(200, "text/text", "OK"); - } - if (value == "3") { -#ifdef logging_enable - clean_log_date(); -#endif - request->send(200, "text/text", "OK"); - } - if (value == "4") { - Scenario_init(); - request->send(200, "text/text", "OK"); - } - if (value == "5") { - i2c_scanning = true; - request->redirect("/?utilities"); - } - }); - - prsets_init(); Device_init(); Scenario_init(); Timer_countdown_init(); } void Device_init() { - + logging_value_names_list = ""; enter_to_logging_counter = LOG1 - 1; @@ -86,99 +47,11 @@ void Device_init() { //-------------------------------сценарии----------------------------------------------------- void Scenario_init() { - if (jsonReadStr(configSetup, "scenario") == "1") { + if (jsonReadStr(configSetup, "scen") == "1") { scenario = readFile("firmware.s.txt", 2048); } } -void prsets_init() { - server.on("/preset", HTTP_GET, [](AsyncWebServerRequest * request) { - String value; - if (request->hasArg("arg")) { - value = request->getParam("arg")->value(); - } - if (value == "1") { - writeFile("firmware.c.txt", readFile("configs/relay.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/relay.s.txt", 2048)); - } - if (value == "2") { - writeFile("firmware.c.txt", readFile("configs/relay_t.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/relay_t.s.txt", 2048)); - } - if (value == "3") { - writeFile("firmware.c.txt", readFile("configs/relay_c.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/relay_c.s.txt", 2048)); - } - if (value == "4") { - writeFile("firmware.c.txt", readFile("configs/relay_s.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/relay_s.s.txt", 2048)); - } - if (value == "5") { - writeFile("firmware.c.txt", readFile("configs/relay_sw.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/relay_sw.s.txt", 2048)); - } - if (value == "6") { - writeFile("firmware.c.txt", readFile("configs/relay_br.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/relay_br.s.txt", 2048)); - } - if (value == "7") { - writeFile("firmware.c.txt", readFile("configs/relay_sr.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/relay_sr.s.txt", 2048)); - } - if (value == "8") { - writeFile("firmware.c.txt", readFile("configs/pwm.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/pwm.s.txt", 2048)); - } - if (value == "9") { - writeFile("firmware.c.txt", readFile("configs/dht11.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/dht11.s.txt", 2048)); - } - if (value == "10") { - writeFile("firmware.c.txt", readFile("configs/dht22.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/dht22.s.txt", 2048)); - } - if (value == "11") { - writeFile("firmware.c.txt", readFile("configs/analog.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/analog.s.txt", 2048)); - } - if (value == "12") { - writeFile("firmware.c.txt", readFile("configs/dallas.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/dallas.s.txt", 2048)); - } - if (value == "13") { - writeFile("firmware.c.txt", readFile("configs/termostat.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/termostat.s.txt", 2048)); - } - if (value == "14") { - writeFile("firmware.c.txt", readFile("configs/level.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/level.s.txt", 2048)); - } - if (value == "15") { - writeFile("firmware.c.txt", readFile("configs/moution_r.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/moution_r.s.txt", 2048)); - } - if (value == "16") { - writeFile("firmware.c.txt", readFile("configs/moution_s.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/moution_s.s.txt", 2048)); - } - if (value == "17") { - writeFile("firmware.c.txt", readFile("configs/stepper.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/stepper.s.txt", 2048)); - } - if (value == "18") { - writeFile("firmware.c.txt", readFile("configs/servo.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/servo.s.txt", 2048)); - } - if (value == "19") { - writeFile("firmware.c.txt", readFile("configs/firmware.c.txt", 2048)); - writeFile("firmware.s.txt", readFile("configs/firmware.s.txt", 2048)); - } - Device_init(); - Scenario_init(); - request->redirect("/?configuration"); - }); -} - void up_time() { uint32_t ss = millis() / 1000; uint32_t mm = ss / 60; diff --git a/Scenario.ino b/Scenario.ino index 52828b79..8422b0fa 100644 --- a/Scenario.ino +++ b/Scenario.ino @@ -1,6 +1,6 @@ void handleScenario() { - if (jsonReadStr(configSetup, "scenario") == "1") { + if (jsonReadStr(configSetup, "scen") == "1") { if ((jsonReadStr(optionJson, "scenario_status") != "")) { int i = 0; String str = scenario; //читаем переменную с сценариями (то что из файла на странице) @@ -73,7 +73,7 @@ void handleScenario() { void eventGen (String event_name, String number) { //событие выглядит как имя плюс set плюс номер: button+Set+1 - if (jsonReadStr(configSetup, "scenario") == "1") { + if (jsonReadStr(configSetup, "scen") == "1") { String tmp = jsonReadStr(optionJson, "scenario_status") ; //генерирование события //Serial.println(event_name); jsonWriteStr(optionJson, "scenario_status", tmp + event_name + number + ","); diff --git a/Time.ino b/Time.ino index 365d40e4..b1fc9b66 100644 --- a/Time.ino +++ b/Time.ino @@ -1,16 +1,4 @@ void Time_Init() { - server.on("/time", HTTP_GET, [](AsyncWebServerRequest * request) { - if (request->hasArg("timezone")) { - jsonWriteStr(configSetup, "timezone", request->getParam("timezone")->value()); - } - if (request->hasArg("ntp")) { - jsonWriteStr(configSetup, "ntp", request->getParam("ntp")->value()); - } - saveConfig(); - reconfigTime(); - request->send(200, "text/text", "OK"); // отправляем ответ о выполнении - }); - ts.add(TIME_SYNC, 30000, [&](void*) { time_check(); }, nullptr, true); @@ -24,11 +12,11 @@ void time_check() { } void reconfigTime() { - if (WiFi.status() == WL_CONNECTED) { + if (WiFi.status() == WL_CONNECTED) { String ntp = jsonReadStr(configSetup, "ntp"); - configTime(0, 0, ntp.c_str()); + configTime(0, 0, ntp.c_str()); int i = 0; - Serial.println("[i] Awaiting for time "); + Serial.println("[i] Awaiting for time "); #ifdef ESP32 struct tm timeinfo; while (!getLocalTime(&timeinfo) && i <= 4) { @@ -41,7 +29,7 @@ void reconfigTime() { //while (!time(nullptr) && i < 4) { // Serial.print("."); // i++; - delay(2000); + delay(2000); //} #endif if (GetTimeUnix() != "failed") { diff --git a/Upgrade.ino b/Upgrade.ino index f576bfe6..6154acfe 100644 --- a/Upgrade.ino +++ b/Upgrade.ino @@ -1,5 +1,4 @@ void initUpgrade() { - #ifdef ESP8266 if (WiFi.status() == WL_CONNECTED) last_version = getURL("http://91.204.228.124:1100/update/esp8266/version.txt"); #endif @@ -9,47 +8,6 @@ void initUpgrade() { jsonWriteStr(configSetup, "last_version", last_version); Serial.print("[i] Last firmware version: "); Serial.println(last_version); - - server.on("/check", HTTP_GET, [](AsyncWebServerRequest * request) { - upgrade_url = true; - Serial.print("[i] Last firmware version: "); - Serial.println(last_version); - String tmp = "{}"; - if (WiFi.status() == WL_CONNECTED) { - if (mb_4_of_memory) { - if (last_version != "") { - if (last_version != "error") { - if (last_version == firmware_version) { - jsonWriteStr(tmp, "title", "Последняя версия прошивки уже установлена."); - jsonWriteStr(tmp, "class", "pop-up"); - } else { - jsonWriteStr(tmp, "title", "Имеется новая версия прошивкиИдет обновление прошивки, после обновления страница перезагрузится автоматически...')\">Установить"); - jsonWriteStr(tmp, "class", "pop-up"); - } - } else { - jsonWriteStr(tmp, "title", "Ошибка... Cервер не найден. Попробуйте позже..."); - jsonWriteStr(tmp, "class", "pop-up"); - } - } else { - jsonWriteStr(tmp, "title", "Нажмите на кнопку \"обновить прошивку\" повторно..."); - jsonWriteStr(tmp, "class", "pop-up"); - } - } else { - jsonWriteStr(tmp, "title", "Обновление по воздуху не поддерживается, модуль имеет меньше 4 мб памяти..."); - jsonWriteStr(tmp, "class", "pop-up"); - } - } else { - jsonWriteStr(tmp, "title", "Устройство не подключен к роутеру..."); - jsonWriteStr(tmp, "class", "pop-up"); - } - request->send(200, "text/text", tmp); - }); - - server.on("/upgrade", HTTP_GET, [](AsyncWebServerRequest * request) { - upgrade = true; - String tmp = "{}"; - request->send(200, "text/text", "ok"); - }); } void do_upgrade_url() { diff --git a/Web.ino b/Web.ino new file mode 100644 index 00000000..fc4c9b11 --- /dev/null +++ b/Web.ino @@ -0,0 +1,315 @@ +void web_init() { + /****************************************************************************** + **********************************INITIALIZATION******************************* + ******************************************************************************/ + server.on("/set", HTTP_GET, [](AsyncWebServerRequest * request) { + String value; + //============================device settings===================================== + if (request->hasArg("devinit")) { + Device_init(); + request->send(200, "text/text", "OK"); + } + + if (request->hasArg("scen")) { + value = request->getParam("scen")->value(); + if (value == "0") { + jsonWriteStr(configSetup, "scen", value); + saveConfig(); + Scenario_init(); + } + if (value == "1") { + jsonWriteStr(configSetup, "scen", value); + saveConfig(); + Scenario_init(); + } + request->send(200, "text/text", "OK"); + } + + if (request->hasArg("sceninit")) { + Scenario_init(); + request->send(200, "text/text", "OK"); + } + + if (request->hasArg("cleanlog")) { +#ifdef logging_enable + clean_log_date(); +#endif + } + //==============================udp settings============================================= + if (request->hasArg("udponoff")) { + value = request->getParam("udponoff")->value(); + if (value == "0") { + jsonWriteStr(configSetup, "udponoff", value); + saveConfig(); + Scenario_init(); + } + if (value == "1") { + jsonWriteStr(configSetup, "udponoff", value); + saveConfig(); + Scenario_init(); + } + request->send(200, "text/text", "OK"); + } + + if (request->hasArg("updatelist")) { + SPIFFS.remove("/dev.csv"); + addFile("dev.csv", "device id;device name;ip address"); + request->redirect("/?set.udp"); + } + + if (request->hasArg("updatepage")) { + request->redirect("/?set.udp"); + } + + + + + /*if (value == "5") { + i2c_scanning = true; + request->redirect("/?utilities"); + }*/ + + /*if (value == "2") { + mqtt_send_settings_to_udp = true; + request->send(200, "text/text", "ok"); + }*/ + }); + /****************************************************************************** + **********************************TIME***************************************** + ******************************************************************************/ + server.on("/time", HTTP_GET, [](AsyncWebServerRequest * request) { + if (request->hasArg("timezone")) { + jsonWriteStr(configSetup, "timezone", request->getParam("timezone")->value()); + } + if (request->hasArg("ntp")) { + jsonWriteStr(configSetup, "ntp", request->getParam("ntp")->value()); + } + saveConfig(); + reconfigTime(); + request->send(200, "text/text", "OK"); // отправляем ответ о выполнении + }); + /****************************************************************************** + **********************************UPDATE*************************************** + ******************************************************************************/ + server.on("/check", HTTP_GET, [](AsyncWebServerRequest * request) { + upgrade_url = true; + Serial.print("[i] Last firmware version: "); + Serial.println(last_version); + String tmp = "{}"; + if (WiFi.status() == WL_CONNECTED) { + if (mb_4_of_memory) { + if (last_version != "") { + if (last_version != "error") { + if (last_version == firmware_version) { + jsonWriteStr(tmp, "title", "Последняя версия прошивки уже установлена."); + jsonWriteStr(tmp, "class", "pop-up"); + } else { + jsonWriteStr(tmp, "title", "Имеется новая версия прошивкиИдет обновление прошивки, после обновления страница перезагрузится автоматически...')\">Установить"); + jsonWriteStr(tmp, "class", "pop-up"); + } + } else { + jsonWriteStr(tmp, "title", "Ошибка... Cервер не найден. Попробуйте позже..."); + jsonWriteStr(tmp, "class", "pop-up"); + } + } else { + jsonWriteStr(tmp, "title", "Нажмите на кнопку \"обновить прошивку\" повторно..."); + jsonWriteStr(tmp, "class", "pop-up"); + } + } else { + jsonWriteStr(tmp, "title", "Обновление по воздуху не поддерживается, модуль имеет меньше 4 мб памяти..."); + jsonWriteStr(tmp, "class", "pop-up"); + } + } else { + jsonWriteStr(tmp, "title", "Устройство не подключен к роутеру..."); + jsonWriteStr(tmp, "class", "pop-up"); + } + request->send(200, "text/text", tmp); + }); + + server.on("/upgrade", HTTP_GET, [](AsyncWebServerRequest * request) { + upgrade = true; + String tmp = "{}"; + request->send(200, "text/text", "ok"); + }); + /****************************************************************************** + **********************************WIFI***************************************** + ******************************************************************************/ + server.on("/ssid", HTTP_GET, [](AsyncWebServerRequest * request) { + if (request->hasArg("ssid")) { + jsonWriteStr(configSetup, "ssid", request->getParam("ssid")->value()); + } + if (request->hasArg("password")) { + jsonWriteStr(configSetup, "password", request->getParam("password")->value()); + } + saveConfig(); + request->send(200, "text/text", "OK"); + }); + server.on("/ssidap", HTTP_GET, [](AsyncWebServerRequest * request) { + if (request->hasArg("ssidAP")) { + jsonWriteStr(configSetup, "ssidAP", request->getParam("ssidAP")->value()); + } + if (request->hasArg("passwordAP")) { + jsonWriteStr(configSetup, "passwordAP", request->getParam("passwordAP")->value()); + } + saveConfig(); + request->send(200, "text/text", "OK"); + }); + server.on("/web", HTTP_GET, [](AsyncWebServerRequest * request) { + if (request->hasArg("web_login")) { + jsonWriteStr(configSetup, "web_login", request->getParam("web_login")->value()); + } + if (request->hasArg("web_pass")) { + jsonWriteStr(configSetup, "web_pass", request->getParam("web_pass")->value()); + } + saveConfig(); + //Web_server_init(); + request->send(200, "text/text", "OK"); + }); + server.on("/restart", HTTP_GET, [](AsyncWebServerRequest * request) { + if (request->hasArg("device")) { + if (request->getParam("device")->value() == "ok") ESP.restart(); + } + request->send(200, "text/text", "OK"); + }); + /****************************************************************************** + **********************************MQTT**************************************** + ******************************************************************************/ + server.on("/mqttSave", HTTP_GET, [](AsyncWebServerRequest * request) { + if (request->hasArg("mqttServer")) { + jsonWriteStr(configSetup, "mqttServer", request->getParam("mqttServer")->value()); + } + if (request->hasArg("mqttPort")) { + int port = (request->getParam("mqttPort")->value()).toInt(); + jsonWriteInt(configSetup, "mqttPort", port); + } + if (request->hasArg("mqttPrefix")) { + jsonWriteStr(configSetup, "mqttPrefix", request->getParam("mqttPrefix")->value()); + } + if (request->hasArg("mqttUser")) { + jsonWriteStr(configSetup, "mqttUser", request->getParam("mqttUser")->value()); + } + if (request->hasArg("mqttPass")) { + jsonWriteStr(configSetup, "mqttPass", request->getParam("mqttPass")->value()); + } + saveConfig(); + mqtt_connection = true; + request->send(200, "text/text", "ok"); + }); + server.on("/mqttCheck", HTTP_GET, [](AsyncWebServerRequest * request) { + String tmp = "{}"; + jsonWriteStr(tmp, "title", "" + stateMQTT()); + jsonWriteStr(tmp, "class", "pop-up"); + request->send(200, "text/text", tmp); + }); + /****************************************************************************** + **********************************PUSH***************************************** + ******************************************************************************/ +#ifdef push_enable + server.on("/pushingboxDate", HTTP_GET, [](AsyncWebServerRequest * request) { + if (request->hasArg("pushingbox_id")) { + jsonWriteStr(configSetup, "pushingbox_id", request->getParam("pushingbox_id")->value()); + } + saveConfig(); + request->send(200, "text/text", "ok"); + }); +#endif + /****************************************************************************** + **********************************PRESETS************************************** + ******************************************************************************/ + server.on("/preset", HTTP_GET, [](AsyncWebServerRequest * request) { + String value; + if (request->hasArg("arg")) { + value = request->getParam("arg")->value(); + } + if (value == "1") { + writeFile("firmware.c.txt", readFile("configs/relay.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/relay.s.txt", 2048)); + } + if (value == "2") { + writeFile("firmware.c.txt", readFile("configs/relay_t.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/relay_t.s.txt", 2048)); + } + if (value == "3") { + writeFile("firmware.c.txt", readFile("configs/relay_c.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/relay_c.s.txt", 2048)); + } + if (value == "4") { + writeFile("firmware.c.txt", readFile("configs/relay_s.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/relay_s.s.txt", 2048)); + } + if (value == "5") { + writeFile("firmware.c.txt", readFile("configs/relay_sw.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/relay_sw.s.txt", 2048)); + } + if (value == "6") { + writeFile("firmware.c.txt", readFile("configs/relay_br.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/relay_br.s.txt", 2048)); + } + if (value == "7") { + writeFile("firmware.c.txt", readFile("configs/relay_sr.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/relay_sr.s.txt", 2048)); + } + if (value == "8") { + writeFile("firmware.c.txt", readFile("configs/pwm.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/pwm.s.txt", 2048)); + } + if (value == "9") { + writeFile("firmware.c.txt", readFile("configs/dht11.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/dht11.s.txt", 2048)); + } + if (value == "10") { + writeFile("firmware.c.txt", readFile("configs/dht22.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/dht22.s.txt", 2048)); + } + if (value == "11") { + writeFile("firmware.c.txt", readFile("configs/analog.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/analog.s.txt", 2048)); + } + if (value == "12") { + writeFile("firmware.c.txt", readFile("configs/dallas.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/dallas.s.txt", 2048)); + } + if (value == "13") { + writeFile("firmware.c.txt", readFile("configs/termostat.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/termostat.s.txt", 2048)); + } + if (value == "14") { + writeFile("firmware.c.txt", readFile("configs/level.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/level.s.txt", 2048)); + } + if (value == "15") { + writeFile("firmware.c.txt", readFile("configs/moution_r.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/moution_r.s.txt", 2048)); + } + if (value == "16") { + writeFile("firmware.c.txt", readFile("configs/moution_s.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/moution_s.s.txt", 2048)); + } + if (value == "17") { + writeFile("firmware.c.txt", readFile("configs/stepper.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/stepper.s.txt", 2048)); + } + if (value == "18") { + writeFile("firmware.c.txt", readFile("configs/servo.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/servo.s.txt", 2048)); + } + if (value == "19") { + writeFile("firmware.c.txt", readFile("configs/firmware.c.txt", 2048)); + writeFile("firmware.s.txt", readFile("configs/firmware.s.txt", 2048)); + } + Device_init(); + Scenario_init(); + request->redirect("/?configuration"); + }); + /****************************************************************************** + **********************************UDP****************************************** + ******************************************************************************/ + server.on("/name", HTTP_GET, [](AsyncWebServerRequest * request) { + if (request->hasArg("arg")) { + jsonWriteStr(configSetup, "name", request->getParam("arg")->value()); + jsonWriteStr(configJson, "name", request->getParam("arg")->value()); + saveConfig(); + } + request->send(200, "text/text", "OK"); + }); +} diff --git a/WiFi.ino b/WiFi.ino index 501e5a8f..a4af35cd 100644 --- a/WiFi.ino +++ b/WiFi.ino @@ -1,54 +1,7 @@ -void WIFI_init() { - - // --------------------Получаем ssid password со страницы - server.on("/ssid", HTTP_GET, [](AsyncWebServerRequest * request) { - if (request->hasArg("ssid")) { - jsonWriteStr(configSetup, "ssid", request->getParam("ssid")->value()); - } - if (request->hasArg("password")) { - jsonWriteStr(configSetup, "password", request->getParam("password")->value()); - } - saveConfig(); // Функция сохранения данных во Flash - request->send(200, "text/text", "OK"); // отправляем ответ о выполнении - }); - // --------------------Получаем ssidAP passwordAP со страницы - server.on("/ssidap", HTTP_GET, [](AsyncWebServerRequest * request) { - if (request->hasArg("ssidAP")) { - jsonWriteStr(configSetup, "ssidAP", request->getParam("ssidAP")->value()); - } - if (request->hasArg("passwordAP")) { - jsonWriteStr(configSetup, "passwordAP", request->getParam("passwordAP")->value()); - } - saveConfig(); // Функция сохранения данных во Flash - request->send(200, "text/text", "OK"); // отправляем ответ о выполнении - }); - - // --------------------Получаем логин и пароль для web со страницы - server.on("/web", HTTP_GET, [](AsyncWebServerRequest * request) { - if (request->hasArg("web_login")) { - jsonWriteStr(configSetup, "web_login", request->getParam("web_login")->value()); - } - if (request->hasArg("web_pass")) { - jsonWriteStr(configSetup, "web_pass", request->getParam("web_pass")->value()); - } - saveConfig(); // Функция сохранения данных во Flash - //Web_server_init(); - request->send(200, "text/text", "OK"); // отправляем ответ о выполнении - }); - - server.on("/restart", HTTP_GET, [](AsyncWebServerRequest * request) { - if (request->hasArg("device")) { - if (request->getParam("device")->value() == "ok") ESP.restart(); - } - request->send(200, "text/text", "OK"); // отправляем ответ о выполнении - }); - ROUTER_Connecting(); -} - void ROUTER_Connecting() { - - led_blink("slow"); + led_blink("slow"); + WiFi.mode(WIFI_STA); byte tries = 20; @@ -94,11 +47,9 @@ void ROUTER_Connecting() { Serial.print(WiFi.localIP()); Serial.println(""); jsonWriteStr(configJson, "ip", WiFi.localIP().toString()); - led_blink("off"); - //add_dev_in_list("dev.txt", chipID, WiFi.localIP().toString()); - + MQTT_init(); } } @@ -117,17 +68,16 @@ bool StartAPMode() { Serial.println(myIP); jsonWriteStr(configJson, "ip", myIP.toString()); - if (jsonReadInt(optionJson, "pass_status") != 1) { + //if (jsonReadInt(optionJson, "pass_status") != 1) { ts.add(ROUTER_SEARCHING, 10 * 1000, [&](void*) { Serial.println("->try find router"); if (RouterFind(jsonReadStr(configSetup, "ssid"))) { ts.remove(ROUTER_SEARCHING); WiFi.scanDelete(); ROUTER_Connecting(); - MQTT_init(); } }, nullptr, true); - } + //} return true; } diff --git a/data/config.json b/data/config.json index 180bdcd3..c78bdfd1 100644 --- a/data/config.json +++ b/data/config.json @@ -3,8 +3,8 @@ "chipID": "", "ssidAP": "WiFi2", "passwordAP": "", - "ssid": "rise", - "password": "hostel3333", + "ssid": "VOLODYA", + "password": "BELCHENKO", "timezone": 2, "ntp": "pool.ntp.org", "mqttServer": "91.204.228.124", @@ -12,7 +12,7 @@ "mqttPrefix": "/rise", "mqttUser": "test", "mqttPass": "test", - "scenario": "1", + "scen": "1", "pushingbox_id": "v7C133E426B0C69E", "web_login": "admin", "web_pass": "admin", diff --git a/data/index.json b/data/index.json index 26adcc1a..2f430b87 100644 --- a/data/index.json +++ b/data/index.json @@ -41,8 +41,8 @@ { "type": "link", "title": "Конфигурация устройства", - "action": "/?configuration", - "class": "btn btn-block btn-primary" + "action": "/?set.device", + "class": "btn btn-block btn-default" }, { "type": "hr" @@ -50,32 +50,32 @@ { "type": "link", "title": "Список других устройств в сети", - "action": "/?dev", - "class": "btn btn-block btn-success" + "action": "/?set.udp", + "class": "btn btn-block btn-default" }, { "type": "link", "title": "Конфигурация WIFI", - "action": "/?setup", - "class": "btn btn-block btn-success" + "action": "/?set.wifi", + "class": "btn btn-block btn-default" }, { "type": "link", "title": "Конфигурация MQTT", - "action": "/?mqtt", - "class": "btn btn-block btn-success" + "action": "/?set.mqtt", + "class": "btn btn-block btn-default" }, { "type": "link", "title": "Конфигурация push", - "action": "/?pushingbox", - "class": "btn btn-block btn-success" + "action": "/?set.push", + "class": "btn btn-block btn-default" }, { "type": "link", "title": "Утилиты", - "action": "/?utilities", - "class": "btn btn-block btn-success" + "action": "/?set.utilities", + "class": "btn btn-block btn-default" }, { "type": "h3", @@ -91,7 +91,7 @@ "title": "Обновить прошивку", "action": "/check", "response": "[[my-block]]", - "class": "btn btn-block btn-danger" + "class": "btn btn-block btn-default" }, { "type": "hr" @@ -100,13 +100,13 @@ "type": "link", "title": "Скачать приложение IoT Manager для android", "action": "https://play.google.com/store/apps/details?id=ru.esp8266.iotmanager", - "class": "btn btn-block btn-warning" + "class": "btn btn-block btn-default" }, { "type": "link", "title": "Скачать приложение IoT Manager для iphone", "action": "https://apps.apple.com/ru/app/iot-manager/id1155934877", - "class": "btn btn-block btn-warning" + "class": "btn btn-block btn-default" } ] } diff --git a/data/lang/lang.ru.json b/data/lang/lang.ru.json new file mode 100644 index 00000000..881f9556 --- /dev/null +++ b/data/lang/lang.ru.json @@ -0,0 +1,6 @@ +{ + "SetDevConf": "Конфигурация устройства", + "SetDevPreset": "Выберите из выпадающего списка подходящий пресет кофигураций", + "SetUDPList": "Список других устройств в сети:", + "SetUDPWarn1": "После нажатия на кнопку 'Переформировать список устройств' ждите примерно минуту, а затем обновите страницу и список появится вновь" +} \ No newline at end of file diff --git a/data/configuration.json b/data/set.device.json similarity index 85% rename from data/configuration.json rename to data/set.device.json index fb4381dd..99b9cee8 100644 --- a/data/configuration.json +++ b/data/set.device.json @@ -2,7 +2,8 @@ "configs": [ "/config.live.json", "/config.setup.json", - "/config.option.json" + "/config.option.json", + "/lang/lang.ru.json" ], "class": "col-sm-offset-1 col-sm-10", "content": [ @@ -33,10 +34,10 @@ { "type": "dropdown", "name": "help-url", - "class": "btn btn-warning btn-lg", + "class": "btn btn-default", "style": "display:inline", "title": { - "#": "Выбирите то, во что Вы хотите превратить это устройство ", + "#": "{{SetDevPreset}}", "/preset?arg=1": "1.Вкл. выкл. локального реле", "/preset?arg=2": "2.Вкл. выкл. локального реле в определенное время", "/preset?arg=3": "3.Вкл. выкл. локального реле на определенный период времени", @@ -60,21 +61,21 @@ }, { "type": "h2", - "title": "Конфигурация устройства" + "title": "{{SetDevConf}}" }, { "type": "file", "state": "firmware.c.txt", "style": "width:100%;height:400px", "title": "Сохранить", - "action": "/init?arg=2", - "class": "btn btn-block btn-success" + "action": "/set?devinit", + "class": "btn btn-block btn-default" }, { "type": "link", - "title": "Подробная инструкция", + "title": "Инструкция", "action": "https://github.com/DmitryBorisenko33/esp32-esp8266_iot-manager_modules_firmware/wiki/Instruction", - "class": "btn btn-block btn-primary" + "class": "btn btn-block btn-default" }, { "type": "h2", @@ -82,21 +83,17 @@ }, { "type": "checkbox", - "name": "scenario", + "name": "scen", "title": "Включить сценарии", - "action": "/init?arg=[[scenario]]", - "state": "{{scenario}}" - }, - { - "type": "h6", - "title": "" + "action": "/set?scen=[[scen]]", + "state": "{{scen}}" }, { "type": "file", "state": "firmware.s.txt", "style": "width:100%;height:400px", "title": "Сохранить", - "action": "/init?arg=4", + "action": "/set?sceninit", "class": "btn btn-block btn-success" }, { @@ -105,7 +102,7 @@ { "type": "link", "title": "Очистить логи сенсоров", - "action": "/init?arg=3", + "action": "/set?cleanlog", "class": "btn btn-block btn-success" }, { diff --git a/data/mqtt.json b/data/set.mqtt.json similarity index 100% rename from data/mqtt.json rename to data/set.mqtt.json diff --git a/data/pushingbox.json b/data/set.push.json similarity index 100% rename from data/pushingbox.json rename to data/set.push.json diff --git a/data/dev.json b/data/set.udp.json similarity index 69% rename from data/dev.json rename to data/set.udp.json index 9b474644..d65056dd 100644 --- a/data/dev.json +++ b/data/set.udp.json @@ -1,7 +1,8 @@ { "configs": [ "/config.live.json", - "/config.setup.json" + "/config.setup.json", + "/lang/lang.ru.json" ], "title": "Главная", "class": "col-sm-offset-1 col-sm-10 col-md-offset-2 col-md-8 col-lg-offset-3 col-lg-6", @@ -13,7 +14,7 @@ }, { "type": "h3", - "title": "Список других устройств в сети:" + "title": "{{SetUDPList}}" }, { "type": "hr" @@ -35,22 +36,22 @@ { "type": "link", "title": "Переформировать список устройств", - "action": "udp?arg=3", - "class": "btn btn-block btn-success" + "action": "set?updatelist", + "class": "btn btn-block btn-default" }, { "type": "link", "title": "Обновить страницу", - "action": "udp?arg=4", - "class": "btn btn-block btn-success" + "action": "set?updatepage", + "class": "btn btn-block btn-default" }, { "type": "hr" }, { "type": "text", - "class": "alert alert-warning", - "title": "После нажатия на кнопку 'Переформировать список устройств' ждите примерно минуту, а затем обновите страницу и список появится вновь" + "title": "
{{SetUDPWarn1}}