|
@@ -915,7 +915,6 @@ void HTTP_SetSettings(char *buf, uint16_t lenBuf)
|
|
uint8_t valueLen = 0;
|
|
uint8_t valueLen = 0;
|
|
const uint8_t len = MAX_WEB_PARAM_LEN;
|
|
const uint8_t len = MAX_WEB_PARAM_LEN;
|
|
char value[MAX_WEB_PARAM_LEN];
|
|
char value[MAX_WEB_PARAM_LEN];
|
|
- char str[MAX_WEB_PARAM_LEN];
|
|
|
|
|
|
|
|
(void)lenBuf;
|
|
(void)lenBuf;
|
|
|
|
|
|
@@ -923,225 +922,9 @@ void HTTP_SetSettings(char *buf, uint16_t lenBuf)
|
|
|
|
|
|
//ClearParamString(buf);
|
|
//ClearParamString(buf);
|
|
|
|
|
|
- memset(value, 0, len);
|
|
|
|
- memset(str, 0, MAX_WEB_PARAM_LEN);
|
|
|
|
-
|
|
|
|
- /* SNMP */
|
|
|
|
- GetParamValue(buf, "read_community=", value, &valueLen);
|
|
|
|
- SetReadCommunity(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "write_community=", value, &valueLen);
|
|
|
|
- SetWriteCommunity(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "managerIP=", value, &valueLen);
|
|
|
|
- SetManagerIp(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "managerIP2=", value, &valueLen);
|
|
|
|
- SetManagerIp2(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "managerIP3=", value, &valueLen);
|
|
|
|
- SetManagerIp3(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "managerIP4=", value, &valueLen);
|
|
|
|
- SetManagerIp4(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "managerIP5=", value, &valueLen);
|
|
|
|
- SetManagerIp5(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
-#ifdef HARDWARE_BT6709
|
|
|
|
- /* White list */
|
|
|
|
- const char *white_list_set[] = {
|
|
|
|
- "wtl_ip1=",
|
|
|
|
- "wtl_ip2=",
|
|
|
|
- "wtl_ip3=",
|
|
|
|
- "wtl_ip4=",
|
|
|
|
- "wtl_ip5=",
|
|
|
|
- };
|
|
|
|
- for (uint8_t i = 0; i < MAX_WHITE_LIST; i++) {
|
|
|
|
- GetParamValue(buf, white_list_set[i], value, &valueLen);
|
|
|
|
- memset(str, 0, len);
|
|
|
|
- url_decode(str, sizeof(str), value);
|
|
|
|
- SetWhiteListSTR(str, i);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
-#endif
|
|
|
|
-
|
|
|
|
- /* Сетевые параметры */
|
|
|
|
- GetParamValue(buf, "dhcp=", value, &valueLen);
|
|
|
|
- SetDhcpStateStr(value);
|
|
|
|
-
|
|
|
|
- if (strncmp(value, "on", 2) != 0) { // Если dhcp off устанавливаем параметры
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "ipaddr=", value, &valueLen);
|
|
|
|
- SetIPStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "gw=", value, &valueLen);
|
|
|
|
- SetGatewayStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "mask=", value, &valueLen);
|
|
|
|
- SetMaskStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
- }
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-#if defined HARDWARE_BT6707 || HARDWARE_BT6709
|
|
|
|
- /* Сетевые параметры */
|
|
|
|
- GetParamValue(buf, "tn_enabled=", value, &valueLen);
|
|
|
|
- SetTelnetEnableStateStr(value);
|
|
|
|
- if (strncmp(value, "on", 2) == 0) {
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "tn_port=", value, &valueLen);
|
|
|
|
- SetTelnetPortStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
- }
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-#if defined HARDWARE_BT6709
|
|
|
|
- GetParamValue(buf, "ssh_enabled=", value, &valueLen);
|
|
|
|
- SetSSHEnableStateStr(value);
|
|
|
|
- if (strncmp(value, "on", 2) == 0) {
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "ssh_port=", value, &valueLen);
|
|
|
|
- SetSSHPortStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
- }
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-#endif // HARDWARE_BT6709
|
|
|
|
-#endif // HARDWARE_BT6707 || HARDWARE_BT6709
|
|
|
|
-#ifndef HARDWARE_BT6709
|
|
|
|
- // Параметры реле и сухих контактов
|
|
|
|
- GetParamValue(buf, "di1=", value, &valueLen);
|
|
|
|
- SetDINTypeActStr(value, 0);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "ro1=", value, &valueLen);
|
|
|
|
- SetROTypeActStr(value, 0);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "ro2=", value, &valueLen);
|
|
|
|
- SetROTypeActStr(value, 1);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "ro3=", value, &valueLen);
|
|
|
|
- SetROTypeActStr(value, 2);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-#endif
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "utc=", value, &valueLen);
|
|
|
|
- SetSntpTimeZoneStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- // Параметры даты и времени
|
|
|
|
- GetParamValue(buf, "ntp=", value, &valueLen);
|
|
|
|
-
|
|
|
|
- if (strncmp(value, "1", 1) == 0) { // Если ntp on устанавливаем параметры
|
|
|
|
- bool old_sntp = false;
|
|
|
|
- bool enable_old_sntp = sSettings.sSNTP.sntpEnable;
|
|
|
|
- memset(str, 0, len);
|
|
|
|
- GetParamValue(buf, "ntpservip=", str, &valueLen);
|
|
|
|
- if (strncmp(str, sSettings.sSNTP.ip, valueLen)) {
|
|
|
|
- old_sntp = true;
|
|
|
|
- }
|
|
|
|
- SetSntpServerIpStr(str);
|
|
|
|
- SetSntpStateStr(value);
|
|
|
|
- if (sSettings.sSNTP.sntpEnable != enable_old_sntp) {
|
|
|
|
- old_sntp = true;
|
|
|
|
- }
|
|
|
|
- if (old_sntp) {
|
|
|
|
- SNTP_Init();
|
|
|
|
- //vTaskDelay(7000);
|
|
|
|
- SNTP_Poll();
|
|
|
|
- }
|
|
|
|
- memset(value, 0, len);
|
|
|
|
- memset(str, 0, len);
|
|
|
|
- } else if (strncmp(value, "0", 1) == 0) {
|
|
|
|
- SetSntpStateStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
- GetParamValue(buf, "date=", value, &valueLen);
|
|
|
|
- SetDateStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
- GetParamValue(buf, "time=", value, &valueLen);
|
|
|
|
- memset(str, 0, len);
|
|
|
|
- url_decode(str, sizeof(str), value);
|
|
|
|
- SetTimeStr(str);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
- memset(str, 0, len);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "ups_cell_min=", value, &valueLen);
|
|
|
|
- SetUPSVoltCellMinStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "ups_cell_max=", value, &valueLen);
|
|
|
|
- SetUPSVoltCellMaxStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
-#ifdef HARDWARE_BT6709
|
|
|
|
- GetParamValue(buf, "bat_prod=", value, &valueLen);
|
|
|
|
- SetDataSetAKBStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "bat_exp=", value, &valueLen);
|
|
|
|
- SetLifeTimeAKBStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "bat_cap=", value, &valueLen);
|
|
|
|
- SetCapacityNominalAKBStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "bat_charge=", value, &valueLen);
|
|
|
|
- SetVoltageAKBNominalStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "ups_max_power=", value, &valueLen);
|
|
|
|
- SetUPSPowerStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-#endif
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "mainvolt_high=", value, &valueLen);
|
|
|
|
- SetVACAlarmHighRangeStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "mainvolt_low=", value, &valueLen);
|
|
|
|
- SetVACAlarmLowRangeStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "mainvolt_hist=", value, &valueLen);
|
|
|
|
- SetVACAlarmHisteStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "temp_high=", value, &valueLen);
|
|
|
|
- SetTemperatureAlarmHighRangeStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "temp_low=", value, &valueLen);
|
|
|
|
- SetTemperatureAlarmLowRangeStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "temp_hist=", value, &valueLen);
|
|
|
|
- SetTemperatureAlarmHisteStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "loadvolt_high=", value, &valueLen);
|
|
|
|
- SetLoadAlarmHighRangeStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
-
|
|
|
|
- GetParamValue(buf, "loadvolt_hist=", value, &valueLen);
|
|
|
|
- SetLoadAlarmHistStr(value);
|
|
|
|
- memset(value, 0, len);
|
|
|
|
|
|
+#define XJSON_SETTINGS_TAG(tag, get_param, set_param) JSON_SET_PARAM(tag, set_param, buf);
|
|
|
|
+ WEB_SETTINGS_TAGS_TABLE
|
|
|
|
+#undef XJSON_SETTINGS_CREATE
|
|
|
|
|
|
/* Если параметры WEB изменились выставляем флаг, сохраняем настройки и перезагружаемся */
|
|
/* Если параметры WEB изменились выставляем флаг, сохраняем настройки и перезагружаемся */
|
|
if (GetStateWebReinit() == true) {
|
|
if (GetStateWebReinit() == true) {
|