2020-09-02 22:34:49 +03:00
|
|
|
|
#include "Web.h"
|
2020-12-26 23:10:07 +01:00
|
|
|
|
|
2020-10-18 09:52:17 +03:00
|
|
|
|
#include "Class/NotAsync.h"
|
2020-09-02 22:34:49 +03:00
|
|
|
|
#include "Global.h"
|
|
|
|
|
|
#include "Init.h"
|
2020-09-17 21:33:54 +03:00
|
|
|
|
#include "ItemsList.h"
|
2020-11-21 06:03:02 +03:00
|
|
|
|
#include "RemoteOrdersUdp.h"
|
2020-12-06 02:08:37 +03:00
|
|
|
|
#include "SoftUART.h"
|
2020-12-26 23:10:07 +01:00
|
|
|
|
#include "Telegram.h"
|
|
|
|
|
|
#include "items/vLogging.h"
|
2020-09-02 22:34:49 +03:00
|
|
|
|
|
|
|
|
|
|
bool parseRequestForPreset(AsyncWebServerRequest* request, uint8_t& preset) {
|
|
|
|
|
|
if (request->hasArg("preset")) {
|
|
|
|
|
|
preset = request->getParam("preset")->value().toInt();
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void web_init() {
|
|
|
|
|
|
server.on("/set", HTTP_GET, [](AsyncWebServerRequest* request) {
|
|
|
|
|
|
//==============================set.device.json====================================================================================================
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("addItem"))) {
|
2020-12-22 12:38:05 +01:00
|
|
|
|
addItem2(request->getParam("addItem")->value().toInt());
|
2020-09-02 22:34:49 +03:00
|
|
|
|
request->redirect("/?set.device");
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("addPreset"))) {
|
|
|
|
|
|
addPreset2(request->getParam(F("addPreset"))->value().toInt());
|
2020-12-20 14:11:59 +01:00
|
|
|
|
|
2020-12-18 14:28:31 +01:00
|
|
|
|
jsonWriteStr(configSetupJson, F("warning1"), F("<div style='margin-top:10px;margin-bottom:10px;'><font color='black'><p style='border: 1px solid #DCDCDC; border-radius: 3px; background-color: #ffc7c7; padding: 10px;'>Требуется перезагрузка</p></font></div>"));
|
2020-12-20 14:11:59 +01:00
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
request->redirect(F("/?set.device"));
|
2020-11-03 00:04:07 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("delChoosingItems"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("warning1"), F("<div style='margin-top:10px;margin-bottom:10px;'><font color='black'><p style='border: 1px solid #DCDCDC; border-radius: 3px; background-color: #ffc7c7; padding: 10px;'>Требуется перезагрузка</p></font></div>"));
|
2020-10-18 09:52:17 +03:00
|
|
|
|
myNotAsyncActions->make(do_delChoosingItems);
|
2020-10-10 01:44:11 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("delAllItems"))) {
|
2020-09-02 22:34:49 +03:00
|
|
|
|
delAllItems();
|
2020-11-16 18:47:09 +03:00
|
|
|
|
cleanLogAndData();
|
2020-12-17 22:48:20 +01:00
|
|
|
|
jsonWriteStr(configSetupJson, F("warning1"), F("<div style='margin-top:10px;margin-bottom:10px;'><font color='black'><p style='border: 1px solid #DCDCDC; border-radius: 3px; background-color: #ffc7c7; padding: 10px;'>Требуется перезагрузка</p></font></div>"));
|
|
|
|
|
|
request->redirect(F("/?set.device"));
|
2020-09-02 22:34:49 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("saveItems"))) {
|
2020-10-18 09:52:17 +03:00
|
|
|
|
myNotAsyncActions->make(do_deviceInit);
|
2020-09-02 22:34:49 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-09-17 21:33:54 +03:00
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("scen"))) {
|
|
|
|
|
|
bool value = request->getParam(F("scen"))->value().toInt();
|
|
|
|
|
|
jsonWriteBool(configSetupJson, F("scen"), value);
|
2020-09-02 22:34:49 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
loadScenario();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-09-17 21:33:54 +03:00
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("sceninit"))) {
|
2020-09-02 22:34:49 +03:00
|
|
|
|
loadScenario();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-09-17 21:33:54 +03:00
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("MqttIn"))) {
|
|
|
|
|
|
bool value = request->getParam(F("MqttIn"))->value().toInt();
|
2020-12-11 17:37:29 +03:00
|
|
|
|
jsonWriteBool(configSetupJson, "MqttIn", value);
|
2020-11-21 06:03:02 +03:00
|
|
|
|
saveConfig();
|
2020-12-11 17:37:29 +03:00
|
|
|
|
mqtt.subscribe((mqttPrefix + "/+/+/event").c_str());
|
2020-12-02 04:12:10 +03:00
|
|
|
|
mqtt.subscribe((mqttPrefix + "/+/+/info").c_str());
|
2020-11-21 06:03:02 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("MqttOut"))) {
|
|
|
|
|
|
bool value = request->getParam(F("MqttOut"))->value().toInt();
|
|
|
|
|
|
jsonWriteBool(configSetupJson, F("MqttOut"), value);
|
2020-12-11 17:37:29 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("scenMqtt"))) {
|
2020-12-02 04:12:10 +03:00
|
|
|
|
myNotAsyncActions->make(do_sendScenMQTT);
|
2020-11-21 06:03:02 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("cleanlog"))) {
|
2020-11-15 02:46:27 +03:00
|
|
|
|
cleanLogAndData();
|
2020-09-02 22:34:49 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-09-17 21:33:54 +03:00
|
|
|
|
|
2020-09-02 22:34:49 +03:00
|
|
|
|
//==============================wifi settings=============================================
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("devname"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("name"), request->getParam(F("devname"))->value());
|
2020-10-04 02:45:26 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("routerssid"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("routerssid"), request->getParam(F("routerssid"))->value());
|
2020-09-02 22:34:49 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("routerpass"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("routerpass"), request->getParam(F("routerpass"))->value());
|
2020-09-02 22:34:49 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-09-17 21:33:54 +03:00
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("apssid"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("apssid"), request->getParam(F("apssid"))->value());
|
2020-09-02 22:34:49 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
request->send(200, "text/text", "OK");
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("appass"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("appass"), request->getParam(F("appass"))->value());
|
2020-09-02 22:34:49 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-09-17 21:33:54 +03:00
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("weblogin"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("weblogin"), request->getParam(F("weblogin"))->value());
|
2020-09-02 22:34:49 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("webpass"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("webpass"), request->getParam(F("webpass"))->value());
|
2020-09-02 22:34:49 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-09-17 21:33:54 +03:00
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("timezone"))) {
|
|
|
|
|
|
String timezoneStr = request->getParam(F("timezone"))->value();
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("timezone"), timezoneStr);
|
2020-09-02 22:34:49 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
timeNow->setTimezone(timezoneStr.toInt());
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("ntp"))) {
|
|
|
|
|
|
String ntpStr = request->getParam(F("ntp"))->value();
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("ntp"), ntpStr);
|
2020-09-02 22:34:49 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
timeNow->setNtpPool(ntpStr);
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-09-17 21:33:54 +03:00
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("blink"))) {
|
|
|
|
|
|
bool value = request->getParam(F("blink"))->value().toInt();
|
|
|
|
|
|
jsonWriteBool(configSetupJson, F("blink"), value);
|
2020-09-02 22:34:49 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-09-18 00:02:20 +03:00
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("reqReset"))) {
|
2020-12-11 17:37:29 +03:00
|
|
|
|
String tmp = "{}";
|
|
|
|
|
|
jsonWriteStr(tmp, "title", F("<button class=\"close\" onclick=\"toggle('reset-block')\">×</button>Вы действительно хотите перезагрузить устройство?<a href=\"#\" class=\"btn btn-block btn-danger\" onclick=\"send_request(this, '/set?reset');setTimeout(function(){ location.href='/?set.device'; }, 15000);html('reset-block','<span class=loader></span>Идет перезагрузка устройства')\">Перезагрузить</a>"));
|
|
|
|
|
|
jsonWriteStr(tmp, "class", "pop-up");
|
|
|
|
|
|
request->send(200, "text/html", tmp);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg(F("reset"))) {
|
2020-12-11 17:37:29 +03:00
|
|
|
|
ESP.restart();
|
2020-10-04 02:45:26 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2020-09-02 22:34:49 +03:00
|
|
|
|
//==============================mqtt settings=============================================
|
2020-12-18 21:48:06 +01:00
|
|
|
|
//primary
|
|
|
|
|
|
if (request->hasArg(F("mqttServer"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("mqttServer"), request->getParam(F("mqttServer"))->value());
|
2020-09-02 22:34:49 +03:00
|
|
|
|
saveConfig();
|
2020-10-18 09:52:17 +03:00
|
|
|
|
myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
|
2020-09-02 22:34:49 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-12-18 21:48:06 +01:00
|
|
|
|
if (request->hasArg(F("mqttPort"))) {
|
|
|
|
|
|
int port = (request->getParam(F("mqttPort"))->value()).toInt();
|
|
|
|
|
|
jsonWriteInt(configSetupJson, F("mqttPort"), port);
|
2020-09-02 22:34:49 +03:00
|
|
|
|
saveConfig();
|
2020-10-18 09:52:17 +03:00
|
|
|
|
myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
|
2020-09-02 22:34:49 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-12-18 21:48:06 +01:00
|
|
|
|
if (request->hasArg(F("mqttPrefix"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("mqttPrefix"), request->getParam(F("mqttPrefix"))->value());
|
2020-09-02 22:34:49 +03:00
|
|
|
|
saveConfig();
|
2020-10-18 09:52:17 +03:00
|
|
|
|
myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
|
2020-09-02 22:34:49 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-12-18 21:48:06 +01:00
|
|
|
|
if (request->hasArg(F("mqttUser"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("mqttUser"), request->getParam(F("mqttUser"))->value());
|
2020-09-02 22:34:49 +03:00
|
|
|
|
saveConfig();
|
2020-10-18 09:52:17 +03:00
|
|
|
|
myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
|
2020-09-02 22:34:49 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-12-18 21:48:06 +01:00
|
|
|
|
if (request->hasArg(F("mqttPass"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("mqttPass"), request->getParam(F("mqttPass"))->value());
|
|
|
|
|
|
saveConfig();
|
|
|
|
|
|
myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
//secondary
|
|
|
|
|
|
if (request->hasArg(F("mqttServer2"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("mqttServer2"), request->getParam(F("mqttServer2"))->value());
|
|
|
|
|
|
saveConfig();
|
|
|
|
|
|
myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
if (request->hasArg(F("mqttPort2"))) {
|
|
|
|
|
|
int port = (request->getParam(F("mqttPort2"))->value()).toInt();
|
|
|
|
|
|
jsonWriteInt(configSetupJson, F("mqttPort2"), port);
|
|
|
|
|
|
saveConfig();
|
|
|
|
|
|
myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
if (request->hasArg(F("mqttPrefix2"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("mqttPrefix2"), request->getParam(F("mqttPrefix2"))->value());
|
|
|
|
|
|
saveConfig();
|
|
|
|
|
|
myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
if (request->hasArg(F("mqttUser2"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("mqttUser2"), request->getParam(F("mqttUser2"))->value());
|
|
|
|
|
|
saveConfig();
|
|
|
|
|
|
myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
if (request->hasArg(F("mqttPass2"))) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, F("mqttPass2"), request->getParam(F("mqttPass2"))->value());
|
2020-09-02 22:34:49 +03:00
|
|
|
|
saveConfig();
|
2020-10-18 09:52:17 +03:00
|
|
|
|
myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
|
2020-09-02 22:34:49 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-09-17 21:33:54 +03:00
|
|
|
|
|
2020-09-02 22:34:49 +03:00
|
|
|
|
if (request->hasArg("mqttsend")) {
|
2020-11-21 06:03:02 +03:00
|
|
|
|
//myNotAsyncActions->make(do_MQTTUDP);
|
2020-09-02 22:34:49 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (request->hasArg("mqttcheck")) {
|
2020-10-04 02:45:26 +03:00
|
|
|
|
String buf = "<button class=\"close\" onclick=\"toggle('my-block')\">×</button>" + getStateStr();
|
2020-09-02 22:34:49 +03:00
|
|
|
|
|
|
|
|
|
|
String payload = "{}";
|
|
|
|
|
|
jsonWriteStr(payload, "title", buf);
|
|
|
|
|
|
jsonWriteStr(payload, "class", "pop-up");
|
|
|
|
|
|
|
|
|
|
|
|
request->send(200, "text/html", payload);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2020-12-17 22:48:20 +01:00
|
|
|
|
//==============================telegram settings=============================================
|
2020-11-04 23:48:21 +03:00
|
|
|
|
if (request->hasArg("telegramApi")) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, "telegramApi", request->getParam("telegramApi")->value());
|
2020-12-02 04:50:29 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
if (request->hasArg("chatId")) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, "chatId", request->getParam("chatId")->value());
|
2020-11-05 02:23:08 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
if (request->hasArg("telegonof")) {
|
|
|
|
|
|
bool value = request->getParam("telegonof")->value().toInt();
|
|
|
|
|
|
jsonWriteBool(configSetupJson, "telegonof", value);
|
2020-12-02 04:50:29 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
if (request->hasArg("teleginput")) {
|
|
|
|
|
|
bool value = request->getParam("teleginput")->value().toInt();
|
|
|
|
|
|
jsonWriteBool(configSetupJson, "teleginput", value);
|
2020-11-04 23:48:21 +03:00
|
|
|
|
saveConfig();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-09-02 22:34:49 +03:00
|
|
|
|
|
|
|
|
|
|
//==============================utilities settings=============================================
|
2020-09-18 00:02:20 +03:00
|
|
|
|
if (request->hasArg("i2c")) {
|
2020-10-18 09:52:17 +03:00
|
|
|
|
myNotAsyncActions->make(do_BUSSCAN);
|
2020-09-02 22:34:49 +03:00
|
|
|
|
request->redirect("/?set.utilities");
|
2020-09-18 00:24:07 +03:00
|
|
|
|
}
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg("uart")) {
|
|
|
|
|
|
bool value = request->getParam("uart")->value().toInt();
|
|
|
|
|
|
jsonWriteBool(configSetupJson, "uart", value);
|
2020-12-06 02:08:37 +03:00
|
|
|
|
saveConfig();
|
2020-12-16 13:59:01 +01:00
|
|
|
|
#ifdef uartEnable
|
2020-12-06 02:08:37 +03:00
|
|
|
|
uartInit();
|
2020-12-16 13:59:01 +01:00
|
|
|
|
#endif
|
2020-12-06 02:08:37 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-12-17 22:48:20 +01:00
|
|
|
|
if (request->hasArg("uartEvents")) {
|
|
|
|
|
|
bool value = request->getParam("uartEvents")->value().toInt();
|
|
|
|
|
|
jsonWriteBool(configSetupJson, "uartEvents", value);
|
|
|
|
|
|
saveConfig();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-12-06 02:08:37 +03:00
|
|
|
|
if (request->hasArg("uartS")) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, "uartS", request->getParam("uartS")->value());
|
|
|
|
|
|
saveConfig();
|
2020-12-16 13:59:01 +01:00
|
|
|
|
#ifdef uartEnable
|
2020-12-06 02:08:37 +03:00
|
|
|
|
uartInit();
|
2020-12-16 13:59:01 +01:00
|
|
|
|
#endif
|
2020-12-06 02:08:37 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
if (request->hasArg("uartTX")) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, "uartTX", request->getParam("uartTX")->value());
|
|
|
|
|
|
saveConfig();
|
2020-12-16 13:59:01 +01:00
|
|
|
|
#ifdef uartEnable
|
2020-12-06 02:08:37 +03:00
|
|
|
|
uartInit();
|
2020-12-16 13:59:01 +01:00
|
|
|
|
#endif
|
2020-12-06 02:08:37 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
|
|
|
|
|
if (request->hasArg("uartRX")) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, "uartRX", request->getParam("uartRX")->value());
|
|
|
|
|
|
saveConfig();
|
2020-12-16 13:59:01 +01:00
|
|
|
|
#ifdef uartEnable
|
2020-12-06 02:08:37 +03:00
|
|
|
|
uartInit();
|
2020-12-16 13:59:01 +01:00
|
|
|
|
#endif
|
2020-12-06 02:08:37 +03:00
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-11-01 02:52:57 +03:00
|
|
|
|
|
|
|
|
|
|
//==============================developer settings=============================================
|
|
|
|
|
|
if (request->hasArg("serverip")) {
|
|
|
|
|
|
jsonWriteStr(configSetupJson, "serverip", request->getParam("serverip")->value());
|
|
|
|
|
|
saveConfig();
|
|
|
|
|
|
serverIP = jsonReadStr(configSetupJson, "serverip");
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2021-01-03 00:33:04 +01:00
|
|
|
|
//set?order=button_1
|
2020-12-26 23:10:07 +01:00
|
|
|
|
if (request->hasArg("order")) {
|
|
|
|
|
|
String order = request->getParam("order")->value();
|
2021-01-03 00:33:04 +01:00
|
|
|
|
order.replace("_", " ");
|
2020-12-26 23:10:07 +01:00
|
|
|
|
orderBuf += order + ",";
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2021-01-03 00:33:04 +01:00
|
|
|
|
|
|
|
|
|
|
if (request->hasArg("grafmax")) {
|
|
|
|
|
|
int value = request->getParam("grafmax")->value().toInt();
|
|
|
|
|
|
jsonWriteInt(configSetupJson, "grafmax", value);
|
|
|
|
|
|
saveConfig();
|
|
|
|
|
|
request->send(200);
|
|
|
|
|
|
}
|
2020-12-26 23:10:07 +01:00
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
server.on("/order", HTTP_GET, [](AsyncWebServerRequest* request) {
|
2020-09-02 22:34:49 +03:00
|
|
|
|
|
2020-12-26 23:10:07 +01:00
|
|
|
|
});
|
2020-12-17 22:48:20 +01:00
|
|
|
|
|
2020-09-02 22:34:49 +03:00
|
|
|
|
server.on("/check", HTTP_GET, [](AsyncWebServerRequest* request) {
|
2020-10-18 09:52:17 +03:00
|
|
|
|
myNotAsyncActions->make(do_GETLASTVERSION);
|
2020-09-17 21:33:54 +03:00
|
|
|
|
SerialPrint("I", "Update", "firmware version: " + String(lastVersion));
|
2020-09-02 22:34:49 +03:00
|
|
|
|
|
|
|
|
|
|
String msg = "";
|
2020-12-20 14:11:59 +01:00
|
|
|
|
|
2020-12-30 14:04:42 +01:00
|
|
|
|
if (USE_OTA) {
|
2020-12-16 13:59:01 +01:00
|
|
|
|
if (lastVersion == FIRMWARE_VERSION) {
|
|
|
|
|
|
msg = F("Актуальная версия прошивки уже установлена.");
|
2020-12-26 23:10:07 +01:00
|
|
|
|
} else if (lastVersion > FIRMWARE_VERSION) {
|
2020-12-16 13:59:01 +01:00
|
|
|
|
msg = F("Новая версия прошивки<a href=\"#\" class=\"btn btn-block btn-danger\" onclick=\"send_request(this, '/upgrade');setTimeout(function(){ location.href='/?set.device'; }, 90000);html('my-block','<span class=loader></span>Идет обновление прошивки, после обновления страница перезагрузится автоматически...')\">Установить</a>");
|
2020-12-26 23:10:07 +01:00
|
|
|
|
} else if (lastVersion == -1) {
|
2020-12-16 13:59:01 +01:00
|
|
|
|
msg = F("Cервер не найден. Попробуйте повторить позже...");
|
2020-12-26 23:10:07 +01:00
|
|
|
|
} else if (lastVersion == -2) {
|
2020-12-16 13:59:01 +01:00
|
|
|
|
msg = F("Устройство не подключено к роутеру!");
|
2020-12-26 23:10:07 +01:00
|
|
|
|
} else if (lastVersion < FIRMWARE_VERSION) {
|
2020-12-16 13:59:01 +01:00
|
|
|
|
msg = F("Ошибка версии. Попробуйте повторить позже...");
|
|
|
|
|
|
}
|
2021-01-03 00:33:04 +01:00
|
|
|
|
} else {
|
|
|
|
|
|
msg = F("Обновление невозможно, память устройства 1 мб");
|
2020-09-02 22:34:49 +03:00
|
|
|
|
}
|
2020-09-17 21:33:54 +03:00
|
|
|
|
|
2020-09-02 22:34:49 +03:00
|
|
|
|
String tmp = "{}";
|
|
|
|
|
|
jsonWriteStr(tmp, "title", "<button class=\"close\" onclick=\"toggle('my-block')\">×</button>" + msg);
|
|
|
|
|
|
jsonWriteStr(tmp, "class", "pop-up");
|
|
|
|
|
|
request->send(200, "text/html", tmp);
|
2020-12-26 23:10:07 +01:00
|
|
|
|
});
|
2020-09-02 22:34:49 +03:00
|
|
|
|
|
2020-11-04 23:48:21 +03:00
|
|
|
|
/*
|
2020-09-02 22:34:49 +03:00
|
|
|
|
* Upgrade
|
|
|
|
|
|
*/
|
|
|
|
|
|
server.on("/upgrade", HTTP_GET, [](AsyncWebServerRequest* request) {
|
2020-10-18 09:52:17 +03:00
|
|
|
|
myNotAsyncActions->make(do_UPGRADE);
|
2020-09-02 22:34:49 +03:00
|
|
|
|
request->send(200, "text/html");
|
2020-12-26 23:10:07 +01:00
|
|
|
|
});
|
2020-12-10 19:12:15 +03:00
|
|
|
|
|
2020-12-11 03:21:50 +03:00
|
|
|
|
SerialPrint("I", F("Web"), F("WebAdmin Init"));
|
2020-09-02 22:34:49 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void setConfigParam(const char* param, const String& value) {
|
2020-09-17 21:33:54 +03:00
|
|
|
|
SerialPrint("I", "Web", "set " + String(param) + ": " + value);
|
2020-09-02 22:34:49 +03:00
|
|
|
|
jsonWriteStr(configSetupJson, param, value);
|
|
|
|
|
|
saveConfig();
|
|
|
|
|
|
}
|