diff --git a/data/index.html b/data/index.html
index 6023998..f6e4f2c 100644
--- a/data/index.html
+++ b/data/index.html
@@ -41,7 +41,7 @@
-
+
diff --git a/include/dwdwx.h b/include/dwdwx.h
index fbb3b18..85f5f39 100644
--- a/include/dwdwx.h
+++ b/include/dwdwx.h
@@ -20,8 +20,6 @@ private:
bool _dirty;
unsigned long lastCheck = 0;
unsigned long checkInterval = 300000;
- String lastMessage;
-
String dwdwxData;
// String dashboardUrl;
String url;
diff --git a/src/dwdwx.cpp b/src/dwdwx.cpp
index 0b990d4..4f7c8ab 100644
--- a/src/dwdwx.cpp
+++ b/src/dwdwx.cpp
@@ -9,7 +9,7 @@ DWDWXClient::DWDWXClient(WiFiClient *client)
void DWDWXClient::begin(int intervalMinutes, float latitude, float longitude)
{
// this->message =
- this->url = "https://api.open-meteo.com/v1/forecast?latitude=";
+ this->url = "http://api.open-meteo.com/v1/forecast?latitude=";
this->url.concat(latitude);
this->url.concat("&longitude=");
this->url.concat(longitude);
@@ -42,7 +42,7 @@ bool DWDWXClient::check()
{
Serial.println("[DWDWX]: checking " + this->url);
this->_http.begin(this->url);
-
+ this->_http.setConnectTimeout(15e3);
int httpCode = this->_http.GET();
if (httpCode > 0)
@@ -55,11 +55,7 @@ bool DWDWXClient::check()
}
this->currentMessage = this->parseJSON(this->dwdwxData);
Serial.println("[DWDWX]: Current Message = " + this->currentMessage);
- if (this->currentMessage.equals(this->lastMessage) == false)
- {
- this->_dirty = true;
- this->lastMessage = this->currentMessage;
- }
+ this->_dirty = true;
this->_http.end();
return true;
}
@@ -92,11 +88,11 @@ String DWDWXClient::parseJSON(String jsonData)
doc[keyCurrent][keyWX_Temperature].as(), doc[keyCurrent][keyWX_Humidity].as(),
doc[keyCurrent][keyWX_WindDir].as(), doc[keyCurrent][keyWX_WindSpeed].as(),
doc[keyCurrent][keyWX_WindGusts].as(), doc[keyCurrent][keyWX_PressureMSL].as(),
- doc[keyCurrent][keyWX_CloudCover].as()
+ doc[keyCurrent][keyWX_CloudCover].as()
);
wxRes.clear();
wxRes.concat(wx_messageBuffer);
- delete []wx_messageBuffer;
+ // delete []wx_messageBuffer;
return wxRes;
}
return emptyString;
diff --git a/src/main.cpp b/src/main.cpp
index 5da5f07..023771b 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -400,7 +400,7 @@ void setup_broadcasts()
#ifdef SMART_POC_MODULE_DWD_WX
// DWD
if (globcfg.dwdwx_enable)
- dwdWXClient.begin(5, globcfg.dwdwx_lat, globcfg.dwdwx_lng);
+ dwdWXClient.begin(60*6, globcfg.dwdwx_lat, globcfg.dwdwx_lng);
#endif
#ifdef SMART_POC_MODULE_MOWAS
// MoWaS
@@ -453,8 +453,7 @@ void broadcast_loop()
#endif
char *messageText = new char[currentMessage.length() + 1]{};
currentMessage.toCharArray(messageText, currentMessage.length() + 1);
- Serial.println(F("[DWD-WX] Transmitting Warning"));
- Serial.println(messageText);
+ Serial.println(F("[DWD-WX] Transmitting"));
transmitter.queuePage(globcfg.broadcast_ric, globcfg.dwdwx_fun + 0, messageText);
delete []messageText;
dwdWXClient.currentMessage.clear();
diff --git a/src/webserver.cpp b/src/webserver.cpp
index 8413d30..92c4c96 100644
--- a/src/webserver.cpp
+++ b/src/webserver.cpp
@@ -394,19 +394,19 @@ static void redirectHomeResponse(AsyncWebServerRequest *request, String location
bool idle_enable;
int idle_interval, idle_mode;
cfg_startTransaction();
- if (request->hasArg("idle_enable")) {
- idle_enable = request->arg("idle_enable").equals("on");
- cfg_adjust("idle_enable", idle_enable);
+ if (request->hasArg(cfgKeyIdleEnable.c_str())) {
+ idle_enable = request->arg(cfgKeyIdleEnable).equals("on");
+ cfg_adjust(cfgKeyIdleEnable, idle_enable);
} else {
- cfg_adjust("idle_enable", false);
+ cfg_adjust(cfgKeyIdleEnable, false);
}
- if (request->hasArg("idle_interval")) {
- idle_interval = request->arg("idle_interval").toInt();
- cfg_adjust("idle_interval", idle_interval);
+ if (request->hasArg(cfgKeyIdleInterval.c_str())) {
+ idle_interval = request->arg(cfgKeyIdleInterval).toInt();
+ cfg_adjust(cfgKeyIdleInterval, idle_interval);
}
- if (request->hasArg("idle_mode")) {
- idle_mode = request->arg("idle_mode").toInt();
- cfg_adjust("idle_mode", idle_mode);
+ if (request->hasArg(cfgKeyIdleMode.c_str())) {
+ idle_mode = request->arg(cfgKeyIdleMode).toInt();
+ cfg_adjust(cfgKeyIdleMode, idle_mode);
}
cfg_write();
redirectHomeResponse(request, "/#idle");