#ifndef __WEB_SERVER_PLUGIN__ #define __WEB_SERVER_PLUGIN__ #include #include #include "TaskSchedulerDeclarations.h" #include "Plugin.h" #include using namespace std; using namespace std::placeholders; class WebServerPlugin : public Plugin { private: WebServerConfig config; AsyncWebServer* server; public: WebServerPlugin(WebServerConfig cfg, AsyncWebServer* webServer){ config = cfg; server = webServer; } void activate(Scheduler* userScheduler){ server->serveStatic(config.contextPath, SPIFFS, config.docRoot).setDefaultFile(config.defaultFile); // TODO add auth if configured // server->setAuthentication("user", "pass"); server->begin(); Serial.println("WebServer activated"); } }; #endif