See More

#include "mongoose.h" #include "webserver.h" #include #include "evse.h" #include #include #include #include #include #include #include #include struct mg_mgr mgr; ArduinoOcpp::AOcppMongooseClient *osock; #if AO_NUMCONNECTORS == 3 std::array connectors {{1,2}}; #else std::array connectors {{1}}; #endif int main() { mg_log_set(MG_LL_INFO); mg_mgr_init(&mgr); mg_http_listen(&mgr, "0.0.0.0:8000", http_serve, NULL); // Create listening connection std::shared_ptr<:filesystemadapter> filesystem; #ifndef AO_DEACTIVATE_FLASH filesystem = ArduinoOcpp::makeDefaultFilesystemAdapter(ArduinoOcpp::FilesystemOpt::Use_Mount_FormatOnFail); #endif osock = new ArduinoOcpp::AOcppMongooseClient(&mgr, "ws://echo.websocket.events", "charger-01", "", "", filesystem); server_initialize(osock); OCPP_initialize(*osock, ChargerCredentials("Demo Charger", "My Company Ltd."), ArduinoOcpp::FilesystemOpt::Use_Mount_FormatOnFail); for (unsigned int i = 0; i < connectors.size(); i++) { connectors[i].setup(); } for (;;) { // Block forever mg_mgr_poll(&mgr, 100); OCPP_loop(); for (unsigned int i = 0; i < connectors.size(); i++) { connectors[i].loop(); } } delete osock; mg_mgr_free(&mgr); return 0; }