#include "RemoteConfig.h" #include "ConfigManager.h" void RemoteConfig::register_calls(MessagingInterface &messaging_interface, ConfigManager& config_manager) { messaging_interface.register_function(8, [&config_manager](const uint8_t *parameters, size_t parameter_size, Writer& writer) { uint16_t value; if (parameter_size < sizeof(value)) { std::vector out{0}; writer.write(out); return; } std::memcpy(&value, parameters, sizeof(value)); config_manager.set_module_id(value); std::vector out{0}; writer.write(out); esp_restart(); }); messaging_interface.register_function(9, [&config_manager](const uint8_t *parameters, size_t parameter_size, Writer& writer) { if (parameter_size < 1) { std::vector out{0}; writer.write(out); return; } config_manager.set_module_type((ModuleType)parameters[0]); std::vector out{1}; writer.write(out); esp_restart(); }); messaging_interface.register_function(10, [&config_manager](const uint8_t *parameters, size_t parameter_size, Writer& writer) { config_manager.set_wifi_ssid((char*)parameters); std::vector out{1}; writer.write(out); }); messaging_interface.register_function(11, [&config_manager](const uint8_t *parameters, size_t parameter_size, Writer& writer) { config_manager.set_wifi_password((char*)parameters); std::vector out{1}; writer.write(out); }); messaging_interface.register_function(12, [&config_manager](const uint8_t *parameters, size_t parameter_size, Writer& writer) { if (parameter_size < 1) { std::vector out{0}; writer.write(out); return; } config_manager.set_communication_method((CommunicationMethod)parameters[0]); std::vector out{1}; writer.write(out); esp_restart(); }); }