struct config_wifi_struct {
char ssid[30];
char pass[30];
char DHCP[5];
char ip[20];
char gt[20];
char mac[20];
char dns[20];
};
bool read_config_wifi(String msg_json_wifi_config){
StaticJsonDocument<300> doc;
DeserializationError error = deserializeJson(doc, msg_json_wifi_config);
if (error) {
Serial.print(F("deserializeJson() failed: "));
Serial.println(error.f_str());
return false;
}
strcpy(doc["ssid"], str.ssid);
strcpy(doc["pass"], str.pass);
strcpy(doc["DHCP"], str.DHCP);
strcpy(doc["gt"], str.gt);
strcpy(doc["mac"], str.mac);
strcpy(doc["dns"], str.dns);
strcpy(doc["ip"], str.ip);
Serial.println(str.ssid);
Serial.println(str.pass);
Serial.println(str.DHCP);
Serial.println(str.gt);
Serial.println(str.mac);
Serial.println(str.dns);
Serial.println(str.ip);
return true;
}
If I do this I get this error
In file included from C:\Users\user\Documents\Arduino\libraries\ArduinoJson\src/ArduinoJson/Array/ArrayIterator.hpp:8:0,
from C:\Users\user\Documents\Arduino\libraries\ArduinoJson\src/ArduinoJson/Array/ArrayRef.hpp:8,
from C:\Users\user\Documents\Arduino\libraries\ArduinoJson\src/ArduinoJson.hpp:24,
from C:\Users\user\Documents\Arduino\libraries\ArduinoJson\src/ArduinoJson.h:9,
from C:\Users\user\Documents\Arduino\wifiLogin\wifiLogin.ino:4:
C:\Users\user\Documents\Arduino\libraries\ArduinoJson\src/ArduinoJson/Variant/VariantRef.hpp: In instantiation of 'ArduinoJson6192_F1::VariantRef::operator T() const [with T = char*]':
C:\Users\user\Documents\Arduino\libraries\ArduinoJson\src/ArduinoJson/Object/MemberProxy.hpp:85:30: required from 'ArduinoJson6192_F1::MemberProxy<TParent, TStringRef>::operator T() const [with T = char*; TObject = ArduinoJson6192_F1::JsonDocument&; TStringRef = const char*]'
C:\Users\user\Documents\Arduino\wifiLogin\wifiLogin.ino:180:31: required from here
C:\Users\user\Documents\Arduino\libraries\ArduinoJson\src/ArduinoJson/Variant/VariantRef.hpp:150:17: error: invalid conversion from 'ArduinoJson6192_F1::enable_if<true, const char*>::type {aka const char*}' to 'char*' [-fpermissive]
return as<T>();