Added option to change hw params.
This commit is contained in:
@ -26,6 +26,7 @@ SOFTWARE.
|
||||
#include <gyro.hpp>
|
||||
#include <helper.hpp>
|
||||
#include <main.hpp>
|
||||
#include <resources.hpp>
|
||||
#include <tempsensor.hpp>
|
||||
#include <webserver.hpp>
|
||||
#include <wifi.hpp>
|
||||
@ -44,10 +45,10 @@ void WebServer::webHandleDevice() {
|
||||
#endif
|
||||
|
||||
DynamicJsonDocument doc(100);
|
||||
doc[CFG_PARAM_ID] = myConfig.getID();
|
||||
doc[CFG_PARAM_APP_NAME] = CFG_APPNAME;
|
||||
doc[CFG_PARAM_APP_VER] = CFG_APPVER;
|
||||
doc[CFG_PARAM_MDNS] = myConfig.getMDNS();
|
||||
doc[PARAM_ID] = myConfig.getID();
|
||||
doc[PARAM_APP_NAME] = CFG_APPNAME;
|
||||
doc[PARAM_APP_VER] = CFG_APPVER;
|
||||
doc[PARAM_MDNS] = myConfig.getMDNS();
|
||||
#if LOG_LEVEL == 6
|
||||
serializeJson(doc, Serial);
|
||||
Serial.print(CR);
|
||||
@ -68,14 +69,14 @@ void WebServer::webHandleConfig() {
|
||||
DynamicJsonDocument doc(CFG_JSON_BUFSIZE);
|
||||
myConfig.createJson(doc);
|
||||
|
||||
doc[CFG_PARAM_PASS] = ""; // dont show the wifi password
|
||||
doc[PARAM_PASS] = ""; // dont show the wifi password
|
||||
|
||||
double angle = myGyro.getAngle();
|
||||
double tempC = myTempSensor.getTempC(myConfig.isGyroTemp());
|
||||
double gravity = calculateGravity(angle, tempC);
|
||||
|
||||
doc[CFG_PARAM_ANGLE] = reduceFloatPrecision(angle);
|
||||
doc[CFG_PARAM_GRAVITY_FORMAT] = String(myConfig.getGravityFormat());
|
||||
doc[PARAM_ANGLE] = reduceFloatPrecision(angle);
|
||||
doc[PARAM_GRAVITY_FORMAT] = String(myConfig.getGravityFormat());
|
||||
|
||||
if (myConfig.isGravityTempAdj()) {
|
||||
gravity =
|
||||
@ -83,12 +84,12 @@ void WebServer::webHandleConfig() {
|
||||
}
|
||||
|
||||
if (myConfig.isGravityPlato()) {
|
||||
doc[CFG_PARAM_GRAVITY] = reduceFloatPrecision(convertToPlato(gravity), 1);
|
||||
doc[PARAM_GRAVITY] = reduceFloatPrecision(convertToPlato(gravity), 1);
|
||||
} else {
|
||||
doc[CFG_PARAM_GRAVITY] = reduceFloatPrecision(gravity, 4);
|
||||
doc[PARAM_GRAVITY] = reduceFloatPrecision(gravity, 4);
|
||||
}
|
||||
|
||||
doc[CFG_PARAM_BATTERY] = reduceFloatPrecision(myBatteryVoltage.getVoltage());
|
||||
doc[PARAM_BATTERY] = reduceFloatPrecision(myBatteryVoltage.getVoltage());
|
||||
|
||||
#if LOG_LEVEL == 6 && !defined(WEB_DISABLE_LOGGING)
|
||||
serializeJson(doc, Serial);
|
||||
@ -178,7 +179,7 @@ void WebServer::webHandleUploadFile() {
|
||||
//
|
||||
void WebServer::webHandleCalibrate() {
|
||||
LOG_PERF_START("webserver-api-calibrate");
|
||||
String id = _server->arg(CFG_PARAM_ID);
|
||||
String id = _server->arg(PARAM_ID);
|
||||
Log.notice(F("WEB : webServer callback for /api/calibrate." CR));
|
||||
|
||||
if (!id.equalsIgnoreCase(myConfig.getID())) {
|
||||
@ -197,7 +198,7 @@ void WebServer::webHandleCalibrate() {
|
||||
// Callback from webServer when / has been accessed.
|
||||
//
|
||||
void WebServer::webHandleFactoryReset() {
|
||||
String id = _server->arg(CFG_PARAM_ID);
|
||||
String id = _server->arg(PARAM_ID);
|
||||
Log.notice(F("WEB : webServer callback for /api/factory." CR));
|
||||
|
||||
if (!id.compareTo(myConfig.getID())) {
|
||||
@ -224,23 +225,23 @@ void WebServer::webHandleStatus() {
|
||||
double tempC = myTempSensor.getTempC(myConfig.isGyroTemp());
|
||||
double gravity = calculateGravity(angle, tempC);
|
||||
|
||||
doc[CFG_PARAM_ID] = myConfig.getID();
|
||||
doc[CFG_PARAM_ANGLE] = reduceFloatPrecision(angle);
|
||||
doc[PARAM_ID] = myConfig.getID();
|
||||
doc[PARAM_ANGLE] = reduceFloatPrecision(angle);
|
||||
if (myConfig.isGravityTempAdj()) {
|
||||
gravity = gravityTemperatureCorrectionC(gravity, tempC); //
|
||||
}
|
||||
if (myConfig.isGravityPlato()) {
|
||||
doc[CFG_PARAM_GRAVITY] = reduceFloatPrecision(convertToPlato(gravity), 1);
|
||||
doc[PARAM_GRAVITY] = reduceFloatPrecision(convertToPlato(gravity), 1);
|
||||
} else {
|
||||
doc[CFG_PARAM_GRAVITY] = reduceFloatPrecision(gravity, 4);
|
||||
doc[PARAM_GRAVITY] = reduceFloatPrecision(gravity, 4);
|
||||
}
|
||||
doc[CFG_PARAM_TEMP_C] = reduceFloatPrecision(tempC, 1);
|
||||
doc[CFG_PARAM_TEMP_F] = reduceFloatPrecision(convertCtoF(tempC), 1);
|
||||
doc[CFG_PARAM_BATTERY] = reduceFloatPrecision(myBatteryVoltage.getVoltage());
|
||||
doc[CFG_PARAM_TEMPFORMAT] = String(myConfig.getTempFormat());
|
||||
doc[CFG_PARAM_GRAVITY_FORMAT] = String(myConfig.getGravityFormat());
|
||||
doc[CFG_PARAM_SLEEP_MODE] = sleepModeAlwaysSkip;
|
||||
doc[CFG_PARAM_RSSI] = WiFi.RSSI();
|
||||
doc[PARAM_TEMP_C] = reduceFloatPrecision(tempC, 1);
|
||||
doc[PARAM_TEMP_F] = reduceFloatPrecision(convertCtoF(tempC), 1);
|
||||
doc[PARAM_BATTERY] = reduceFloatPrecision(myBatteryVoltage.getVoltage());
|
||||
doc[PARAM_TEMPFORMAT] = String(myConfig.getTempFormat());
|
||||
doc[PARAM_GRAVITY_FORMAT] = String(myConfig.getGravityFormat());
|
||||
doc[PARAM_SLEEP_MODE] = sleepModeAlwaysSkip;
|
||||
doc[PARAM_RSSI] = WiFi.RSSI();
|
||||
|
||||
#if LOG_LEVEL == 6 && !defined(WEB_DISABLE_LOGGING)
|
||||
serializeJson(doc, Serial);
|
||||
@ -257,7 +258,7 @@ void WebServer::webHandleStatus() {
|
||||
// Callback from webServer when / has been accessed.
|
||||
//
|
||||
void WebServer::webHandleClearWIFI() {
|
||||
String id = _server->arg(CFG_PARAM_ID);
|
||||
String id = _server->arg(PARAM_ID);
|
||||
Log.notice(F("WEB : webServer callback for /api/clearwifi." CR));
|
||||
|
||||
if (!id.compareTo(myConfig.getID())) {
|
||||
@ -276,7 +277,7 @@ void WebServer::webHandleClearWIFI() {
|
||||
//
|
||||
void WebServer::webHandleStatusSleepmode() {
|
||||
LOG_PERF_START("webserver-api-sleepmode");
|
||||
String id = _server->arg(CFG_PARAM_ID);
|
||||
String id = _server->arg(PARAM_ID);
|
||||
Log.notice(F("WEB : webServer callback for /api/status/sleepmode." CR));
|
||||
|
||||
if (!id.equalsIgnoreCase(myConfig.getID())) {
|
||||
@ -291,7 +292,7 @@ void WebServer::webHandleStatusSleepmode() {
|
||||
Log.verbose(F("WEB : %s." CR), getRequestArguments().c_str());
|
||||
#endif
|
||||
|
||||
if (_server->arg(CFG_PARAM_SLEEP_MODE).equalsIgnoreCase("true"))
|
||||
if (_server->arg(PARAM_SLEEP_MODE).equalsIgnoreCase("true"))
|
||||
sleepModeAlwaysSkip = true;
|
||||
else
|
||||
sleepModeAlwaysSkip = false;
|
||||
@ -304,7 +305,7 @@ void WebServer::webHandleStatusSleepmode() {
|
||||
//
|
||||
void WebServer::webHandleConfigDevice() {
|
||||
LOG_PERF_START("webserver-api-config-device");
|
||||
String id = _server->arg(CFG_PARAM_ID);
|
||||
String id = _server->arg(PARAM_ID);
|
||||
Log.notice(F("WEB : webServer callback for /api/config/device." CR));
|
||||
|
||||
if (!id.equalsIgnoreCase(myConfig.getID())) {
|
||||
@ -319,9 +320,9 @@ void WebServer::webHandleConfigDevice() {
|
||||
Log.verbose(F("WEB : %s." CR), getRequestArguments().c_str());
|
||||
#endif
|
||||
|
||||
myConfig.setMDNS(_server->arg(CFG_PARAM_MDNS).c_str());
|
||||
myConfig.setTempFormat(_server->arg(CFG_PARAM_TEMPFORMAT).charAt(0));
|
||||
myConfig.setSleepInterval(_server->arg(CFG_PARAM_SLEEP_INTERVAL).c_str());
|
||||
myConfig.setMDNS(_server->arg(PARAM_MDNS).c_str());
|
||||
myConfig.setTempFormat(_server->arg(PARAM_TEMPFORMAT).charAt(0));
|
||||
myConfig.setSleepInterval(_server->arg(PARAM_SLEEP_INTERVAL).c_str());
|
||||
myConfig.saveFile();
|
||||
_server->sendHeader("Location", "/config.htm#collapseOne", true);
|
||||
_server->send(302, "text/plain", "Device config updated");
|
||||
@ -333,7 +334,7 @@ void WebServer::webHandleConfigDevice() {
|
||||
//
|
||||
void WebServer::webHandleConfigPush() {
|
||||
LOG_PERF_START("webserver-api-config-push");
|
||||
String id = _server->arg(CFG_PARAM_ID);
|
||||
String id = _server->arg(PARAM_ID);
|
||||
Log.notice(F("WEB : webServer callback for /api/config/push." CR));
|
||||
|
||||
if (!id.equalsIgnoreCase(myConfig.getID())) {
|
||||
@ -347,21 +348,19 @@ void WebServer::webHandleConfigPush() {
|
||||
Log.verbose(F("WEB : %s." CR), getRequestArguments().c_str());
|
||||
#endif
|
||||
|
||||
myConfig.setHttpPushUrl(_server->arg(CFG_PARAM_PUSH_HTTP).c_str());
|
||||
myConfig.setHttpPushUrl2(_server->arg(CFG_PARAM_PUSH_HTTP2).c_str());
|
||||
myConfig.setBrewfatherPushUrl(
|
||||
_server->arg(CFG_PARAM_PUSH_BREWFATHER).c_str());
|
||||
myConfig.setInfluxDb2PushUrl(_server->arg(CFG_PARAM_PUSH_INFLUXDB2).c_str());
|
||||
myConfig.setInfluxDb2PushOrg(
|
||||
_server->arg(CFG_PARAM_PUSH_INFLUXDB2_ORG).c_str());
|
||||
myConfig.setHttpPushUrl(_server->arg(PARAM_PUSH_HTTP).c_str());
|
||||
myConfig.setHttpPushUrl2(_server->arg(PARAM_PUSH_HTTP2).c_str());
|
||||
myConfig.setBrewfatherPushUrl(_server->arg(PARAM_PUSH_BREWFATHER).c_str());
|
||||
myConfig.setInfluxDb2PushUrl(_server->arg(PARAM_PUSH_INFLUXDB2).c_str());
|
||||
myConfig.setInfluxDb2PushOrg(_server->arg(PARAM_PUSH_INFLUXDB2_ORG).c_str());
|
||||
myConfig.setInfluxDb2PushBucket(
|
||||
_server->arg(CFG_PARAM_PUSH_INFLUXDB2_BUCKET).c_str());
|
||||
_server->arg(PARAM_PUSH_INFLUXDB2_BUCKET).c_str());
|
||||
myConfig.setInfluxDb2PushToken(
|
||||
_server->arg(CFG_PARAM_PUSH_INFLUXDB2_AUTH).c_str());
|
||||
myConfig.setMqttUrl(_server->arg(CFG_PARAM_PUSH_MQTT).c_str());
|
||||
myConfig.setMqttTopic(_server->arg(CFG_PARAM_PUSH_MQTT_TOPIC).c_str());
|
||||
myConfig.setMqttUser(_server->arg(CFG_PARAM_PUSH_MQTT_USER).c_str());
|
||||
myConfig.setMqttPass(_server->arg(CFG_PARAM_PUSH_MQTT_PASS).c_str());
|
||||
_server->arg(PARAM_PUSH_INFLUXDB2_AUTH).c_str());
|
||||
myConfig.setMqttUrl(_server->arg(PARAM_PUSH_MQTT).c_str());
|
||||
myConfig.setMqttTopic(_server->arg(PARAM_PUSH_MQTT_TOPIC).c_str());
|
||||
myConfig.setMqttUser(_server->arg(PARAM_PUSH_MQTT_USER).c_str());
|
||||
myConfig.setMqttPass(_server->arg(PARAM_PUSH_MQTT_PASS).c_str());
|
||||
myConfig.saveFile();
|
||||
_server->sendHeader("Location", "/config.htm#collapseTwo", true);
|
||||
_server->send(302, "text/plain", "Push config updated");
|
||||
@ -392,7 +391,7 @@ String WebServer::getRequestArguments() {
|
||||
//
|
||||
void WebServer::webHandleConfigGravity() {
|
||||
LOG_PERF_START("webserver-api-config-gravity");
|
||||
String id = _server->arg(CFG_PARAM_ID);
|
||||
String id = _server->arg(PARAM_ID);
|
||||
Log.notice(F("WEB : webServer callback for /api/config/gravity." CR));
|
||||
|
||||
if (!id.equalsIgnoreCase(myConfig.getID())) {
|
||||
@ -407,11 +406,11 @@ void WebServer::webHandleConfigGravity() {
|
||||
Log.verbose(F("WEB : %s." CR), getRequestArguments().c_str());
|
||||
#endif
|
||||
|
||||
myConfig.setGravityFormat(_server->arg(CFG_PARAM_GRAVITY_FORMAT).charAt(0));
|
||||
myConfig.setGravityFormula(_server->arg(CFG_PARAM_GRAVITY_FORMULA).c_str());
|
||||
myConfig.setGravityFormat(_server->arg(PARAM_GRAVITY_FORMAT).charAt(0));
|
||||
myConfig.setGravityFormula(_server->arg(PARAM_GRAVITY_FORMULA).c_str());
|
||||
myConfig.setGravityTempAdj(
|
||||
_server->arg(CFG_PARAM_GRAVITY_TEMP_ADJ).equalsIgnoreCase("on") ? true
|
||||
: false);
|
||||
_server->arg(PARAM_GRAVITY_TEMP_ADJ).equalsIgnoreCase("on") ? true
|
||||
: false);
|
||||
myConfig.saveFile();
|
||||
_server->sendHeader("Location", "/config.htm#collapseThree", true);
|
||||
_server->send(302, "text/plain", "Gravity config updated");
|
||||
@ -423,7 +422,7 @@ void WebServer::webHandleConfigGravity() {
|
||||
//
|
||||
void WebServer::webHandleConfigHardware() {
|
||||
LOG_PERF_START("webserver-api-config-hardware");
|
||||
String id = _server->arg(CFG_PARAM_ID);
|
||||
String id = _server->arg(PARAM_ID);
|
||||
Log.notice(F("WEB : webServer callback for /api/config/hardware." CR));
|
||||
|
||||
if (!id.equalsIgnoreCase(myConfig.getID())) {
|
||||
@ -438,21 +437,86 @@ void WebServer::webHandleConfigHardware() {
|
||||
Log.verbose(F("WEB : %s." CR), getRequestArguments().c_str());
|
||||
#endif
|
||||
|
||||
myConfig.setVoltageFactor(_server->arg(CFG_PARAM_VOLTAGEFACTOR).toFloat());
|
||||
myConfig.setVoltageFactor(_server->arg(PARAM_VOLTAGEFACTOR).toFloat());
|
||||
if (myConfig.isTempC()) {
|
||||
myConfig.setTempSensorAdjC(_server->arg(CFG_PARAM_TEMP_ADJ));
|
||||
myConfig.setTempSensorAdjC(_server->arg(PARAM_TEMP_ADJ));
|
||||
} else {
|
||||
myConfig.setTempSensorAdjF(_server->arg(CFG_PARAM_TEMP_ADJ));
|
||||
myConfig.setTempSensorAdjF(_server->arg(PARAM_TEMP_ADJ));
|
||||
}
|
||||
myConfig.setOtaURL(_server->arg(CFG_PARAM_OTA).c_str());
|
||||
myConfig.setOtaURL(_server->arg(PARAM_OTA).c_str());
|
||||
myConfig.setGyroTemp(
|
||||
_server->arg(CFG_PARAM_GYRO_TEMP).equalsIgnoreCase("on") ? true : false);
|
||||
_server->arg(PARAM_GYRO_TEMP).equalsIgnoreCase("on") ? true : false);
|
||||
myConfig.saveFile();
|
||||
_server->sendHeader("Location", "/config.htm#collapseFour", true);
|
||||
_server->send(302, "text/plain", "Hardware config updated");
|
||||
LOG_PERF_STOP("webserver-api-config-hardware");
|
||||
}
|
||||
|
||||
//
|
||||
// Update device parameters.
|
||||
//
|
||||
void WebServer::webHandleDeviceParam() {
|
||||
LOG_PERF_START("webserver-api-device-param");
|
||||
String id = _server->arg(PARAM_ID);
|
||||
Log.notice(F("WEB : webServer callback for /api/device/param." CR));
|
||||
|
||||
if (!id.equalsIgnoreCase(myConfig.getID())) {
|
||||
Log.error(F("WEB : Wrong ID received %s, expected %s" CR), id.c_str(),
|
||||
myConfig.getID());
|
||||
_server->send(400, "text/plain", "Invalid ID.");
|
||||
LOG_PERF_STOP("webserver-api-device-param");
|
||||
return;
|
||||
}
|
||||
|
||||
#if LOG_LEVEL == 6 && !defined(WEB_DISABLE_LOGGING)
|
||||
Log.verbose(F("WEB : %s." CR), getRequestArguments().c_str());
|
||||
#endif
|
||||
|
||||
for (int i = 0; i < _server->args(); i++) {
|
||||
String s = _server->arg(i);
|
||||
|
||||
if (_server->argName(i).equalsIgnoreCase(PARAM_HW_GYRO_READ_COUNT))
|
||||
myHardwareConfig.setGyroReadCount(s.toInt());
|
||||
else if (_server->argName(i).equalsIgnoreCase(PARAM_HW_GYRO_READ_DELAY))
|
||||
myHardwareConfig.setGyroReadDelay(s.toInt());
|
||||
else if (_server->argName(i).equalsIgnoreCase(
|
||||
PARAM_HW_GYRO_MOVING_THREASHOLD))
|
||||
myHardwareConfig.setGyroSensorMovingThreashold(s.toInt());
|
||||
else if (_server->argName(i).equalsIgnoreCase(PARAM_HW_FORMULA_DEVIATION))
|
||||
myHardwareConfig.setMaxFormulaCreationDeviation(s.toFloat());
|
||||
else if (_server->argName(i).equalsIgnoreCase(
|
||||
PARAM_HW_FORMULA_CALIBRATION_TEMP))
|
||||
myHardwareConfig.SetDefaultCalibrationTemp(s.toFloat());
|
||||
else if (_server->argName(i).equalsIgnoreCase(PARAM_HW_WIFI_PORTALTIMEOUT))
|
||||
myHardwareConfig.setWifiPortalTimeout(s.toInt());
|
||||
}
|
||||
|
||||
myHardwareConfig.saveFile();
|
||||
|
||||
// Return the current configuration.
|
||||
DynamicJsonDocument doc(512);
|
||||
|
||||
doc[PARAM_HW_GYRO_READ_COUNT] = myHardwareConfig.getGyroReadCount();
|
||||
doc[PARAM_HW_GYRO_READ_DELAY] = myHardwareConfig.getGyroReadDelay();
|
||||
doc[PARAM_HW_GYRO_MOVING_THREASHOLD] =
|
||||
myHardwareConfig.getGyroSensorMovingThreashold();
|
||||
doc[PARAM_HW_FORMULA_DEVIATION] =
|
||||
myHardwareConfig.getMaxFormulaCreationDeviation();
|
||||
doc[PARAM_HW_WIFI_PORTALTIMEOUT] = myHardwareConfig.getWifiPortalTimeout();
|
||||
doc[PARAM_HW_FORMULA_CALIBRATION_TEMP] =
|
||||
myHardwareConfig.getDefaultCalibrationTemp();
|
||||
|
||||
#if LOG_LEVEL == 6 && !defined(WEB_DISABLE_LOGGING)
|
||||
serializeJson(doc, Serial);
|
||||
Serial.print(CR);
|
||||
#endif
|
||||
|
||||
String out;
|
||||
serializeJson(doc, out);
|
||||
_server->send(200, "application/json", out.c_str());
|
||||
LOG_PERF_STOP("webserver-api-device-param");
|
||||
}
|
||||
|
||||
//
|
||||
// Callback from webServer when / has been accessed.
|
||||
//
|
||||
@ -467,25 +531,24 @@ void WebServer::webHandleFormulaRead() {
|
||||
Log.verbose(F("WEB : %s." CR), getRequestArguments().c_str());
|
||||
#endif
|
||||
|
||||
doc[CFG_PARAM_ID] = myConfig.getID();
|
||||
doc[CFG_PARAM_ANGLE] = reduceFloatPrecision(myGyro.getAngle());
|
||||
doc[CFG_PARAM_GRAVITY_FORMAT] = String(myConfig.getGravityFormat());
|
||||
doc[CFG_PARAM_GRAVITY_FORMULA] = "";
|
||||
doc[CFG_PARAM_ERROR] = "";
|
||||
doc[PARAM_ID] = myConfig.getID();
|
||||
doc[PARAM_ANGLE] = reduceFloatPrecision(myGyro.getAngle());
|
||||
doc[PARAM_GRAVITY_FORMAT] = String(myConfig.getGravityFormat());
|
||||
doc[PARAM_GRAVITY_FORMULA] = "";
|
||||
doc[PARAM_ERROR] = "";
|
||||
|
||||
switch (_lastFormulaCreateError) {
|
||||
case ERR_FORMULA_INTERNAL:
|
||||
doc[CFG_PARAM_ERROR] = "Internal error creating formula.";
|
||||
doc[PARAM_ERROR] = "Internal error creating formula.";
|
||||
break;
|
||||
case ERR_FORMULA_NOTENOUGHVALUES:
|
||||
doc[CFG_PARAM_ERROR] = "Not enough values to create formula.";
|
||||
doc[PARAM_ERROR] = "Not enough values to create formula.";
|
||||
break;
|
||||
case ERR_FORMULA_UNABLETOFFIND:
|
||||
doc[CFG_PARAM_ERROR] =
|
||||
"Unable to find an accurate formula based on input.";
|
||||
doc[PARAM_ERROR] = "Unable to find an accurate formula based on input.";
|
||||
break;
|
||||
default:
|
||||
doc[CFG_PARAM_GRAVITY_FORMULA] = myConfig.getGravityFormula();
|
||||
doc[PARAM_GRAVITY_FORMULA] = myConfig.getGravityFormula();
|
||||
break;
|
||||
}
|
||||
|
||||
@ -525,7 +588,7 @@ void WebServer::webHandleFormulaRead() {
|
||||
//
|
||||
void WebServer::webHandleFormulaWrite() {
|
||||
LOG_PERF_START("webserver-api-formula-write");
|
||||
String id = _server->arg(CFG_PARAM_ID);
|
||||
String id = _server->arg(PARAM_ID);
|
||||
Log.notice(F("WEB : webServer callback for /api/formula/post." CR));
|
||||
|
||||
if (!id.equalsIgnoreCase(myConfig.getID())) {
|
||||
@ -745,6 +808,9 @@ bool WebServer::setupWebServer() {
|
||||
_server->on("/api/config/hardware", HTTP_POST,
|
||||
std::bind(&WebServer::webHandleConfigHardware,
|
||||
this)); // Change hardware settings
|
||||
_server->on("/api/device/param", HTTP_GET,
|
||||
std::bind(&WebServer::webHandleDeviceParam,
|
||||
this)); // Change device params
|
||||
|
||||
_server->onNotFound(std::bind(&WebServer::webHandlePageNotFound, this));
|
||||
_server->begin();
|
||||
|
Reference in New Issue
Block a user