Added second API endpoint which returns system info
This commit is contained in:
parent
b58788ded5
commit
868f0cf3a5
@ -17,6 +17,7 @@ private:
|
||||
void onNotFound(AsyncWebServerRequest* request);
|
||||
|
||||
void onNetworkStatus(AsyncWebServerRequest* request);
|
||||
void onSystemStatus(AsyncWebServerRequest* request);
|
||||
};
|
||||
|
||||
extern WebApiClass WebApi;
|
||||
@ -22,6 +22,7 @@ void WebApiClass::init()
|
||||
_ws.onEvent(std::bind(&WebApiClass::onWebsocketEvent, this, _1, _2, _3, _4, _5, _6));
|
||||
|
||||
_server.on("/api/network/status", HTTP_GET, std::bind(&WebApiClass::onNetworkStatus, this, _1));
|
||||
_server.on("/api/system/status", HTTP_GET, std::bind(&WebApiClass::onSystemStatus, this, _1));
|
||||
|
||||
_server.serveStatic("/", LITTLEFS, "/", "max-age=86400").setDefaultFile("index.html");
|
||||
_server.onNotFound(std::bind(&WebApiClass::onNotFound, this, _1));
|
||||
@ -71,4 +72,21 @@ void WebApiClass::onNetworkStatus(AsyncWebServerRequest* request)
|
||||
request->send(response);
|
||||
}
|
||||
|
||||
void WebApiClass::onSystemStatus(AsyncWebServerRequest* request)
|
||||
{
|
||||
AsyncJsonResponse* response = new AsyncJsonResponse();
|
||||
JsonObject root = response->getRoot();
|
||||
|
||||
root[F("hostname")] = WiFi.getHostname();
|
||||
root[F("heapfree")] = ESP.getFreeHeap();
|
||||
root[F("heaptotal")] = ESP.getHeapSize();
|
||||
root[F("sdkversion")] = ESP.getSdkVersion();
|
||||
root[F("cpufreq")] = ESP.getCpuFreqMHz();
|
||||
root[F("sketchtotal")] = ESP.getSketchSize() + ESP.getFreeSketchSpace();
|
||||
root[F("sketchused")] = ESP.getSketchSize();
|
||||
|
||||
response->setLength();
|
||||
request->send(response);
|
||||
}
|
||||
|
||||
WebApiClass WebApi;
|
||||
Loading…
Reference in New Issue
Block a user