forked from airgradienthq/arduino
Add config to disableCloudConnection functions
This commit is contained in:
@ -47,6 +47,7 @@ JSON_PROP_DEF(mqttBrokerUrl);
|
|||||||
JSON_PROP_DEF(temperatureUnit);
|
JSON_PROP_DEF(temperatureUnit);
|
||||||
JSON_PROP_DEF(configurationControl);
|
JSON_PROP_DEF(configurationControl);
|
||||||
JSON_PROP_DEF(postDataToAirGradient);
|
JSON_PROP_DEF(postDataToAirGradient);
|
||||||
|
JSON_PROP_DEF(disableCloudConnection);
|
||||||
JSON_PROP_DEF(ledBarBrightness);
|
JSON_PROP_DEF(ledBarBrightness);
|
||||||
JSON_PROP_DEF(displayBrightness);
|
JSON_PROP_DEF(displayBrightness);
|
||||||
JSON_PROP_DEF(co2CalibrationRequested);
|
JSON_PROP_DEF(co2CalibrationRequested);
|
||||||
@ -66,6 +67,7 @@ JSON_PROP_DEF(corrections);
|
|||||||
#define jprop_temperatureUnit_default "c"
|
#define jprop_temperatureUnit_default "c"
|
||||||
#define jprop_configurationControl_default String(CONFIGURATION_CONTROL_NAME[ConfigurationControl::ConfigurationControlBoth])
|
#define jprop_configurationControl_default String(CONFIGURATION_CONTROL_NAME[ConfigurationControl::ConfigurationControlBoth])
|
||||||
#define jprop_postDataToAirGradient_default true
|
#define jprop_postDataToAirGradient_default true
|
||||||
|
#define jprop_disableCloudConnection_default false
|
||||||
#define jprop_ledBarBrightness_default 100
|
#define jprop_ledBarBrightness_default 100
|
||||||
#define jprop_displayBrightness_default 100
|
#define jprop_displayBrightness_default 100
|
||||||
#define jprop_offlineMode_default false
|
#define jprop_offlineMode_default false
|
||||||
@ -272,6 +274,7 @@ void Configuration::defaultConfig(void) {
|
|||||||
jconfig[jprop_configurationControl] = jprop_configurationControl_default;
|
jconfig[jprop_configurationControl] = jprop_configurationControl_default;
|
||||||
jconfig[jprop_pmStandard] = jprop_pmStandard_default;
|
jconfig[jprop_pmStandard] = jprop_pmStandard_default;
|
||||||
jconfig[jprop_temperatureUnit] = jprop_temperatureUnit_default;
|
jconfig[jprop_temperatureUnit] = jprop_temperatureUnit_default;
|
||||||
|
jconfig[jprop_disableCloudConnection] = jprop_disableCloudConnection_default;
|
||||||
jconfig[jprop_postDataToAirGradient] = jprop_postDataToAirGradient_default;
|
jconfig[jprop_postDataToAirGradient] = jprop_postDataToAirGradient_default;
|
||||||
if (ag->isOne()) {
|
if (ag->isOne()) {
|
||||||
jconfig[jprop_ledBarBrightness] = jprop_ledBarBrightness_default;
|
jconfig[jprop_ledBarBrightness] = jprop_ledBarBrightness_default;
|
||||||
@ -1167,6 +1170,18 @@ void Configuration::toConfig(const char *buf) {
|
|||||||
logInfo("toConfig: temperatureUnit changed");
|
logInfo("toConfig: temperatureUnit changed");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** validate disableCloudConnection configuration */
|
||||||
|
if (JSON.typeof_(jconfig[jprop_disableCloudConnection]) != "boolean") {
|
||||||
|
isInvalid = true;
|
||||||
|
} else {
|
||||||
|
isInvalid = false;
|
||||||
|
}
|
||||||
|
if (isInvalid) {
|
||||||
|
jconfig[jprop_disableCloudConnection] = jprop_disableCloudConnection_default;
|
||||||
|
changed = true;
|
||||||
|
logInfo("toConfig: disableCloudConnection changed");
|
||||||
|
}
|
||||||
|
|
||||||
/** validate configuration control */
|
/** validate configuration control */
|
||||||
if (JSON.typeof_(jprop_configurationControl) != "string") {
|
if (JSON.typeof_(jprop_configurationControl) != "string") {
|
||||||
isInvalid = true;
|
isInvalid = true;
|
||||||
@ -1334,6 +1349,17 @@ void Configuration::setOfflineModeWithoutSave(bool offline) {
|
|||||||
_offlineMode = offline;
|
_offlineMode = offline;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool Configuration::isCloudConnectionDisabled(void) {
|
||||||
|
bool disabled = jconfig[jprop_disableCloudConnection];
|
||||||
|
return disabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Configuration::setDisableCloudConnection(bool disable) {
|
||||||
|
logInfo("Set DisableCloudConnection to " + String(disable ? "True" : "False"));
|
||||||
|
jconfig[jprop_disableCloudConnection] = disable;
|
||||||
|
saveConfig();
|
||||||
|
}
|
||||||
|
|
||||||
bool Configuration::isLedBarModeChanged(void) {
|
bool Configuration::isLedBarModeChanged(void) {
|
||||||
bool changed = _ledBarModeChanged;
|
bool changed = _ledBarModeChanged;
|
||||||
_ledBarModeChanged = false;
|
_ledBarModeChanged = false;
|
||||||
|
@ -94,6 +94,8 @@ public:
|
|||||||
bool isOfflineMode(void);
|
bool isOfflineMode(void);
|
||||||
void setOfflineMode(bool offline);
|
void setOfflineMode(bool offline);
|
||||||
void setOfflineModeWithoutSave(bool offline);
|
void setOfflineModeWithoutSave(bool offline);
|
||||||
|
bool isCloudConnectionDisabled(void);
|
||||||
|
void setDisableCloudConnection(bool disable);
|
||||||
bool isLedBarModeChanged(void);
|
bool isLedBarModeChanged(void);
|
||||||
bool isMonitorDisplayCompensatedValues(void);
|
bool isMonitorDisplayCompensatedValues(void);
|
||||||
bool isPMCorrectionChanged(void);
|
bool isPMCorrectionChanged(void);
|
||||||
|
Reference in New Issue
Block a user