mirror of
https://github.com/lumapu/ahoy.git
synced 2025-06-13 16:11:38 +02:00
0.8.35
* changed reload time for opendtufusion after update to 5s * fix default interval and gap for communication * fix serial number in exported json (was decimal, now correct as hexdecimal number) * beautified factory reset * added second stage for erase settings * increased maximal number of inverters to 32 for opendtufusion board (ESP32-S3) * fixed crash if CMT inverter is enabled, but CMT isn't configured
This commit is contained in:
parent
b5cdd775a7
commit
86ff9f054a
8 changed files with 79 additions and 42 deletions
|
@ -88,6 +88,10 @@ class RestApi {
|
|||
else if(path == "html/logout") getHtmlLogout(request, root);
|
||||
else if(path == "html/reboot") getHtmlReboot(request, root);
|
||||
else if(path == "html/save") getHtmlSave(request, root);
|
||||
else if(path == "html/erase") getHtmlErase(request, root);
|
||||
else if(path == "html/erasetrue") getHtmlEraseTrue(request, root);
|
||||
else if(path == "html/factory") getHtmlFactory(request, root);
|
||||
else if(path == "html/factorytrue") getHtmlFactoryTrue(request, root);
|
||||
else if(path == "system") getSysInfo(request, root);
|
||||
else if(path == "generic") getGeneric(request, root);
|
||||
else if(path == "reboot") getReboot(request, root);
|
||||
|
@ -214,6 +218,16 @@ class RestApi {
|
|||
tmp.remove(i, tmp.indexOf("\"", i)-i);
|
||||
}
|
||||
}
|
||||
i = 0;
|
||||
// convert all serial numbers to hexadecimal
|
||||
while (i != -1) {
|
||||
i = tmp.indexOf("\"sn\":", i);
|
||||
if(-1 != i) {
|
||||
i+=5;
|
||||
String sn = tmp.substring(i, tmp.indexOf("\"", i)-1);
|
||||
tmp.replace(sn, String(atoll(sn.c_str()), HEX));
|
||||
}
|
||||
}
|
||||
response = request->beginResponse(200, F("application/json; charset=utf-8"), tmp);
|
||||
}
|
||||
|
||||
|
@ -337,6 +351,40 @@ class RestApi {
|
|||
#endif
|
||||
}
|
||||
|
||||
void getHtmlErase(AsyncWebServerRequest *request, JsonObject obj) {
|
||||
getGeneric(request, obj.createNestedObject(F("generic")));
|
||||
obj[F("html")] = F("Erase settings (not WiFi)? <a class=\"btn\" href=\"/erasetrue\">yes</a> <a class=\"btn\" href=\"/\">no</a>");
|
||||
}
|
||||
|
||||
void getHtmlEraseTrue(AsyncWebServerRequest *request, JsonObject obj) {
|
||||
getGeneric(request, obj.createNestedObject(F("generic")));
|
||||
mApp->eraseSettings(false);
|
||||
mApp->setRebootFlag();
|
||||
obj[F("html")] = F("Erase settings: success");
|
||||
#if defined(ETHERNET) && defined(CONFIG_IDF_TARGET_ESP32S3)
|
||||
obj[F("reload")] = 5;
|
||||
#else
|
||||
obj[F("reload")] = 20;
|
||||
#endif
|
||||
}
|
||||
|
||||
void getHtmlFactory(AsyncWebServerRequest *request, JsonObject obj) {
|
||||
getGeneric(request, obj.createNestedObject(F("generic")));
|
||||
obj[F("html")] = F("Factory reset? <a class=\"btn\" href=\"/factorytrue\">yes</a> <a class=\"btn\" href=\"/\">no</a>");
|
||||
}
|
||||
|
||||
void getHtmlFactoryTrue(AsyncWebServerRequest *request, JsonObject obj) {
|
||||
getGeneric(request, obj.createNestedObject(F("generic")));
|
||||
mApp->eraseSettings(true);
|
||||
mApp->setRebootFlag();
|
||||
obj[F("html")] = F("Factory reset: success");
|
||||
#if defined(ETHERNET) && defined(CONFIG_IDF_TARGET_ESP32S3)
|
||||
obj[F("reload")] = 5;
|
||||
#else
|
||||
obj[F("reload")] = 20;
|
||||
#endif
|
||||
}
|
||||
|
||||
void getReboot(AsyncWebServerRequest *request, JsonObject obj) {
|
||||
getGeneric(request, obj.createNestedObject(F("generic")));
|
||||
obj[F("refresh")] = 10;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue