booleans for system-info

This commit is contained in:
MichaelDvP
2020-09-25 09:07:24 +02:00
parent 35864a52c3
commit 3e66696ef5
3 changed files with 20 additions and 14 deletions

View File

@@ -123,7 +123,7 @@ char * Helpers::smallitoa(char * result, const uint16_t value) {
} }
// work out how to display booleans // work out how to display booleans
void Helpers::render_boolean(char * result, bool value) { char * Helpers::render_boolean(char * result, bool value) {
if (bool_format() == 1) { if (bool_format() == 1) {
strlcpy(result, value ? "on" : "off", 5); strlcpy(result, value ? "on" : "off", 5);
} else if (bool_format() == 2) { } else if (bool_format() == 2) {
@@ -131,6 +131,7 @@ void Helpers::render_boolean(char * result, bool value) {
} else { } else {
strlcpy(result, value ? "1" : "0", 2); strlcpy(result, value ? "1" : "0", 2);
} }
return result;
} }
// convert unsigned int (single byte) to text value and returns it // convert unsigned int (single byte) to text value and returns it

View File

@@ -38,7 +38,7 @@ class Helpers {
static char * render_value(char * result, const uint32_t value, const uint8_t format); static char * render_value(char * result, const uint32_t value, const uint8_t format);
static char * render_value(char * result, const int16_t value, const uint8_t format); static char * render_value(char * result, const int16_t value, const uint8_t format);
static void render_boolean(char * result, bool value); static char * render_boolean(char * result, bool value);
static char * smallitoa(char * result, const uint8_t value); static char * smallitoa(char * result, const uint8_t value);
static char * smallitoa(char * result, const uint16_t value); static char * smallitoa(char * result, const uint16_t value);

View File

@@ -830,11 +830,12 @@ bool System::command_info(const char * value, const int8_t id, JsonObject & outp
#else #else
EMSESP::esp8266React.getWiFiSettingsService()->read([&](WiFiSettings & settings) { EMSESP::esp8266React.getWiFiSettingsService()->read([&](WiFiSettings & settings) {
char s[7];
JsonObject node = output.createNestedObject("WIFI"); JsonObject node = output.createNestedObject("WIFI");
node["ssid"] = settings.ssid; node["ssid"] = settings.ssid;
// node["password"] = settings.password; // node["password"] = settings.password;
node["hostname"] = settings.hostname; node["hostname"] = settings.hostname;
node["static_ip_config"] = settings.staticIPConfig; node["static_ip_config"] = Helpers::render_boolean(s, settings.staticIPConfig);
JsonUtils::writeIP(node, "local_ip", settings.localIP); JsonUtils::writeIP(node, "local_ip", settings.localIP);
JsonUtils::writeIP(node, "gateway_ip", settings.gatewayIP); JsonUtils::writeIP(node, "gateway_ip", settings.gatewayIP);
JsonUtils::writeIP(node, "subnet_mask", settings.subnetMask); JsonUtils::writeIP(node, "subnet_mask", settings.subnetMask);
@@ -853,17 +854,18 @@ bool System::command_info(const char * value, const int8_t id, JsonObject & outp
}); });
EMSESP::esp8266React.getMqttSettingsService()->read([&](MqttSettings & settings) { EMSESP::esp8266React.getMqttSettingsService()->read([&](MqttSettings & settings) {
char s[7];
JsonObject node = output.createNestedObject("MQTT"); JsonObject node = output.createNestedObject("MQTT");
node["enabled"] = settings.enabled; node["enabled"] = Helpers::render_boolean(s, settings.enabled);
node["host"] = settings.host; node["host"] = settings.host;
node["port"] = settings.port; node["port"] = settings.port;
node["username"] = settings.username; node["username"] = settings.username;
// node["password"] = settings.password; // node["password"] = settings.password;
node["client_id"] = settings.clientId; node["client_id"] = settings.clientId;
node["keep_alive"] = settings.keepAlive; node["keep_alive"] = settings.keepAlive;
node["clean_session"] = settings.cleanSession; node["clean_session"] = Helpers::render_boolean(s, settings.cleanSession);
node["max_topic_length"] = settings.maxTopicLength; node["max_topic_length"] = settings.maxTopicLength;
node["system_heartbeat"] = settings.system_heartbeat; node["system_heartbeat"] = Helpers::render_boolean(s, settings.system_heartbeat);
node["publish_time_boiler"] = settings.publish_time_boiler; node["publish_time_boiler"] = settings.publish_time_boiler;
node["publish_time_thermostat"] = settings.publish_time_thermostat; node["publish_time_thermostat"] = settings.publish_time_thermostat;
node["publish_time_solar"] = settings.publish_time_solar; node["publish_time_solar"] = settings.publish_time_solar;
@@ -872,25 +874,28 @@ bool System::command_info(const char * value, const int8_t id, JsonObject & outp
node["publish_time_sensor"] = settings.publish_time_sensor; node["publish_time_sensor"] = settings.publish_time_sensor;
node["mqtt_format"] = settings.mqtt_format; node["mqtt_format"] = settings.mqtt_format;
node["mqtt_qos"] = settings.mqtt_qos; node["mqtt_qos"] = settings.mqtt_qos;
node["mqtt_retain"] = settings.mqtt_retain; node["mqtt_retain"] = Helpers::render_boolean(s, settings.mqtt_retain);
}); });
EMSESP::esp8266React.getNTPSettingsService()->read([&](NTPSettings & settings) { EMSESP::esp8266React.getNTPSettingsService()->read([&](NTPSettings & settings) {
char s[7];
JsonObject node = output.createNestedObject("NTP"); JsonObject node = output.createNestedObject("NTP");
node["enabled"] = settings.enabled; node["enabled"] = Helpers::render_boolean(s, settings.enabled);
node["server"] = settings.server; node["server"] = settings.server;
node["tz_label"] = settings.tzLabel; node["tz_label"] = settings.tzLabel;
node["tz_format"] = settings.tzFormat; node["tz_format"] = settings.tzFormat;
}); });
EMSESP::esp8266React.getOTASettingsService()->read([&](OTASettings & settings) { EMSESP::esp8266React.getOTASettingsService()->read([&](OTASettings & settings) {
char s[7];
JsonObject node = output.createNestedObject("OTA"); JsonObject node = output.createNestedObject("OTA");
node["enabled"] = settings.enabled; node["enabled"] = Helpers::render_boolean(s, settings.enabled);
node["port"] = settings.port; node["port"] = settings.port;
// node["password"] = settings.password; // node["password"] = settings.password;
}); });
EMSESP::emsespSettingsService.read([&](EMSESPSettings & settings) { EMSESP::emsespSettingsService.read([&](EMSESPSettings & settings) {
char s[7];
JsonObject node = output.createNestedObject("Settings"); JsonObject node = output.createNestedObject("Settings");
node["tx_mode"] = settings.tx_mode; node["tx_mode"] = settings.tx_mode;
node["ems_bus_id"] = settings.ems_bus_id; node["ems_bus_id"] = settings.ems_bus_id;
@@ -898,15 +903,15 @@ bool System::command_info(const char * value, const int8_t id, JsonObject & outp
node["syslog_mark_interval"] = settings.syslog_mark_interval; node["syslog_mark_interval"] = settings.syslog_mark_interval;
node["syslog_host"] = settings.syslog_host; node["syslog_host"] = settings.syslog_host;
node["master_thermostat"] = settings.master_thermostat; node["master_thermostat"] = settings.master_thermostat;
node["shower_timer"] = settings.shower_timer; node["shower_timer"] = Helpers::render_boolean(s, settings.shower_timer);
node["shower_alert"] = settings.shower_alert; node["shower_alert"] = Helpers::render_boolean(s, settings.shower_alert);
node["rx_gpio"] = settings.rx_gpio; node["rx_gpio"] = settings.rx_gpio;
node["tx_gpio"] = settings.tx_gpio; node["tx_gpio"] = settings.tx_gpio;
node["dallas_gpio"] = settings.dallas_gpio; node["dallas_gpio"] = settings.dallas_gpio;
node["dallas_parasite"] = settings.dallas_parasite; node["dallas_parasite"] = Helpers::render_boolean(s, settings.dallas_parasite);
node["led_gpio"] = settings.led_gpio; node["led_gpio"] = settings.led_gpio;
node["hide_led"] = settings.hide_led; node["hide_led"] = Helpers::render_boolean(s, settings.hide_led);
node["api_enabled"] = settings.api_enabled; node["api_enabled"] = Helpers::render_boolean(s, settings.api_enabled);
node["bool_format"] = settings.bool_format; node["bool_format"] = settings.bool_format;
}); });