本文整理汇总了C++中cJSON_AddNumberToObject函数的典型用法代码示例。如果您正苦于以下问题:C++ cJSON_AddNumberToObject函数的具体用法?C++ cJSON_AddNumberToObject怎么用?C++ cJSON_AddNumberToObject使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了cJSON_AddNumberToObject函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: cJSON_AddStringToObject
void csImgGoogle::sendImgURIToClient(int _width, int _height, const QUrl & url )
{
// add with and hight and make a jason message
char *out;
cJSON *json_send;
json_send=cJSON_CreateObject();
cJSON_AddStringToObject(json_send,"CMD", "CREATE");
cJSON_AddStringToObject(json_send,"TYPE", "Image");
cJSON_AddNumberToObject(json_send,"OID", -1);
cJSON_AddStringToObject(json_send,"URI", url.toString().toStdString().c_str());
cJSON_AddNumberToObject(json_send,"WIDTH", _width);
cJSON_AddNumberToObject(json_send,"HEIGHT", _height);
float pos[2];
pos[0] = 0.0f;
pos[1] = 0.0f;
cJSON_AddItemToObject(json_send,"POS", cJSON_CreateFloatArray(pos,2));
pos[0] = 1.0f;
pos[1] = 1.0f;
cJSON_AddItemToObject(json_send,"SCALE", cJSON_CreateFloatArray(pos,2));
out=cJSON_PrintUnformatted(json_send);
cJSON_Delete(json_send);
pte_Url->setPlainText(QString(out));
sm->sendData((char *)out);
free(out);
}
开发者ID:calit2-kvl,项目名称:vr_connect,代码行数:30,代码来源:main.cpp
示例2: cJSON_CreateObject
//After finish called , remember free memery
char *CreateMultiplexJson(char *Type, char *cmdid)
{
cJSON *root = NULL;
char *out = NULL;
root = cJSON_CreateObject();
cJSON_AddStringToObject(root, "Type", Type);
cJSON_AddStringToObject(root, "CmdID", cmdid);
cJSON_AddStringToObject(root, "Time", setLocalTime());
cJSON_AddStringToObject(root, "Broadcast", NONE);
cJSON_AddStringToObject(root, "NeedAnswer", NO);
cJSON_AddNumberToObject(root, "TeamID", status.TeamID);
cJSON_AddNumberToObject(root, "AgentID", status.AgentID);
cJSON_AddStringToObject(root, "Character", status.Character);
cJSON_AddStringToObject(root, "TeamShape", status.TeamShape);
cJSON_AddNumberToObject(root, "FuleStatus", status.Fule);
cJSON_AddStringToObject(root, "AliveStatus", status.AliveStatus);
out = cJSON_PrintUnformatted(root);
cJSON_Delete(root);
sNetOutput("->->->StatusBuffer : ",out);
return out;
}
开发者ID:featman,项目名称:FlyingGames,代码行数:29,代码来源:Global.c
示例3: http_dht_api_read
//TODO move to own file
int ICACHE_FLASH_ATTR http_dht_api_read(http_connection *c) {
NODE_DBG("http_dht_api_read");
//wait for whole body
if(c->state <HTTPD_STATE_BODY_END)
return HTTPD_CGI_MORE;
//write headers
http_SET_HEADER(c,HTTP_CONTENT_TYPE,JSON_CONTENT_TYPE);
http_response_OK(c);
sensor_data data;
sensors_get_data(&data);
//create json
cJSON *root = cJSON_CreateObject();
cJSON_AddNumberToObject(root,"temp",data.dht22.temp);
cJSON_AddNumberToObject(root,"hum",data.dht22.hum);
//write json
http_write_json(c,root);
//delete json struct
cJSON_Delete(root);
return HTTPD_CGI_DONE;
}
开发者ID:HaknCo,项目名称:esp-ginx,代码行数:32,代码来源:cgi_relay.c
示例4: cJSON_CreateObject
void *write_sock(void *p)
{
if(p == NULL)
return NULL;
SOCKDATA *pdata = (SOCKDATA*)p;
cJSON *root = cJSON_CreateObject();
cJSON_AddNumberToObject(root, "needResponse", 0);
cJSON_AddStringToObject(root, "message", pdata->msg);
cJSON_AddNumberToObject(root, "len", pdata->size);
char *json_str = cJSON_Print(root);
int len;
size_t size = strlen(json_str);
uint8_t *buf = (uint8_t*)malloc(size+5);
if((len=crc_data(json_str, size, buf))==-1){
free(buf);
cJSON_Delete(root);
return NULL;
}
int nbytes;
nbytes =send(pdata->sock_fd, buf, len, 0);
free(buf);
cJSON_Delete(root);
return NULL;
}
开发者ID:NlxF,项目名称:OpenWow,代码行数:30,代码来源:aidsock.c
示例5: RUCE_Roto_SetEntry
int RUCE_Roto_SetEntry(RUCE_Roto* This, RUCE_Roto_Entry* Sorc)
{
cJSON* Entries = cJSON_GetObjectItem(This -> Ptr, "Entries");
if(! Entries) return 0;
char* Name = String_GetChars(& Sorc -> Name);
cJSON* Entry = cJSON_GetObjectItem(Entries, Name);
cJSON* NewEntry = cJSON_CreateObject();
cJSON_AddNumberToObject(NewEntry, "VOT", Sorc -> VOT);
cJSON_AddNumberToObject(NewEntry, "InvarLeft", Sorc -> InvarLeft);
cJSON_AddNumberToObject(NewEntry, "InvarRight", Sorc -> InvarRight);
cJSON_AddNumberToObject(NewEntry, "Overlap", Sorc -> Overlap);
if(! Entry)
{
//Create new entry
cJSON_AddItemToObject(Entries, Name, NewEntry);
}else
{
//Modify existing entry
cJSON_ReplaceItemInObject(Entries, Name, NewEntry);
}
return 1;
}
开发者ID:oranzhang,项目名称:RUCE,代码行数:25,代码来源:Roto.c
示例6: memset
/* cJson object out */
cJSON *Category::OutJsonObjectFormat(){
cJSON *category;
char *out;
char IDBuf[1024];
memset(IDBuf, 0, sizeof(IDBuf) );
/* create cJSON object */
category = cJSON_CreateObject();
/* id */
cJSON_AddNumberToObject( category, "id", this->id );
/* parent id */
cJSON_AddNumberToObject( category, "parentid", this->parentid );
/* name */
sprintf(IDBuf, "%s", this->name.c_str());
cJSON_AddStringToObject( category, "name", IDBuf );
/* print */
out = cJSON_Print( category );
ESLog::ISLog("cJson Category: %s\n",__FILE__, __LINE__, out );
free(out);
return category;
}
开发者ID:kzhiquan,项目名称:blog-eyesee,代码行数:33,代码来源:Category.cpp
示例7: getmonitorinfo
static void getmonitorinfo(HttpConn *conn) {
char str[256] = {0};
int inputStatus = 0, outChn = 0;
cJSON *result = cJSON_CreateObject();
char* jsonstring;
int outValidBitrate = 0;
unsigned int outstatus = 0;
for(outChn=0; outChn<clsProgram._outChannelCntMax; outChn++){
ChnBypass_read(tmpip, outChn);
RecordInputChnUseStatus(outChn);
}
OutChn_validBitrateGet(tmpip, 1, &outValidBitrate);
GetOutChannelStatus(tmpip, 1, &outstatus);
cJSON_AddNumberToObject(result,"outValidBitrate", outValidBitrate);
cJSON_AddNumberToObject(result,"outstatus", outstatus);
outValidBitrate = 0;
outstatus = 0;
OutChn_validBitrateGet(tmpip, 2, &outValidBitrate);
GetOutChannelStatus(tmpip, 2, &outstatus);
cJSON_AddNumberToObject(result,"outValidBitrate2", outValidBitrate);
cJSON_AddNumberToObject(result,"outstatus2", outstatus);
int errRslt = FlagInputSignal(tmpip, &inputStatus);
ShowNeedChnDataButNoInputWarning(errRslt, inputStatus, result);
jsonstring = cJSON_PrintUnformatted(result);
//printf("--getmonitorinfo---->>>%d\n",strlen(jsonstring));
memcpy(str, jsonstring, strlen(jsonstring));
//释放内存
cJSON_Delete(result);
free(jsonstring);
render(str);
}
开发者ID:stanxii,项目名称:hfc,代码行数:33,代码来源:globalopt.c
示例8: create_json_test
void create_json_test(void)
{
cJSON* pRoot = cJSON_CreateObject();
cJSON* pArray = cJSON_CreateArray();
cJSON_AddItemToObject(pRoot, "students_info", pArray);
cJSON* pItem = cJSON_CreateObject();
cJSON_AddStringToObject(pItem, "name", "chenzhongjing");
cJSON_AddStringToObject(pItem, "sex", "male");
cJSON_AddNumberToObject(pItem, "age", 28);
cJSON_AddItemToArray(pArray, pItem);
pItem = cJSON_CreateObject();
cJSON_AddStringToObject(pItem, "name", "fengxuan");
cJSON_AddStringToObject(pItem, "sex", "male");
cJSON_AddNumberToObject(pItem, "age", 24);
cJSON_AddItemToArray(pArray, pItem);
pItem = cJSON_CreateObject();
cJSON_AddStringToObject(pItem, "name", "tuhui");
cJSON_AddStringToObject(pItem, "sex", "male");
cJSON_AddNumberToObject(pItem, "age", 22);
cJSON_AddItemToArray(pArray, pItem);
char* szJSON = cJSON_Print(pRoot);
printf("%s", szJSON);
cJSON_Delete(pRoot);
free(szJSON);
return;
}
开发者ID:royye62,项目名称:rootx,代码行数:31,代码来源:cJSON_test.c
示例9: Pack_swm_set_mon_objs_req
int Pack_swm_set_mon_objs_req(susi_comm_data_t * pCommData, char ** outputStr)
{
char * out = NULL;
int outLen = 0;
cJSON *root = NULL, *pSUSICommDataItem = NULL;
if(pCommData == NULL || outputStr == NULL) return outLen;
root = cJSON_CreateObject();
pSUSICommDataItem = cJSON_CreateObject();
cJSON_AddItemToObject(root, AGENTINFO_BODY_STRUCT, pSUSICommDataItem);
cJSON_AddNumberToObject(pSUSICommDataItem, AGENTINFO_CMDTYPE, pCommData->comm_Cmd);
#ifdef COMM_DATA_WITH_JSON
cJSON_AddNumberToObject(pSUSICommDataItem, AGENTINFO_REQID, pCommData->reqestID);
#endif
{
mon_obj_info_list monObjList = NULL;
mon_obj_info_list * pMonObjList = &monObjList;
if(!pCommData->message) return false;
memcpy(pMonObjList, pCommData->message, sizeof(mon_obj_info_list));
if(!monObjList) return false;
cJSON_AddSWMThrInfoToObject(root, SWM_THR_INFO, monObjList);
}
out = cJSON_PrintUnformatted(root);
outLen = strlen(out) + 1;
*outputStr = (char *)(malloc(outLen));
memset(*outputStr, 0, outLen);
strcpy(*outputStr, out);
cJSON_Delete(root);
printf("%s\n",out);
free(out);
return outLen;
}
开发者ID:ADVANTECH-Corp,项目名称:WISEAgent,代码行数:33,代码来源:Parser.c
示例10: PublishData
int PublishData(jNet *pJnet, int source)
{
int res;
cJSON *root, *son1, *son2;
char *out;
root = cJSON_CreateArray();
cJSON_AddItemToArray(root, son1=cJSON_CreateObject());
cJSON_AddStringToObject(son1, "hwid", gAgent);
cJSON_AddStringToObject(son1, "type", "AGENT");
cJSON_AddItemToObject(son1, "values", son2=cJSON_CreateObject());
cJSON_AddNumberToObject(son2, "temperature", GetRandTemp());
if (source == 0) cJSON_AddFalseToObject(son2, "error");
else cJSON_AddTrueToObject(son2, "error");
cJSON_AddItemToArray(root, son1=cJSON_CreateObject());
cJSON_AddStringToObject(son1, "hwid", "ABCDEF0123456");
cJSON_AddStringToObject(son1, "type", "SENSOR");
cJSON_AddItemToObject(son1, "values", son2=cJSON_CreateObject());
cJSON_AddNumberToObject(son2, "lumen", Read8591(0));
cJSON_AddNumberToObject(son2, "Volt", Read8591(3));
out=cJSON_PrintUnformatted(root);
cJSON_Delete(root);
printf("Publishing %s\n", out);
res = jNetPublishT(pJnet, gTopicUp, out);
//printf("result %d\n", res);
free(out);
return res;
}
开发者ID:houzhenggang,项目名称:HW-freertos-esp8266,代码行数:33,代码来源:sPayload.c
示例11: buildAuthRequest
byte* buildAuthRequest(std::string username, int &byteLen,std::string APIKEY, std::string SECRETKEY)
{
std::string timeStamp = getODataUTCDateFilter();
std::string params;
params.append("apiKey");
params.append(APIKEY);
params.append("timeStamp");
params.append(timeStamp);
params.append("user");
params.append(username);
params.append("version1.5");
unsigned char hmac_digest[20];
memset(hmac_digest, 0, 20);
CHMAC_SHA1 hmac_sha1;
hmac_sha1.HMAC_SHA1((unsigned char *)params.c_str(),params.length(), (unsigned char *)SECRETKEY.c_str(), SECRETKEY.length(),hmac_digest);
std::string hmac = urlencode(base64_encode(hmac_digest, 20));
cJSON *payloadJSON;
payloadJSON = cJSON_CreateObject();
cJSON_AddStringToObject(payloadJSON,"apiKey", APIKEY.c_str());
cJSON_AddStringToObject(payloadJSON,"version", "1.5");
cJSON_AddStringToObject(payloadJSON,"timeStamp", timeStamp.c_str());
cJSON_AddStringToObject(payloadJSON,"user", username.c_str());
cJSON_AddStringToObject(payloadJSON,"signature", hmac.c_str());
cJSON_AddNumberToObject(payloadJSON, "keepalive", WARP_KEEP_ALIVE_TIME_INTERVAL);//recoverytime
cJSON_AddNumberToObject(payloadJSON, "recoverytime", RECOVERY_ALLOWANCE_TIME);
char* cRet = cJSON_PrintUnformatted(payloadJSON);
std::string payload = cRet;
free(cRet);
cJSON_Delete(payloadJSON);
return buildWarpRequest(RequestType::auth, payload, byteLen);
}
开发者ID:aharoen,项目名称:AppWarpCocos2DX,代码行数:35,代码来源:requests.cpp
示例12: hlog
cJSON *status_error_json(void)
{
struct status_error_t *e;
int pe;
struct cJSON *ea;
if ((pe = pthread_mutex_lock(&status_errs_mt))) {
hlog(LOG_ERR, "status_error_json(): could not lock status_errs_mt: %s", strerror(pe));
return NULL;
}
ea = cJSON_CreateArray();
for (e = status_errs; (e); e = e->next) {
if (e->ends < now) // don't display expired alarms
continue;
cJSON *ej = cJSON_CreateObject();
cJSON_AddStringToObject(ej, "err", e->err);
cJSON_AddNumberToObject(ej, "set", e->set);
cJSON_AddNumberToObject(ej, "start", e->started);
cJSON_AddNumberToObject(ej, "end", e->ends);
cJSON_AddItemToArray(ea, ej);
}
if ((pe = pthread_mutex_unlock(&status_errs_mt))) {
hlog(LOG_ERR, "status_error_json(): could not unlock status_errs_mt: %s", strerror(pe));
}
return ea;
}
开发者ID:HamWAN,项目名称:aprsc,代码行数:31,代码来源:status.c
示例13: api_response
static void api_response(int res, int total, const linkage_base_st *link_base)
{
cJSON *root;
cJSON *list_array;
cJSON *list_item;
char *json_out;
int i;
root=cJSON_CreateObject();
cJSON_AddNumberToObject(root, FIELD_STATUS, res);
if(res >=0){
cJSON_AddItemToObject(root, "list", list_array =cJSON_CreateArray());
for(i=0; i<total; i++){
cJSON_AddItemToArray(list_array, list_item =cJSON_CreateObject());
cJSON_AddNumberToObject(list_item, FIELD_LID, link_base[i].lid);
cJSON_AddStringToObject(list_item, FIELD_LNKNAME, link_base[i].lnkname);
cJSON_AddStringToObject(list_item, FIELD_TRGIEEE, link_base[i].trgieee);
cJSON_AddStringToObject(list_item, FIELD_TRGEP, link_base[i].trgep);
cJSON_AddStringToObject(list_item, FIELD_TRGCND, link_base[i].trgcnd);
cJSON_AddStringToObject(list_item, FIELD_LNKACT, link_base[i].lnkact);
cJSON_AddNumberToObject(list_item, FIELD_ENABLE, link_base[i].enable);
}
}
json_out=cJSON_Print(root);
cJSON_Delete(root);
fprintf(cgiOut,"%s\n", json_out);
free(json_out);
}
开发者ID:yanlunyao,项目名称:gateway,代码行数:32,代码来源:getLinkageList.c
示例14: json_return
int json_return(evhtp_request_t *req, int err_no, const char *md5sum, int post_size)
{
//json sample:
//{"ret":true,"info":{"size":"1024", "md5":"edac35fd4b0059d3218f0630bc56a6f4"}}
//{"ret":false,"error":{"code":"1","message":"\u9a8c\u8bc1\u5931\u8d25"}}
cJSON *j_ret = cJSON_CreateObject();
cJSON *j_ret_info = cJSON_CreateObject();
if(err_no == -1)
{
cJSON_AddBoolToObject(j_ret, "ret", 1);
cJSON_AddStringToObject(j_ret_info, "md5", md5sum);
cJSON_AddNumberToObject(j_ret_info, "size", post_size);
cJSON_AddItemToObject(j_ret, "info", j_ret_info);
}
else
{
cJSON_AddBoolToObject(j_ret, "ret", 0);
cJSON_AddNumberToObject(j_ret_info, "code", err_no);
LOG_PRINT(LOG_DEBUG, "post_error_list[%d]: %s", err_no, post_error_list[err_no]);
cJSON_AddStringToObject(j_ret_info, "message", post_error_list[err_no]);
cJSON_AddItemToObject(j_ret, "error", j_ret_info);
}
char *ret_str_unformat = cJSON_PrintUnformatted(j_ret);
LOG_PRINT(LOG_DEBUG, "ret_str_unformat: %s", ret_str_unformat);
evbuffer_add_printf(req->buffer_out, "%s", ret_str_unformat);
evhtp_headers_add_header(req->headers_out, evhtp_header_new("Content-Type", "application/json", 0, 0));
cJSON_Delete(j_ret);
free(ret_str_unformat);
return 0;
}
开发者ID:734839030,项目名称:zimg,代码行数:30,代码来源:zhttpd.c
示例15: auth_client_check_server
int auth_client_check_server(time_t current_time)
{
static time_t last_time = 0;
char *msgstr;
cJSON *msgJS;
cJSON *dataJS;
if (current_time - last_time < 300)
{
return 0;
}
last_time = current_time;
msgJS = cJSON_CreateObject();
cJSON_AddStringToObject(msgJS, "out_topic", "a/ac/usrmgr/query");
cJSON_AddNumberToObject(msgJS, "deadline", current_time + 10);
dataJS = cJSON_CreateObject();
cJSON_AddStringToObject(dataJS, "mod", "a/local/auth");
cJSON_AddStringToObject(dataJS, "cmd", "check_config_update");
cJSON_AddStringToObject(dataJS, "group", auth_user_ac_account);
cJSON_AddNumberToObject(dataJS, "config_version", auth_config_version);
cJSON_AddItemToObject(msgJS, "data", dataJS);
msgstr = cJSON_PrintUnformatted(msgJS);
printf("%s\n", msgstr);
auth_mqtt_publish("a/local/proxy", msgstr, strlen(msgstr));
cJSON_Delete(msgJS);
free(msgstr);
return 0;
}
开发者ID:itgb,项目名称:ap_apps,代码行数:34,代码来源:auth_client.c
示例16: ofLogNotice
//--------------------------------------------------------------
void wtmApp::saveSettings() {
ofLogNotice() << "saving settings";
cJSON *root = cJSON_CreateObject();
const char* sliderNames[9] = {
kGUIHalfwaveAmpName, kGUIOutputAmpName, kGUISampleDelayName, kGUISignalFrequencyName, kGUIUpSamplingName,
kGUIBlobThresholdName, kGUIBlobVisualizationName, kGUIBlobGammaName, kGUIBlobAdaptiveThresholdRangeName
};
for (int i=0; i < 8; i++) {
cJSON_AddNumberToObject(root, sliderNames[i], ((ofxUISlider *) gui->getWidget(sliderNames[i]))->getValue() );
}
ofxUIDropDownList *interpolationDropDown = (ofxUIDropDownList *) gui->getWidget(kGUIInterpolationDropDownName);
if (!(vector<string> *) interpolationDropDown->getSelectedNames().empty())
cJSON_AddStringToObject(root, kGUIInterpolationDropDownName, interpolationDropDown->getSelectedNames()[0].c_str() );
ofxUIDropDownList *serialDropDown = (ofxUIDropDownList *) gui->getWidget(kGUISerialDropDownName);
if (!(vector<string> *) serialDropDown->getSelectedNames().empty())
cJSON_AddStringToObject(root, kGUISerialDropDownName, serialDropDown->getSelectedNames()[0].c_str() );
cJSON_AddNumberToObject(root, kGUIBlobsName, (int) this->bTrackBlobs );
// cJSON_AddNumberToObject(root, kGUIGridName, this->bDrawGrid ); // TODO
char *renderedJson = cJSON_Print(root);
ofFile file;
file.open(ofToDataPath("settings.json"), ofFile::WriteOnly, false);
file << renderedJson;
file.close();
cJSON_Delete(root);
delete(renderedJson);
}
开发者ID:iMikie,项目名称:wiretouch,代码行数:30,代码来源:wtmApp_Gui.cpp
示例17: add_info
/**
* @brief add_info Added image info to the request
*
* @param im The image struct
* @param req The evhtp request
*/
void add_info(MagickWand *im, evhtp_request_t *req)
{
MagickSizeType size = MagickGetImageSize(im);
unsigned long width = MagickGetImageWidth(im);
unsigned long height = MagickGetImageHeight(im);
size_t quality = MagickGetImageCompressionQuality(im);
quality = (quality == 0 ? 100 : quality);
char *format = MagickGetImageFormat(im);
//{"ret":true,"info":{"size":195135,"width":720,"height":480,"quality":75,"format":"JPEG"}}
cJSON *j_ret = cJSON_CreateObject();
cJSON *j_ret_info = cJSON_CreateObject();
cJSON_AddBoolToObject(j_ret, "ret", 1);
cJSON_AddNumberToObject(j_ret_info, "size", size);
cJSON_AddNumberToObject(j_ret_info, "width", width);
cJSON_AddNumberToObject(j_ret_info, "height", height);
cJSON_AddNumberToObject(j_ret_info, "quality", quality);
cJSON_AddStringToObject(j_ret_info, "format", format);
cJSON_AddItemToObject(j_ret, "info", j_ret_info);
char *ret_str_unformat = cJSON_PrintUnformatted(j_ret);
LOG_PRINT(LOG_DEBUG, "ret_str_unformat: %s", ret_str_unformat);
evbuffer_add_printf(req->buffer_out, "%s", ret_str_unformat);
cJSON_Delete(j_ret);
free(ret_str_unformat);
free(format);
}
开发者ID:734839030,项目名称:zimg,代码行数:32,代码来源:zhttpd.c
示例18: joylink_package_ota_upload
char *
joylink_package_ota_upload(JLOtaUpload_t *otaUpload)
{
if(NULL == otaUpload){
return NULL;
}
cJSON *root, *data;
char *out = NULL;
root = cJSON_CreateObject();
if(NULL == root){
goto RET;
}
data = cJSON_CreateObject();
if(NULL == data){
cJSON_Delete(root);
goto RET;
}
cJSON_AddStringToObject(root, "cmd", "otastat");
cJSON_AddStringToObject(data, "feedid", otaUpload->feedid);
cJSON_AddStringToObject(data, "productuuid", otaUpload->productuuid);
cJSON_AddNumberToObject(data, "status", otaUpload->status);
cJSON_AddStringToObject(data, "status_desc", otaUpload->status_desc);
cJSON_AddNumberToObject(data, "progress", otaUpload->progress);
cJSON_AddItemToObject(root,"data", data);
out=cJSON_Print(root);
cJSON_Delete(root);
RET:
return out;
}
开发者ID:Learn-iot,项目名称:gitfile,代码行数:34,代码来源:joylink_json.c
示例19: SAParser_CreateAgentPacketToJSON
PJSON SAParser_CreateAgentPacketToJSON(susiaccess_packet_body_t const * pPacket)
{
/*
{"susiCommData":{"commCmd":271,"requestID":103, XXX}}
*/
cJSON *pReqInfoHead = NULL;
cJSON* root = NULL;
long tick = 0;
if(!pPacket) return NULL;
if(pPacket->content)
root = cJSON_Parse(pPacket->content);
else
root = cJSON_CreateObject();
if(!root) return NULL;
pReqInfoHead = cJSON_CreateObject();
cJSON_AddItemToObject(pReqInfoHead, BASICINFO_BODY_STRUCT, root);
cJSON_AddNumberToObject(root, BASICINFO_CMDTYPE, pPacket->cmd);
cJSON_AddNumberToObject(root, BASICINFO_REQID, pPacket->requestID);
cJSON_AddStringToObject(root, BASICINFO_AGENTID, pPacket->devId);
cJSON_AddStringToObject(root, BASICINFO_HANDLERNAME, pPacket->handlerName);
//cJSON_AddNumberToObject(root, BASICINFO_CATALOG, pPacket->catalogID);
tick = (long) time((time_t *) NULL);
cJSON_AddNumberToObject(root, BASICINFO_TIMESTAMP, tick);
return pReqInfoHead;
}
开发者ID:advlinda,项目名称:cagentoniotcore,代码行数:29,代码来源:SAParser.c
示例20: api_response
static void api_response(int res, int id_value ,const linkage_base_st *link_base)
{
cJSON *root;
char *json_out;
root=cJSON_CreateObject();
cJSON_AddNumberToObject(root, FIELD_STATUS, res);
if(res >=0){
cJSON_AddNumberToObject(root, FIELD_LID, id_value);
if(link_base !=NULL)
{
cJSON_AddStringToObject(root, FIELD_LNKNAME, link_base->lnkname);
cJSON_AddStringToObject(root, FIELD_TRGIEEE, link_base->trgieee);
cJSON_AddStringToObject(root, FIELD_TRGEP, link_base->trgep);
cJSON_AddStringToObject(root, FIELD_TRGCND, link_base->trgcnd);
cJSON_AddStringToObject(root, FIELD_LNKACT, link_base->lnkact);
cJSON_AddNumberToObject(root, FIELD_ENABLE, link_base->enable);
}
}
json_out=cJSON_Print(root);
cJSON_Delete(root);
fprintf(cgiOut,"%s\n", json_out);
free(json_out);
}
开发者ID:yanlunyao,项目名称:gateway,代码行数:27,代码来源:editLinkage.c
注:本文中的cJSON_AddNumberToObject函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论