disabled global control block for jWrite library
This commit is contained in:
parent
3a3ff79d20
commit
16386dc07a
|
|
@ -1 +1 @@
|
||||||
Subproject commit 8bbe1c28dc69b8adadc1ab3aed989a38e1dc8996
|
Subproject commit cdb702a89b355fe86c971e5f0c5da1b376cd827b
|
||||||
|
|
@ -989,8 +989,8 @@ void GenerateSystemSettingsJSONFile(void)
|
||||||
char *buf = malloc(2048);
|
char *buf = malloc(2048);
|
||||||
if (!buf)
|
if (!buf)
|
||||||
return;
|
return;
|
||||||
|
struct jWriteControl jwc;
|
||||||
jwOpen(buf, 2048, JW_OBJECT, JW_PRETTY);
|
jwOpen(&jwc, buf, 2048, JW_OBJECT, JW_PRETTY);
|
||||||
for (int i = 0; i < (sizeof(HANDLERS_ARRAY) / sizeof(HANDLERS_ARRAY[0])); ++i)
|
for (int i = 0; i < (sizeof(HANDLERS_ARRAY) / sizeof(HANDLERS_ARRAY[0])); ++i)
|
||||||
{
|
{
|
||||||
char val[18];
|
char val[18];
|
||||||
|
|
@ -998,10 +998,10 @@ void GenerateSystemSettingsJSONFile(void)
|
||||||
strcat(val, "~");
|
strcat(val, "~");
|
||||||
strcat(val, HANDLERS_ARRAY[i].tag);
|
strcat(val, HANDLERS_ARRAY[i].tag);
|
||||||
strcat(val, "~");
|
strcat(val, "~");
|
||||||
jwObj_string((char*) HANDLERS_ARRAY[i].tag, val);
|
jwObj_string(&jwc, (char*) HANDLERS_ARRAY[i].tag, val);
|
||||||
}
|
}
|
||||||
jwEnd();
|
jwEnd(&jwc);
|
||||||
jwClose();
|
jwClose(&jwc);
|
||||||
ESP_LOGI(TAG, "%s", buf);
|
ESP_LOGI(TAG, "%s", buf);
|
||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
23
src/MQTT.c
23
src/MQTT.c
|
|
@ -60,7 +60,8 @@ static void mqtt2_user_event_handler(void *handler_args, esp_event_base_t base,
|
||||||
void (*UserEventHandler)(int idx, void *handler_args, esp_event_base_t base, int32_t event_id, void *event_data);
|
void (*UserEventHandler)(int idx, void *handler_args, esp_event_base_t base, int32_t event_id, void *event_data);
|
||||||
static void *UserArg;
|
static void *UserArg;
|
||||||
void regUserEventHandler(
|
void regUserEventHandler(
|
||||||
void (*event_handler)(int idx, void *handler_args, esp_event_base_t base, int32_t event_id, void *event_data), void* user_arg)
|
void (*event_handler)(int idx, void *handler_args, esp_event_base_t base, int32_t event_id, void *event_data),
|
||||||
|
void *user_arg)
|
||||||
{
|
{
|
||||||
UserEventHandler = event_handler;
|
UserEventHandler = event_handler;
|
||||||
UserArg = user_arg;
|
UserArg = user_arg;
|
||||||
|
|
@ -138,23 +139,24 @@ mqtt_app_err_t PublicTestMQTT(int idx)
|
||||||
char tmp[10];
|
char tmp[10];
|
||||||
char resp[256];
|
char resp[256];
|
||||||
char JSONMess[512];
|
char JSONMess[512];
|
||||||
jwOpen(JSONMess, MAX_ERROR_JSON, JW_OBJECT, JW_PRETTY);
|
struct jWriteControl jwc;
|
||||||
|
jwOpen(&jwc, JSONMess, MAX_ERROR_JSON, JW_OBJECT, JW_PRETTY);
|
||||||
time_t now;
|
time_t now;
|
||||||
time(&now);
|
time(&now);
|
||||||
jwObj_int("time", (unsigned int) now);
|
jwObj_int(&jwc, "time", (unsigned int) now);
|
||||||
jwObj_string("event", "MQTT_TEST_MESSAGE)");
|
jwObj_string(&jwc, "event", "MQTT_TEST_MESSAGE)");
|
||||||
strcpy(resp, "mqtt://");
|
strcpy(resp, "mqtt://");
|
||||||
strcat(resp, GetSysConf()->mqttStation[idx].ServerAddr);
|
strcat(resp, GetSysConf()->mqttStation[idx].ServerAddr);
|
||||||
itoa(GetSysConf()->mqttStation[idx].ServerPort, tmp, 10);
|
itoa(GetSysConf()->mqttStation[idx].ServerPort, tmp, 10);
|
||||||
strcat(resp, ":");
|
strcat(resp, ":");
|
||||||
strcat(resp, tmp);
|
strcat(resp, tmp);
|
||||||
jwObj_string("url", resp);
|
jwObj_string(&jwc, "url", resp);
|
||||||
ComposeTopic(resp, idx, "SYSTEM", "UPLINK");
|
ComposeTopic(resp, idx, "SYSTEM", "UPLINK");
|
||||||
jwObj_string("tx_topic", resp);
|
jwObj_string(&jwc, "tx_topic", resp);
|
||||||
ComposeTopic(resp, idx, "SYSTEM", "DWLINK");
|
ComposeTopic(resp, idx, "SYSTEM", "DWLINK");
|
||||||
jwObj_string("rx_topic", resp);
|
jwObj_string(&jwc, "rx_topic", resp);
|
||||||
jwEnd();
|
jwEnd(&jwc);
|
||||||
jwClose();
|
jwClose(&jwc);
|
||||||
char *buf = (char*) malloc(strlen(JSONMess) + 1);
|
char *buf = (char*) malloc(strlen(JSONMess) + 1);
|
||||||
if (buf)
|
if (buf)
|
||||||
{
|
{
|
||||||
|
|
@ -177,7 +179,6 @@ mqtt_app_err_t PublicTestMQTT(int idx)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static void mqtt_system_event_handler(int idx, void *handler_args, esp_event_base_t base, int32_t event_id,
|
static void mqtt_system_event_handler(int idx, void *handler_args, esp_event_base_t base, int32_t event_id,
|
||||||
void *event_data)
|
void *event_data)
|
||||||
{
|
{
|
||||||
|
|
@ -462,6 +463,4 @@ static void mqtt2_user_event_handler(void *handler_args, esp_event_base_t base,
|
||||||
UserEventHandler(1, handler_args, base, event_id, event_data);
|
UserEventHandler(1, handler_args, base, event_id, event_data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
|
|
@ -140,7 +140,7 @@ static void funct_wifiscanres(char *argres, int rw)
|
||||||
{
|
{
|
||||||
int arg = atoi(argres);
|
int arg = atoi(argres);
|
||||||
wifi_ap_record_t *Rec;
|
wifi_ap_record_t *Rec;
|
||||||
|
/*
|
||||||
char onerec[64];
|
char onerec[64];
|
||||||
strcpy(argres, "[");
|
strcpy(argres, "[");
|
||||||
for (int i = 0; i < arg; i++)
|
for (int i = 0; i < arg; i++)
|
||||||
|
|
@ -155,7 +155,7 @@ static void funct_wifiscanres(char *argres, int rw)
|
||||||
strcat(argres, ",");
|
strcat(argres, ",");
|
||||||
}
|
}
|
||||||
strcat(argres, "]");
|
strcat(argres, "]");
|
||||||
/*
|
*/
|
||||||
struct jWriteControl jwc;
|
struct jWriteControl jwc;
|
||||||
jwOpen(&jwc, argres, VAR_MAX_VALUE_LENGTH, JW_ARRAY, JW_COMPACT);
|
jwOpen(&jwc, argres, VAR_MAX_VALUE_LENGTH, JW_ARRAY, JW_COMPACT);
|
||||||
for (int i = 0; i < arg; i++)
|
for (int i = 0; i < arg; i++)
|
||||||
|
|
@ -171,8 +171,6 @@ static void funct_wifiscanres(char *argres, int rw)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
jwClose(&jwc);
|
jwClose(&jwc);
|
||||||
*/
|
|
||||||
ESP_LOGI("REST", "%s", argres);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -95,17 +95,17 @@ static sys_error_code SysPayloadTypeVarsHandler(data_message_t *MSG)
|
||||||
|
|
||||||
if (!(MSG->parsedData.msgType == DATA_MESSAGE_TYPE_COMMAND || MSG->parsedData.msgType == DATA_MESSAGE_TYPE_REQUEST))
|
if (!(MSG->parsedData.msgType == DATA_MESSAGE_TYPE_COMMAND || MSG->parsedData.msgType == DATA_MESSAGE_TYPE_REQUEST))
|
||||||
return SYS_ERROR_PARSE_MSGTYPE;
|
return SYS_ERROR_PARSE_MSGTYPE;
|
||||||
|
struct jWriteControl jwc;
|
||||||
jwOpen(MSG->outputDataBuffer, MSG->outputDataLength, JW_OBJECT, JW_COMPACT);
|
jwOpen(&jwc, MSG->outputDataBuffer, MSG->outputDataLength, JW_OBJECT, JW_COMPACT);
|
||||||
jwObj_object("data");
|
jwObj_object(&jwc, "data");
|
||||||
jwObj_int("msgid", MSG->parsedData.msgID);
|
jwObj_int(&jwc, "msgid", MSG->parsedData.msgID);
|
||||||
char time[RFC3339_TIMESTAMP_LENGTH];
|
char time[RFC3339_TIMESTAMP_LENGTH];
|
||||||
GetRFC3339Time(time);
|
GetRFC3339Time(time);
|
||||||
jwObj_string("time", time);
|
jwObj_string(&jwc, "time", time);
|
||||||
jwObj_int("messtype", DATA_MESSAGE_TYPE_RESPONSE);
|
jwObj_int(&jwc, "messtype", DATA_MESSAGE_TYPE_RESPONSE);
|
||||||
jwObj_int("payloadtype", 1);
|
jwObj_int(&jwc, "payloadtype", 1);
|
||||||
jwObj_object("payload");
|
jwObj_object(&jwc, "payload");
|
||||||
jwObj_object("variables");
|
jwObj_object(&jwc, "variables");
|
||||||
|
|
||||||
jRead(MSG->inputDataBuffer, "{'data'{'payload'{'variables'", &result);
|
jRead(MSG->inputDataBuffer, "{'data'{'payload'{'variables'", &result);
|
||||||
if (result.dataType == JREAD_OBJECT)
|
if (result.dataType == JREAD_OBJECT)
|
||||||
|
|
@ -148,9 +148,9 @@ static sys_error_code SysPayloadTypeVarsHandler(data_message_t *MSG)
|
||||||
}
|
}
|
||||||
//Response with actual data
|
//Response with actual data
|
||||||
if (tp == VAR_STRING || tp == VAR_IPADDR || tp == VAR_ERROR || tp == VAR_PASS)
|
if (tp == VAR_STRING || tp == VAR_IPADDR || tp == VAR_ERROR || tp == VAR_PASS)
|
||||||
jwObj_string(VarName, VarValue);
|
jwObj_string(&jwc, VarName, VarValue);
|
||||||
else
|
else
|
||||||
jwObj_raw(VarName, VarValue);
|
jwObj_raw(&jwc, VarName, VarValue);
|
||||||
|
|
||||||
}
|
}
|
||||||
free(VarValue);
|
free(VarValue);
|
||||||
|
|
@ -158,12 +158,12 @@ static sys_error_code SysPayloadTypeVarsHandler(data_message_t *MSG)
|
||||||
else
|
else
|
||||||
return SYS_ERROR_PARSE_VARIABLES;
|
return SYS_ERROR_PARSE_VARIABLES;
|
||||||
|
|
||||||
jwEnd();
|
jwEnd(&jwc);
|
||||||
jwEnd();
|
jwEnd(&jwc);
|
||||||
GetSysErrorDetales((sys_error_code) MSG->err_code, &err_br, &err_desc);
|
GetSysErrorDetales((sys_error_code) MSG->err_code, &err_br, &err_desc);
|
||||||
jwObj_string("error", (char*) err_br);
|
jwObj_string(&jwc, "error", (char*) err_br);
|
||||||
jwObj_string("error_descr", (char*) err_desc);
|
jwObj_string(&jwc, "error_descr", (char*) err_desc);
|
||||||
jwEnd();
|
jwEnd(&jwc);
|
||||||
|
|
||||||
char *datap = strstr(MSG->outputDataBuffer, "\"data\":");
|
char *datap = strstr(MSG->outputDataBuffer, "\"data\":");
|
||||||
if (datap)
|
if (datap)
|
||||||
|
|
@ -177,12 +177,12 @@ static sys_error_code SysPayloadTypeVarsHandler(data_message_t *MSG)
|
||||||
#if REAST_API_DEBUG_MODE
|
#if REAST_API_DEBUG_MODE
|
||||||
ESP_LOGI(TAG, "SHA256 of DATA object is %s", sha_print);
|
ESP_LOGI(TAG, "SHA256 of DATA object is %s", sha_print);
|
||||||
#endif
|
#endif
|
||||||
jwObj_string("signature", (char*) sha_print);
|
jwObj_string(&jwc, "signature", (char*) sha_print);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
return SYS_ERROR_SHA256_DATA;
|
return SYS_ERROR_SHA256_DATA;
|
||||||
jwEnd();
|
jwEnd(&jwc);
|
||||||
jwClose();
|
jwClose(&jwc);
|
||||||
|
|
||||||
jRead(MSG->inputDataBuffer, "{'data'{'payload'{'applytype'", &result);
|
jRead(MSG->inputDataBuffer, "{'data'{'payload'{'applytype'", &result);
|
||||||
if (result.elements == 1)
|
if (result.elements == 1)
|
||||||
|
|
@ -303,19 +303,20 @@ esp_err_t SysServiceDataHandler(data_message_t *MSG)
|
||||||
MSG->err_code = (int) SysDataParser(MSG);
|
MSG->err_code = (int) SysDataParser(MSG);
|
||||||
if (MSG->err_code)
|
if (MSG->err_code)
|
||||||
{
|
{
|
||||||
jwOpen(MSG->outputDataBuffer, MSG->outputDataLength, JW_OBJECT, JW_PRETTY);
|
struct jWriteControl jwc;
|
||||||
jwObj_int("msgid", MSG->parsedData.msgID);
|
jwOpen(&jwc, MSG->outputDataBuffer, MSG->outputDataLength, JW_OBJECT, JW_PRETTY);
|
||||||
|
jwObj_int(&jwc, "msgid", MSG->parsedData.msgID);
|
||||||
char time[RFC3339_TIMESTAMP_LENGTH];
|
char time[RFC3339_TIMESTAMP_LENGTH];
|
||||||
GetRFC3339Time(time);
|
GetRFC3339Time(time);
|
||||||
jwObj_string("time", time);
|
jwObj_string(&jwc, "time", time);
|
||||||
jwObj_int("messtype", DATA_MESSAGE_TYPE_RESPONSE);
|
jwObj_int(&jwc, "messtype", DATA_MESSAGE_TYPE_RESPONSE);
|
||||||
const char *err_br;
|
const char *err_br;
|
||||||
const char *err_desc;
|
const char *err_desc;
|
||||||
GetSysErrorDetales((sys_error_code) MSG->err_code, &err_br, &err_desc);
|
GetSysErrorDetales((sys_error_code) MSG->err_code, &err_br, &err_desc);
|
||||||
jwObj_string("error", (char*) err_br);
|
jwObj_string(&jwc, "error", (char*) err_br);
|
||||||
jwObj_string("error_descr", (char*) err_desc);
|
jwObj_string(&jwc, "error_descr", (char*) err_desc);
|
||||||
jwEnd();
|
jwEnd(&jwc);
|
||||||
jwClose();
|
jwClose(&jwc);
|
||||||
}
|
}
|
||||||
|
|
||||||
return ESP_OK;
|
return ESP_OK;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user