"; ret += cPWR.getPName(); ret += "";
ret += FPSTR(HTTP_BODYSTYLE_PWR); ret += "";
ret += HTTP_DIV_FIELD;
ret += "
Ihre Eingaben wurden gespeichert.
";
ret += "";
ret += HTTP_TEXT_END;
return ret;
}
String WebSaveConfigAdvance(String PostValues){
cPWR.savePostValuesAdvance(PostValues);
String ret = HTTP_ANSWER;
ret += HTTP_HEAD_PWR;
ret += ""; ret += cPWR.getPName(); ret += "";
ret += FPSTR(HTTP_BODYSTYLE_PWR); ret += "";
ret += HTTP_DIV_FIELD;
ret += "
Ihre Eingaben wurden gespeichert.
";
ret += "";
ret += HTTP_TEXT_END;
return ret;
}
String WebSetSetup(){
String ret = HTTP_ANSWER;
ret += HTTP_HEAD_PWR;
ret += ""; ret += cPWR.getPName(); ret += "";
ret += FPSTR(HTTP_BODYSTYLE_PWR); ret += "";
ret += HTTP_DIV_FIELD;
ret += "
Einstellungen
";
ret += "PW-Switch-IP: "; ret += WiFi.localIP().toString(); ret+=" ";
ret += "Signalstärke: "; ret+=WiFi.RSSI(); ret+=" dBm";
ret += "";
ret += "";
ret += "";
ret += "";
ret += "";
ret += "Regler-Version: "; ret += PWRVersion;
ret += " Check for update firmware";
ret += "
";
ret += FPSTR(HTTP_JS_SETUP1);
// ret += "";
return ret;
}
String WebSetSetupAdvance(){
String ret = HTTP_ANSWER;
ret += HTTP_HEAD_PWR;
ret += ""; ret += cPWR.getPName(); ret += "";
ret += FPSTR(HTTP_BODYSTYLE_PWR); ret += "";
ret += HTTP_DIV_FIELD;
ret += "
Weitere Einstellungen
";
ret += " ";
ret += "";
ret += "Regler-Version: "; ret += PWRVersion;
ret += " Check for update firmware
";
// ret += HTTP_TEXT_END;
ret += FPSTR(HTTP_JS_SETUP2);
return ret;
}
String WebGetMainScreen(){
String ret=HTTP_ANSWER;
ret += HTTP_HEAD_PWR;
ret += ""; ret += cPWR.getPName(); ret += "";
ret += FPSTR(HTTP_BODYSTYLE_PWR); ret += "";
ret += HTTP_DIV_FIELD;
ret += "
PW-Switch-Status
";
ret += "
Datum & Zeit: 🔄 ";
ret += getDate2String(_year,_month,_day);
ret += " "; ret+= getTime2String(_hour,_minute,_second); ret+="
";
ret += "";
ret += _TransmitResult;
ret += " ";
ret += _SendResult;
ret += "";
ret += "Kessel-Temperatur: "; ret+=_temperature0; ret += " °C ";
ret += "Heizstab-Temperatur: "; ret+=_temperature1; ret += " °C";
ret += "
"; ret += cPWR.getPName(); ret += " aktiv: ";
if(cPWR.getAutomatic()) ret +="✅"; else ret += "😞";
ret += " Verbunden mit Zähler: ";
if(_receivedOK == true)ret += "✅"; // show a red bubble when meter not connected
else ret += "😞";
if(cPWR.getSend2Server()) ret += " Sende Daten: ✅";
ret +="
";
ret += "Status Pumpe: ";if(digitalRead(CirculationPump))ret += "✅";else ret += "⛔"; // show status of pump
ret += " Status Relais: ";if(digitalRead(SecureRELAIS))ret += "✅";else ret += "⛔"; // show status of relais1
ret += "
";
ret += "Diff. RegelValue: "; ret+= _controlValue; ret+=" ";
ret += "Regel-Leistung: "; ret+=relais.PWM_Power; ret+=" W ";
#ifdef CHECK_CONSUMPTION
ret += "Messung Leistung: "; ret+=_actualConsumptionCheck; ret += " W ";
#endif
ret += "Tages Leistung: "; ret+=_sumConsumption/(float)cPWR.FactorKWH; ret+=" kWh ";
ret += " Aktuelle Leistung: "; ret+=_actualConsumption; ret += " W ";
// if(cPWR.getAutomatic()){
ret += "U-Pumpe AN < "; ret+=cPWR.getValuePumpOn(); ret+=" W ";
ret += "Regelwert = "; ret+=cPWR.getValueREG(); ret+=" W ";
ret += "Abschalten > "; ret+=cPWR.getValueOFF(); ret+=" W ";
ret += HTTP_DIAGRAM_BUTTON;
// ret += "Temperatur vorher: "; ret += relais.temperatureBefore; ret+=" ";
// ret += cPWR.maxTemperatur(); ret+=" ";
if(_masterPWM != 0){ret += "Reglermodus: Slave "; ret +="Master PWM value: "; ret +=_masterPWM; ret +=" ";}
int pumpOffTime=relais.getPumpOffTime();
if(pumpOffTime>0 && relais.PWMvalue==255){
ret += "Pumpe aus in: "; ret+=pumpOffTime; ret+=" min";
}
int pumpOnTime=relais.getPumpOnTime();
if(pumpOnTime>0){
ret += "Pumpe wieder ein in: "; ret+=pumpOnTime; ret+=" min";
}
ret += "";
ret += "Protokoll Errors: "; ret+= _errorCount; ret+=" ";
if(cPWR.SendMQTT==1){
ret += "
MQTT Client ist eingeschaltet.
";
} else {
ret += "
MQTT Client ist ausgeschaltet.
";
}
if(_mqttBrokerOK==0 && cPWR.SendMQTT==1){
ret += "
🔴Error: MQTT Broker ist nicht erreichbar! Oder Nutzer und Passwort sind nicht erlaubt. Neuer Verbindungsversuch in "; ret+=_mqttWaitTime2Connect; ret+=" Sekunden.
";
}
//*** create button auto-toggle switch ***
ret += "";
//*** button end ***
ret += HTTP_SETUP_BUTTON;
//ret += "Text\n";
ret += "
";
ret += "\n";
ret += "";
ret += FPSTR(HTTP_JS_SCRIPT);
return ret;
}
String WebGetMemory(){
String ret = HTTP_ANSWER;
ret += "Free space: "; ret += cPWR.FREESPACE; ret += " ";
ret += " "; ret += cPWR.readDir(); ret += " ";
#ifdef ShowIniFile
File Fconfig = LittleFS.open("/configPMW.ini","r");
if (Fconfig){
ret+=Fconfig.readString();
Fconfig.close();
} else ret +="File empty";
#endif
ret += HTTP_TEXT_END;
return ret;
}
String webSetTime(){
String ret = HTTP_ANSWER;
ret += HTTP_HEAD_PWR;
ret += FPSTR(HTTP_BODYSTYLE_PWR); ret += "";
ret += HTTP_DIV_FIELD;
ret += "
Die Uhr wird jetzt neu synchronisiert.
";
ret += "
Zeit:
";
ret += "Unix-Time: "; ret += _timestamp; ret +=" ";
if (syncron_NTP_Time() == true){
getTime2Value(_timestamp);
ret += "Neue Zeit:
";
ret += "Unix-Time: "; ret += _timestamp; ret +=" ";
} else {
ret += "NTP Serverfehler! Aktuallisierung nicht erfolgt. Bitte eine Wartezeit von 2 Minuten, bis zur wiederholten, manuellen Aktuallisierung einhalten. ";
}
ret += "
";
ret += HTTP_TEXT_END;
return ret;
}
String WebHelpRestEndpoints(){
String ret = HTTP_ANSWER;
ret += "RestEndPoints /status /ontime /refresh /reOn /reOff /pumpOff /pumpOn /save /setup /advance ";
ret += "/saveAdvance /searchLogger /memory /shutDown /autoON /autoOFF /autoToggle /help /setWIFI /infPWM /consumption ";
ret += "/sendHistoryNow /sendOnAuto /firmware /setTime /getKWH";
ret += HTTP_TEXT_END;
return ret;
}
String WebShutDown(){
// saveHistoryStatus(SHUTDOWN);
// cPWR.saveHistory(getRawHistory());
String ret = HTTP_ANSWER;
ret += "Restart power-regler now! ";
ret += HTTP_TEXT_END;
delay(500);
ESP.restart();
return ret;
}
//************** show some infos on web-client *****************************
byte getHexChar(byte b){
b=b & 0x0f; // cut the higher part
if(b>9){ // HEX A-F
b=b-9;
b=b+0x40;
}else{ // HEX 0-9
b=b+0x30;
}
return b;
}
String convByte2Hex(byte b){
String r;
r+=(char)getHexChar(b>>4);
r+=(char)getHexChar(b);
return r;
}
String webStatusInfos(){
String ret = HTTP_ANSWER;
ret += HTTP_HEAD_PWR;
ret += FPSTR(HTTP_BODYSTYLE_PWR); ret += "";
ret += HTTP_DIV_FIELD;
ret += "
WIFI Connect Infos
";
ret += "SSID: "; ret += WiFi.SSID(); ret += " ";
uint8_t mac[6];
uint8_t *bssid = WiFi.BSSID();
ret += "BSSID: ";
for(int i=0;i<=5;i++){ret+=convByte2Hex(*bssid++); if(i<5)ret += ":";}
ret += " ";
WiFi.macAddress(mac);
ret += "IoT-MAC: ";
for(int i=0;i<=5;i++){ret+=convByte2Hex(mac[i]); if(i<5)ret += ":";}
ret += " ";
ret += "IoT-IP: "; ret += WiFi.localIP().toString(); ret+=" ";
ret += "Gateway-IP: "; ret += WiFi.gatewayIP().toString(); ret+=" ";
ret += "Subnetmask: "; ret += WiFi.subnetMask().toString(); ret+=" ";
ret += "Signalstärke: "; ret += WiFi.RSSI(); ret+=" dBm ";
ret += "
Status/Debug Infos
";
ret += "
";
ret += "";
ret += HTTP_TEXT_END;
return ret;
}
String ShowSetup(){
return "";
}
String NewUpdate(String updateFile){
return "";
}
//*** end ***
#endif //*** WEB_CLIENT_H_