diff --git a/platformio.ini b/platformio.ini index 93fbfed7..99b67634 100644 --- a/platformio.ini +++ b/platformio.ini @@ -40,7 +40,7 @@ build_unflags = lib_deps = mathieucarbou/ESPAsyncWebServer @ 3.3.1 - bblanchon/ArduinoJson @ 7.1.0 + bblanchon/ArduinoJson @ 7.2.0 https://github.com/bertmelis/espMqttClient.git#v1.7.0 nrf24/RF24 @ 1.4.9 olikraus/U8g2 @ 2.35.30 diff --git a/src/WebApi_config.cpp b/src/WebApi_config.cpp index 759b6b24..8d0e7a08 100644 --- a/src/WebApi_config.cpp +++ b/src/WebApi_config.cpp @@ -61,7 +61,7 @@ void WebApiConfigClass::onConfigDelete(AsyncWebServerRequest* request) auto& retMsg = response->getRoot(); - if (!(root.containsKey("delete"))) { + if (!(root["delete"].is())) { retMsg["message"] = "Values are missing!"; retMsg["code"] = WebApiError::GenericValueMissing; WebApi.sendJsonResponse(request, response, __FUNCTION__, __LINE__); diff --git a/src/WebApi_device.cpp b/src/WebApi_device.cpp index 078d5b4a..7c713758 100644 --- a/src/WebApi_device.cpp +++ b/src/WebApi_device.cpp @@ -103,8 +103,8 @@ void WebApiDeviceClass::onDeviceAdminPost(AsyncWebServerRequest* request) auto& retMsg = response->getRoot(); - if (!(root.containsKey("curPin") - || root.containsKey("display"))) { + if (!(root["curPin"].is() + || root["display"].is())) { retMsg["message"] = "Values are missing!"; retMsg["code"] = WebApiError::GenericValueMissing; WebApi.sendJsonResponse(request, response, __FUNCTION__, __LINE__); diff --git a/src/WebApi_dtu.cpp b/src/WebApi_dtu.cpp index 9b67ec39..6ba8259b 100644 --- a/src/WebApi_dtu.cpp +++ b/src/WebApi_dtu.cpp @@ -90,12 +90,12 @@ void WebApiDtuClass::onDtuAdminPost(AsyncWebServerRequest* request) auto& retMsg = response->getRoot(); - if (!(root.containsKey("serial") - && root.containsKey("pollinterval") - && root.containsKey("nrf_palevel") - && root.containsKey("cmt_palevel") - && root.containsKey("cmt_frequency") - && root.containsKey("cmt_country"))) { + if (!(root["serial"].is() + && root["pollinterval"].is() + && root["nrf_palevel"].is() + && root["cmt_palevel"].is() + && root["cmt_frequency"].is() + && root["cmt_country"].is())) { retMsg["message"] = "Values are missing!"; retMsg["code"] = WebApiError::GenericValueMissing; WebApi.sendJsonResponse(request, response, __FUNCTION__, __LINE__); diff --git a/src/WebApi_inverter.cpp b/src/WebApi_inverter.cpp index 5a8585f7..4e8fc53a 100644 --- a/src/WebApi_inverter.cpp +++ b/src/WebApi_inverter.cpp @@ -95,8 +95,8 @@ void WebApiInverterClass::onInverterAdd(AsyncWebServerRequest* request) auto& retMsg = response->getRoot(); - if (!(root.containsKey("serial") - && root.containsKey("name"))) { + if (!(root["serial"].is() + && root["name"].is())) { retMsg["message"] = "Values are missing!"; retMsg["code"] = WebApiError::GenericValueMissing; WebApi.sendJsonResponse(request, response, __FUNCTION__, __LINE__); @@ -165,7 +165,10 @@ void WebApiInverterClass::onInverterEdit(AsyncWebServerRequest* request) auto& retMsg = response->getRoot(); - if (!(root.containsKey("id") && root.containsKey("serial") && root.containsKey("name") && root.containsKey("channel"))) { + if (!(root["id"].is() + && root["serial"].is() + && root["name"].is() + && root["channel"].is())) { retMsg["message"] = "Values are missing!"; retMsg["code"] = WebApiError::GenericValueMissing; WebApi.sendJsonResponse(request, response, __FUNCTION__, __LINE__); @@ -281,7 +284,7 @@ void WebApiInverterClass::onInverterDelete(AsyncWebServerRequest* request) auto& retMsg = response->getRoot(); - if (!(root.containsKey("id"))) { + if (!(root["id"].is())) { retMsg["message"] = "Values are missing!"; retMsg["code"] = WebApiError::GenericValueMissing; WebApi.sendJsonResponse(request, response, __FUNCTION__, __LINE__); @@ -323,7 +326,7 @@ void WebApiInverterClass::onInverterOrder(AsyncWebServerRequest* request) auto& retMsg = response->getRoot(); - if (!(root.containsKey("order"))) { + if (!(root["order"].is())) { retMsg["message"] = "Values are missing!"; retMsg["code"] = WebApiError::GenericValueMissing; WebApi.sendJsonResponse(request, response, __FUNCTION__, __LINE__); diff --git a/src/WebApi_limit.cpp b/src/WebApi_limit.cpp index 6a6c90ca..e3f53ae0 100644 --- a/src/WebApi_limit.cpp +++ b/src/WebApi_limit.cpp @@ -64,9 +64,9 @@ void WebApiLimitClass::onLimitPost(AsyncWebServerRequest* request) auto& retMsg = response->getRoot(); - if (!(root.containsKey("serial") - && root.containsKey("limit_value") - && root.containsKey("limit_type"))) { + if (!(root["serial"].is() + && root["limit_value"].is() + && root["limit_type"].is())) { retMsg["message"] = "Values are missing!"; retMsg["code"] = WebApiError::GenericValueMissing; WebApi.sendJsonResponse(request, response, __FUNCTION__, __LINE__); diff --git a/src/WebApi_maintenance.cpp b/src/WebApi_maintenance.cpp index 1504f9d7..c7d254b8 100644 --- a/src/WebApi_maintenance.cpp +++ b/src/WebApi_maintenance.cpp @@ -30,7 +30,7 @@ void WebApiMaintenanceClass::onRebootPost(AsyncWebServerRequest* request) auto& retMsg = response->getRoot(); - if (!(root.containsKey("reboot"))) { + if (!(root["reboot"].is())) { retMsg["message"] = "Values are missing!"; retMsg["code"] = WebApiError::GenericValueMissing; WebApi.sendJsonResponse(request, response, __FUNCTION__, __LINE__); diff --git a/src/WebApi_mqtt.cpp b/src/WebApi_mqtt.cpp index af40643e..0c8ee5c6 100644 --- a/src/WebApi_mqtt.cpp +++ b/src/WebApi_mqtt.cpp @@ -107,29 +107,29 @@ void WebApiMqttClass::onMqttAdminPost(AsyncWebServerRequest* request) auto& retMsg = response->getRoot(); - if (!(root.containsKey("mqtt_enabled") - && root.containsKey("mqtt_hostname") - && root.containsKey("mqtt_port") - && root.containsKey("mqtt_clientid") - && root.containsKey("mqtt_username") - && root.containsKey("mqtt_password") - && root.containsKey("mqtt_topic") - && root.containsKey("mqtt_retain") - && root.containsKey("mqtt_tls") - && root.containsKey("mqtt_tls_cert_login") - && root.containsKey("mqtt_client_cert") - && root.containsKey("mqtt_client_key") - && root.containsKey("mqtt_lwt_topic") - && root.containsKey("mqtt_lwt_online") - && root.containsKey("mqtt_lwt_offline") - && root.containsKey("mqtt_lwt_qos") - && root.containsKey("mqtt_publish_interval") - && root.containsKey("mqtt_clean_session") - && root.containsKey("mqtt_hass_enabled") - && root.containsKey("mqtt_hass_expire") - && root.containsKey("mqtt_hass_retain") - && root.containsKey("mqtt_hass_topic") - && root.containsKey("mqtt_hass_individualpanels"))) { + if (!(root["mqtt_enabled"].is() + && root["mqtt_hostname"].is() + && root["mqtt_port"].is() + && root["mqtt_clientid"].is() + && root["mqtt_username"].is() + && root["mqtt_password"].is() + && root["mqtt_topic"].is() + && root["mqtt_retain"].is() + && root["mqtt_tls"].is() + && root["mqtt_tls_cert_login"].is() + && root["mqtt_client_cert"].is() + && root["mqtt_client_key"].is() + && root["mqtt_lwt_topic"].is() + && root["mqtt_lwt_online"].is() + && root["mqtt_lwt_offline"].is() + && root["mqtt_lwt_qos"].is() + && root["mqtt_publish_interval"].is() + && root["mqtt_clean_session"].is() + && root["mqtt_hass_enabled"].is() + && root["mqtt_hass_expire"].is() + && root["mqtt_hass_retain"].is() + && root["mqtt_hass_topic"].is() + && root["mqtt_hass_individualpanels"].is())) { retMsg["message"] = "Values are missing!"; retMsg["code"] = WebApiError::GenericValueMissing; WebApi.sendJsonResponse(request, response, __FUNCTION__, __LINE__); diff --git a/src/WebApi_network.cpp b/src/WebApi_network.cpp index 7fec44b2..75275755 100644 --- a/src/WebApi_network.cpp +++ b/src/WebApi_network.cpp @@ -88,16 +88,16 @@ void WebApiNetworkClass::onNetworkAdminPost(AsyncWebServerRequest* request) auto& retMsg = response->getRoot(); - if (!(root.containsKey("ssid") - && root.containsKey("password") - && root.containsKey("hostname") - && root.containsKey("dhcp") - && root.containsKey("ipaddress") - && root.containsKey("netmask") - && root.containsKey("gateway") - && root.containsKey("dns1") - && root.containsKey("dns2") - && root.containsKey("aptimeout"))) { + if (!(root["ssid"].is() + && root["password"].is() + && root["hostname"].is() + && root["dhcp"].is() + && root["ipaddress"].is() + && root["netmask"].is() + && root["gateway"].is() + && root["dns1"].is() + && root["dns2"].is() + && root["aptimeout"].is())) { retMsg["message"] = "Values are missing!"; retMsg["code"] = WebApiError::GenericValueMissing; WebApi.sendJsonResponse(request, response, __FUNCTION__, __LINE__); diff --git a/src/WebApi_ntp.cpp b/src/WebApi_ntp.cpp index d50e0f02..5dc874b5 100644 --- a/src/WebApi_ntp.cpp +++ b/src/WebApi_ntp.cpp @@ -100,11 +100,11 @@ void WebApiNtpClass::onNtpAdminPost(AsyncWebServerRequest* request) auto& retMsg = response->getRoot(); - if (!(root.containsKey("ntp_server") - && root.containsKey("ntp_timezone") - && root.containsKey("longitude") - && root.containsKey("latitude") - && root.containsKey("sunsettype"))) { + if (!(root["ntp_server"].is() + && root["ntp_timezone"].is() + && root["longitude"].is() + && root["latitude"].is() + && root["sunsettype"].is())) { retMsg["message"] = "Values are missing!"; retMsg["code"] = WebApiError::GenericValueMissing; WebApi.sendJsonResponse(request, response, __FUNCTION__, __LINE__); @@ -193,12 +193,12 @@ void WebApiNtpClass::onNtpTimePost(AsyncWebServerRequest* request) auto& retMsg = response->getRoot(); - if (!(root.containsKey("year") - && root.containsKey("month") - && root.containsKey("day") - && root.containsKey("hour") - && root.containsKey("minute") - && root.containsKey("second"))) { + if (!(root["year"].is() + && root["month"].is() + && root["day"].is() + && root["hour"].is() + && root["minute"].is() + && root["second"].is())) { retMsg["message"] = "Values are missing!"; retMsg["code"] = WebApiError::GenericValueMissing; WebApi.sendJsonResponse(request, response, __FUNCTION__, __LINE__); diff --git a/src/WebApi_power.cpp b/src/WebApi_power.cpp index b2b2ce42..83e7fac6 100644 --- a/src/WebApi_power.cpp +++ b/src/WebApi_power.cpp @@ -57,9 +57,9 @@ void WebApiPowerClass::onPowerPost(AsyncWebServerRequest* request) auto& retMsg = response->getRoot(); - if (!(root.containsKey("serial") - && (root.containsKey("power") - || root.containsKey("restart")))) { + if (!(root["serial"].is() + && (root["power"].is() + || root["restart"].is()))) { retMsg["message"] = "Values are missing!"; retMsg["code"] = WebApiError::GenericValueMissing; WebApi.sendJsonResponse(request, response, __FUNCTION__, __LINE__); @@ -84,8 +84,8 @@ void WebApiPowerClass::onPowerPost(AsyncWebServerRequest* request) return; } - if (root.containsKey("power")) { - uint16_t power = root["power"].as(); + if (root["power"].is()) { + bool power = root["power"].as(); inv->sendPowerControlRequest(power); } else { if (root["restart"].as()) { diff --git a/src/WebApi_security.cpp b/src/WebApi_security.cpp index eb0f27d2..ddd8bb50 100644 --- a/src/WebApi_security.cpp +++ b/src/WebApi_security.cpp @@ -48,8 +48,8 @@ void WebApiSecurityClass::onSecurityPost(AsyncWebServerRequest* request) auto& retMsg = response->getRoot(); - if (!root.containsKey("password") - && root.containsKey("allow_readonly")) { + if (!root["password"].is() + && root["allow_readonly"].is()) { retMsg["message"] = "Values are missing!"; retMsg["code"] = WebApiError::GenericValueMissing; WebApi.sendJsonResponse(request, response, __FUNCTION__, __LINE__);