Commit a9b31f46 authored by chen.weican's avatar chen.weican

【修改内容】修改相关BUG

【提交人】陈伟灿
parent db4d645b
1.3.0
\ No newline at end of file
1.4.1
\ No newline at end of file
......@@ -25,5 +25,6 @@ int KK_Get_ccuid( char *device_code);
int kk_check_config_file(char* path,char **config);
int kk_cloud_get_pid(char *productId);
int kk_cloud_get_key(char *key);
int KK_Send_CloudHB2Mid(int state);
#endif
......@@ -42,6 +42,8 @@
#define KK_CLOUDSTATE_MSG "/thing/ccu/cloudstate"
#define KK_CLOUDSTATE_MSG_REPLY "/thing/ccu/cloudstate_reply"
#define KK_CLOUDHB_MSG "/thing/ccu/cloudHB"
#define KK_CLOUDHB_MSG_REPLY "/thing/ccu/cloudHB_reply"
#define KK_TOPO_CHANGE_MSG_STR "/thing/topo/change"
#define KK_FILTER_SERVICE_CALL_TOPIC "/thing/service/"
#define KK_FILTER_SERVICE_CALL_REPLY "_reply"
......@@ -291,6 +293,11 @@ int _kk_sendto_cloud(cJSON *root)
free(topic);
return RETURN_SUCCESS;
}
else if(strstr(msgTypeStr->valuestring,KK_CLOUDHB_MSG) != NULL){
KK_Send_CloudHB2Mid(1);
free(topic);
return RETURN_SUCCESS;
}
//if(kk_check_need_split(info)){
//kk_split_send_data(pData,topic);
//}
......@@ -630,6 +637,48 @@ int KK_Send_CloudState(int state)
free(out);
return RETURN_SUCCESS;
}
const char DM_MSG_CLOUDHB[] = "{\"msgId\":\"1\",\"version\":\"1.0\",\"params\":{\"heartbeat\":\"%d\"},\"method\":\"thing.ccu.cloudHB_reply\"}";
int KK_Send_CloudHB2Mid(int state)
{
char *infoStr = NULL;
char *payloadStr = NULL;
int infoStr_len = 0;
int payloadStr_len = 0;
cJSON *root;
char *out;
infoStr_len = strlen(DM_MSG_TO_MIDDWARE)+strlen(KK_CLOUDHB_MSG_REPLY)+10;
infoStr = malloc(infoStr_len);
if(infoStr == NULL){
ERROR_PRINT("infoStr == NULL\n");
return RETURN_FAIL;
}
memset(infoStr,0x0,infoStr_len);
snprintf(infoStr,infoStr_len,DM_MSG_TO_MIDDWARE,KK_CLOUDHB_MSG_REPLY,"","");
payloadStr_len = strlen(DM_MSG_CLOUDHB) + 10;
payloadStr = malloc(payloadStr_len);
if(payloadStr == NULL){
ERROR_PRINT("payloadStr == NULL\n");
return RETURN_FAIL;
}
memset(payloadStr,0x0,payloadStr_len);
snprintf(payloadStr,payloadStr_len,DM_MSG_CLOUDHB,state);
root=cJSON_CreateObject();
cJSON* infoObj = cJSON_Parse(infoStr);
cJSON* payloadObj = cJSON_Parse(payloadStr);
cJSON_AddItemToObject(root, MSG_INFO_STR, infoObj);
cJSON_AddItemToObject(root, MSG_PAYLOAD_STR,payloadObj);
out=cJSON_Print(root);
kk_ipc_send(IPC_APP2MID, out, strlen(out)+1);
cJSON_Delete(root);
free(payloadStr);
free(infoStr);
INFO_PRINT("%s\n",out);
free(out);
return RETURN_SUCCESS;
}
/************************************************************
*功能描述:发送数据给Midware
*输入参数: topic:主题;
......
......@@ -36,13 +36,11 @@ static int kk_findccu_ack(int sockfd,struct sockaddr_in *addr){
cJSON_AddItemToObject(json, "arg", args);
#ifdef CONFIG_A133_PLATFORM
cJSON_AddStringToObject(args, "zkid", ccuid);
cJSON_AddStringToObject(args, "zk", KK_CCU_NAME);
HAL_Get_IP(s_IP,"eth0");
#else
cJSON_AddStringToObject(args, "zkid", &ccuid[4]);
cJSON_AddStringToObject(args, "zk", KK_CCU_NAME);
HAL_Get_IP(s_IP,NULL);
#endif
cJSON_AddStringToObject(args, "zk", KK_CCU_NAME);
HAL_Get_IP(s_IP,NULL);
cJSON_AddStringToObject(args, "ip", s_IP);
cJSON_AddBoolToObject(args, "ssl", FALSE);
}
......
......@@ -483,7 +483,6 @@ void HAL_Reboot(void)
#define ROUTER_INFO_PATH "/proc/net/route"
#define ROUTER_RECORD_SIZE 256
static char *_get_default_routing_ifname(char *ifname, int ifname_size)
{
FILE *fp = NULL;
......@@ -513,9 +512,11 @@ static char *_get_default_routing_ifname(char *ifname, int ifname_size)
perror("sscanf");
continue;
}
/*default route */
if ((destination == 0) && (mask == 0)) {
#ifndef CONFIG_A133_PLATFORM
if ((destination == 0) && (mask == 0))
#endif
{
strncpy(ifname, iface, ifname_size - 1);
result = ifname;
break;
......
......@@ -243,12 +243,12 @@ int kk_get_floorname_by_id(const char *floorid,char *floorname,int len)
//INFO_PRINT("total_column = %d\n", sqlite3_column_count(stmt));
while(sqlite3_step(stmt) == SQLITE_ROW){
pFloorname = (char*)sqlite3_column_text(stmt, DB_FLOOR_NAME);
}
if(pFloorname != NULL && strlen(pFloorname) > 0){
tlen = strlen(pFloorname) > len?len:strlen(pFloorname);
strncpy(floorname,pFloorname,tlen);
}else{
strcpy(floorname,"");
if(pFloorname != NULL && strlen(pFloorname) > 0){
tlen = strlen(pFloorname) > len?len:strlen(pFloorname);
memcpy(floorname,pFloorname,strlen(pFloorname));
}else{
memcpy(floorname,"",len);
}
}
sqlite3_finalize(stmt);
sqlite3_free(sqlCmd);
......@@ -330,8 +330,6 @@ int kk_room_set_floor_info(const char*floorId,const char* floorName,const char *
int rc = 0;
char *zErrMsg = 0;
kk_area_ctx_t *ctx = _kk_area_get_ctx();
_kk_area_lock();
if(strcmp(floorName,"") == 0){
char floorNameBuf[128] = {0};
kk_get_floorname_by_id(floorId,floorNameBuf,sizeof(floorNameBuf));
......@@ -347,7 +345,6 @@ int kk_room_set_floor_info(const char*floorId,const char* floorName,const char *
INFO_PRINT("Table updata data successfully\n");
}
sqlite3_free(sqlCmd);
_kk_area_unlock();
return SUCCESS_RETURN;
}
int kk_set_floor_to_default(const char*floorId)
......
......@@ -116,7 +116,15 @@ int iotx_dm_ccu_cloud_check(void)
_dm_api_unlock();
return res;
}
int iotx_dm_ccu_cloudHB_check(void)
{
int res = 0;
_dm_api_lock();
res = dm_mgr_ccu_heartbeat_cloud(0);
_dm_api_unlock();
return res;
}
int iotx_dm_dev_online(_IN_ int devid)
{
int res = 0;
......
......@@ -140,12 +140,12 @@ static int _dm_init_tsl_params(kk_tsl_t * dev_shadow,char *deviceCode)
}
/*******set MAC*************/
HAL_Get_mac(s_mac);
res = kk_tsl_set_value(kk_tsl_set_property_value,dev_shadow,KK_TSL_GATAWAY_MAC_IDENTIFIER,NULL,s_mac);
if(res != SUCCESS_RETURN)
{
ERROR_PRINT("[%s][%d] res:%d\n",__FUNCTION__,__LINE__,res);
}
//HAL_Get_mac(s_mac);
//res = kk_tsl_set_value(kk_tsl_set_property_value,dev_shadow,KK_TSL_GATAWAY_MAC_IDENTIFIER,NULL,s_mac);
//if(res != SUCCESS_RETURN)
//{
//ERROR_PRINT("[%s][%d] res:%d\n",__FUNCTION__,__LINE__,res);
//}
int wanState = 0;
res = kk_tsl_set_value(kk_tsl_set_property_value,dev_shadow,KK_TSL_CCU_WANSTATE_IDENTIFIER,&wanState,NULL);
......@@ -161,12 +161,12 @@ static int _dm_init_tsl_params(kk_tsl_t * dev_shadow,char *deviceCode)
ERROR_PRINT("[%s][%d] res:%d\n",__FUNCTION__,__LINE__,res);
}
/*******set sn*************/
HAL_Get_SN(s_SN);
res = kk_tsl_set_value(kk_tsl_set_property_value,dev_shadow,KK_TSL_GATAWAY_SN_IDENTIFIER,NULL,s_SN);
if(res != SUCCESS_RETURN)
{
ERROR_PRINT("[%s][%d] res:%d\n",__FUNCTION__,__LINE__,res);
}
//HAL_Get_SN(s_SN);
//res = kk_tsl_set_value(kk_tsl_set_property_value,dev_shadow,KK_TSL_GATAWAY_SN_IDENTIFIER,NULL,s_SN);
//if(res != SUCCESS_RETURN)
//{
//ERROR_PRINT("[%s][%d] res:%d\n",__FUNCTION__,__LINE__,res);
//}
char currentValue[16] = {0};
kk_property_db_get_value(deviceCode,KK_TSL_CCU_ARMINGSTATE_IDENTIFIER,currentValue);
if(strlen(currentValue) == 0){
......@@ -257,6 +257,9 @@ int dm_mgr_device_create(_IN_ int dev_type,_IN_ char productCode[PRODUCT_CODE_MA
if (devid) {
*devid = node->devid;
}
if (mac != NULL) {
memcpy(node->mac, mac, strlen(mac));
}
return TSL_ALREADY_EXIST;
}
......@@ -447,7 +450,6 @@ int dm_mgr_update_timestamp_by_devicecode(_IN_ char deviceCode[DEVICE_CODE_MAXLE
{
dm_mgr_ctx *ctx = _dm_mgr_get_ctx();
dm_mgr_dev_node_t *search_node = NULL;
_dm_mgr_mutex_lock();
list_for_each_entry(search_node, &ctx->dev_list, linked_list, dm_mgr_dev_node_t) {
if ((strlen(search_node->deviceCode) == strlen(deviceCode)) &&
......@@ -594,26 +596,7 @@ static void _dm_mgr_destroy_devlist(void)
free(del_node);
}
}
char s_pid[PRODUCT_CODE_LEN] = {0};
static int kk_pid_init(void)
{
char pid[PRODUCT_CODE_LEN] = {0};
int pid_len = 0;
HAL_Execel_cmd(GET_PRODUCTID_CMD,(char *)pid,sizeof(pid),&pid_len);
if(pid_len > 0 && pid_len <= PRODUCT_CODE_LEN){
memcpy(s_pid,pid,pid_len-1);
INFO_PRINT("s_pid:%s\n",s_pid);
}else{
return -1;
}
return 0;
}
int kk_get_pid(char *productId)
{
strncpy(productId, s_pid, strlen(s_pid));
printf("kk_get_pid:%s\n",s_pid);
return strlen(s_pid);
}
extern char *kk_sync_get_info();
int dm_mgr_init(void)
{
......@@ -624,7 +607,6 @@ int dm_mgr_init(void)
char pid[32] = {0};
int devId = 0,heartbeat = 0;
memset(ctx, 0, sizeof(dm_mgr_ctx));
/* Create Mutex */
ctx->mutex = kk_MutexCreate();
if (ctx->mutex == NULL) {
......@@ -634,7 +616,6 @@ int dm_mgr_init(void)
ctx->global_devid = 1;
kk_property_db_init();
HAL_Get_ccuid(ccuid);
kk_pid_init();
kk_get_pid(pid);
/* Init Device List */
INIT_LIST_HEAD(&ctx->dev_list);
......@@ -1303,7 +1284,57 @@ int dm_mgr_upstream_thing_list_found(_IN_ int devid)
return res;
}
const char DM_URI_HB_CLOUD[] = "/thing/ccu/cloudHB";
int dm_mgr_ccu_heartbeat_cloud(_IN_ int devid)
{
int res = 0;
dm_mgr_dev_node_t *node = NULL;
//dm_mgr_dev_node_t *gw_node = NULL;
dm_msg_request_t request;
char msgId[MSG_MAX_LEN] = {0};
if (devid < 0) {
return INVALID_PARAMETER;
}
memset(&request, 0, sizeof(dm_msg_request_t));
res = dm_mgr_search_dev_by_devid(devid, &node);
if (res != SUCCESS_RETURN) {
return FAIL_RETURN;
}
memcpy(request.productCode,node->productCode,strlen(node->productCode));
memcpy(request.deviceCode,node->deviceCode,strlen(node->deviceCode));
request.msgTypeStr = (char*)DM_URI_HB_CLOUD;
/* Get Params And Method */
res = dm_msg_heartbeat_cloud( node->productCode, node->deviceCode, &request);
if (res != SUCCESS_RETURN) {
return FAIL_RETURN;
}
/* Get Msg ID */
iotx_report_id(msgId);
//sprintf(msgId,"%d",iotx_report_id());
memcpy(request.msgid,msgId,strlen(msgId));
/* Get Dev ID */
request.devid = devid;
/* Callback */
//request.callback = dm_client_combine_login_reply;
/* Send Message To Cloud */
res = dm_msg_request(&request,0);
free(request.params);
return res;
}
const char DM_URI_STATUS_CLOUD[] = "/thing/ccu/cloudstate";
int dm_mgr_ccu_status_cloud(_IN_ int devid)
{
......
......@@ -124,5 +124,7 @@ int dm_mgr_subdev_delete(_IN_ char deviceCode[DEVICE_CODE_MAXLEN]);
int dm_msg_thing_property_post_all(char *deviceCode);
int dm_mgr_get_gw_deviceCode(_OU_ dm_mgr_dev_node_t **node);
void dm_mgr_resubscribe(void);
int kk_get_pid(char *productId);
int kk_get_pid(char *productId);
int dm_mgr_ccu_heartbeat_cloud(_IN_ int devid);
#endif
......@@ -13,6 +13,7 @@ const char DM_MSG_INFO[] DM_READ_ONLY = "{\"msgtype\":\"%s\",\"productCode\":\"%
extern void kk_sendData2gw(void* data, int len, char* chalMark);
void kk_sendData2app(void *info, void *payload,int isAsync){
void *buf = NULL;
int res = 0;
cJSON *root=cJSON_CreateObject();
cJSON* infoObj = cJSON_Parse(info);
cJSON* payloadObj = cJSON_Parse(payload);
......@@ -24,7 +25,7 @@ void kk_sendData2app(void *info, void *payload,int isAsync){
dm_queue_msg_insert4(buf);
}else{
kk_ipc_send(IPC_MID2APP, buf, strlen(buf)+1 );
res = kk_ipc_send(IPC_MID2APP, buf, strlen(buf)+1 );
free(buf);
}
cJSON_Delete(root);
......@@ -260,7 +261,39 @@ int dm_msg_thing_topo_delete(_IN_ char deviceCode[DEVICE_CODE_MAXLEN],_OU_ dm_ms
return SUCCESS_RETURN;
}
const char DM_MSG_HB_CLOUD_METHOD[] DM_READ_ONLY = "thing.ccu.cloudHB";
const char DM_MSG_HB_CLOUD[] DM_READ_ONLY =
"{\"deviceCode\":\"%s\"}";
int dm_msg_heartbeat_cloud(_IN_ char productCode[PRODUCT_CODE_MAXLEN],
_IN_ char deviceCode[DEVICE_CODE_MAXLEN], _OU_ dm_msg_request_t *request)
{
char *params = NULL;
int params_len = 0;
if (request == NULL ||
deviceCode == NULL || productCode == NULL ||
(strlen(deviceCode) >= DEVICE_CODE_MAXLEN) ||
(strlen(productCode) >= PRODUCT_CODE_MAXLEN) ||
(strlen(request->deviceCode) >= DEVICE_CODE_MAXLEN)) {
return INVALID_PARAMETER;
}
/* Params */
request->method = (char *)DM_MSG_HB_CLOUD_METHOD;
params_len = strlen(DM_MSG_HB_CLOUD) + strlen(deviceCode) + 1;
params = malloc(params_len);
if (params == NULL) {
return DM_MEMORY_NOT_ENOUGH;
}
memset(params, 0, params_len);
HAL_Snprintf(params, params_len, DM_MSG_HB_CLOUD,deviceCode);
request->params = params;
request->params_len = strlen(request->params);
return SUCCESS_RETURN;
}
const char DM_MSG_STATUS_CLOUD_METHOD[] DM_READ_ONLY = "thing.ccu.cloudstate";
const char DM_MSG_STATUS_CLOUD[] DM_READ_ONLY =
"{\"deviceCode\":\"%s\"}";
......
......@@ -52,6 +52,7 @@ typedef struct {
#define KK_THING_SERVICE_PROPERTY_GET_REPLY "/thing/service/property/get_reply"
#define KK_THING_OTA_DEVICE_UPGRADE "/thing/service/upgrade"
#define KK_THING_CLOUDSTATE_MSG "/thing/ccu/cloudstate_reply"
#define KK_THING_CLOUDHB_MSG "/thing/ccu/cloudHB_reply"
#define KK_THING_TOPO_ADD_MSG "/thing/topo/add"
#define KK_THING_TOPO_BATCH_ADD_MSG "/thing/topo/batch_add"
#define KK_THING_PROPERTY_POST "property/post"
......@@ -185,6 +186,8 @@ int dm_msg_thing_syncinfopush_reply(void);
void kk_split(char *src,const char *separator,char **dest,int *num);
int kk_msg_cloud_status_notify(char *deviceCode,const char *productCode);
int dm_msg_thing_syncdeviceinfo_reply(cJSON *msgId);
int dm_msg_heartbeat_cloud(_IN_ char productCode[PRODUCT_CODE_MAXLEN],
_IN_ char deviceCode[DEVICE_CODE_MAXLEN], _OU_ dm_msg_request_t *request);
//const char DM_URI_SYS_PREFIX[] DM_READ_ONLY = "/sys/%s/%s/";
......
......@@ -219,7 +219,6 @@ int dm_queue_msg_insert(void *data)
if (data == NULL) {
return INVALID_PARAMETER;
}
_dm_queue_lock();
if (ctx->msg_list.size >= ctx->msg_list.max_size) {
printf("dm queue list full");
......@@ -251,9 +250,7 @@ int dm_queue_msg_next(void **data)
if (data == NULL || *data != NULL) {
return INVALID_PARAMETER;
}
_dm_queue_lock();
if (list_empty(&ctx->msg_list.message_list)) {
_dm_queue_unlock();
return FAIL_RETURN;
......
......@@ -283,7 +283,6 @@ static void _iotx_linkkit_upstream_callback_remove(int msgid, int code)
#endif
static int s_CloudStatus = 0;
static int s_CloudStatusRecv = 0;
/************************************************************
*功能描述:获取连云状态
*输入参数:无
......@@ -563,7 +562,7 @@ static int kk_service_updateRoom_handle(const char *deviceCode, cJSON *params,cJ
if(floorId == NULL){
kk_service_addRoom_reply(inforoot,msgid,roomIdStr->valuestring,1);
}else{
kk_room_set_floor_info(floorId->valuestring,roomIdStr->valuestring,roomIdStr->valuestring);
kk_room_set_floor_info(floorId->valuestring,"",roomIdStr->valuestring);
kk_service_common_reply(inforoot,msgid,KK_THING_SERVICE_UPDATEROOM_REPLY);
}
//INFO_PRINT(" update room 111!!!\n");
......@@ -867,7 +866,7 @@ static int kk_service_setFloor_handle(cJSON *params)
if(roomid == NULL){
return INVALID_PARAMETER;
}
kk_room_set_floor_info(floorId->valuestring,name->valuestring,roomid->valuestring);
kk_room_set_floor_info(floorId->valuestring,"",roomid->valuestring);
itemroom = itemroom->next;
}
item = item->next;
......@@ -1916,13 +1915,15 @@ static void _iotx_linkkit_event_callback(iotx_dm_event_types_t type, char *data)
}
kk_service_arming_set(state->valuestring);
}
}else if (strstr(typeJson->valuestring,KK_THING_CLOUDSTATE_MSG)){
}
else if (strstr(typeJson->valuestring,KK_THING_CLOUDSTATE_MSG)){
INFO_PRINT("cloud state notify \n");
char ccuid[32] = {0};
static time_t s_last_notify_time = 0;
s_CloudStatusRecv = 1;
cJSON *paramStr = cJSON_GetObjectItem(payload, MSG_PARAMS_STR);
cJSON *state = cJSON_GetObjectItem(paramStr, MSG_IOTClOUDSTATE_STR);
s_CloudStatus = atoi(state->valuestring);
dm_mgr_dev_node_t *node = NULL;
dm_mgr_search_dev_by_devid(KK_DM_DEVICE_CCU_DEVICEID,&node);
......@@ -1939,8 +1940,11 @@ static void _iotx_linkkit_event_callback(iotx_dm_event_types_t type, char *data)
}
HAL_Get_ccuid(ccuid);
kk_property_db_update(ccuid);
if(s_CloudStatus != atoi(state->valuestring) && atoi(state->valuestring) == 1){
if(s_CloudStatus == 1){
if((HAL_Uptimes() - s_last_notify_time <= 60 && s_last_notify_time != 0)){
ERROR_PRINT("[%s][%d] ignore this notify\n",__FUNCTION__,__LINE__);
goto directReturn;
}
node->isOffline = KK_DEV_ONLINE;
dm_mgr_upstream_thing_sub_register(KK_DM_DEVICE_CCU_DEVICEID);
iotx_dm_dev_online(KK_DM_DEVICE_CCU_DEVICEID);//first online,report the online status
......@@ -1948,8 +1952,8 @@ static void _iotx_linkkit_event_callback(iotx_dm_event_types_t type, char *data)
kk_subDev_check_auth(KK_DM_DEVICE_GATEWAY);
dm_msg_ccu_property_post(node);
dm_mgr_resubscribe();
s_last_notify_time = HAL_Uptimes();
}
s_CloudStatus = atoi(state->valuestring);
}else if (strcmp(typeJson->valuestring,"/upgrade") == 0){
INFO_PRINT("ota upgrade... \n");
char tmp[256] = {0};
......
......@@ -686,7 +686,6 @@ int kk_subDev_set_action_by_productType(const char *productType,const char *room
int size = 0;
char *pStart = NULL;
int allRoom = (strcmp(roomId,"-1")==0)?1:0;
if(productType == NULL){
ERROR_PRINT("ERROR [%s][%d]\n",__FUNCTION__,__LINE__);
return INVALID_PARAMETER;
......@@ -741,7 +740,7 @@ int kk_subDev_set_action_by_productType(const char *productType,const char *room
}
if(allRoom==0){
char roomName[256] = {0};
char roomIdStr[10] = {0};
char roomIdStr[16] = {0};
if(kk_get_device_roomInfo(pDeviceCode,info.epNum,roomName,roomIdStr)==0){
continue;
}
......@@ -769,7 +768,6 @@ int kk_subDev_set_action_by_productType(const char *productType,const char *room
//return res;
continue;
}
}
}
}
......
This diff is collapsed.
......@@ -111,7 +111,9 @@ static int kk_scene_tsl_load(void)
char *tsl_str = NULL;
int heartTime = 0;
char isDormancyDev = 0;
tsl_str = kk_load_json("15", KK_DEVICE_TSL_TYPE);
char pid[32] = {0};
kk_get_pid(pid);
tsl_str = kk_load_json(pid, KK_DEVICE_TSL_TYPE);
if(tsl_str != NULL)
{
res = kk_tsl_create(tsl_str,strlen(tsl_str),&s_scene_shadow,&heartTime,(int*)&isDormancyDev);
......@@ -1175,6 +1177,9 @@ int kk_scene_parse_scene_action(const cJSON* str,const char *sceneId,int isUpdat
productType = cJSON_GetObjectItem(item,MSG_PRODUCT_TYPE_STR);
roomId = cJSON_GetObjectItem(item,MSG_AREA_ROOM_CCUROOMID);
if(productType != NULL){
if(roomId == NULL){
roomId = cJSON_GetObjectItem(item,MSG_AREA_ROOM_ROOMID);
}
delay = cJSON_GetObjectItem(item,MSG_SCENE_DELAY);
if(delay == NULL) return FAIL_RETURN;
int idelay = delay->valueint;
......@@ -1233,11 +1238,16 @@ int kk_scene_parse_scene_action(const cJSON* str,const char *sceneId,int isUpdat
if(strcmp(node->productCode,"3098") == 0 || strcmp(node->productCode,"3099") == 0 ||
strcmp(node->productCode,"3097") == 0){
sprintf(info.propertyName,"%s_%d",propertyName->valuestring,iepnum);
}else if(strcmp(node->productCode,"5004") == 0){
if(strstr(propertyName->valuestring,"_") == NULL){
sprintf(info.propertyName,"%s_%d",propertyName->valuestring,iepnum);
}else{
memcpy(info.propertyName,propertyName->valuestring,strlen(propertyName->valuestring));
}
}else{
memcpy(info.propertyName,propertyName->valuestring,strlen(propertyName->valuestring));
}
if(propertyValue->type==cJSON_Number){
snprintf(propertyValueStr,sizeof(propertyValueStr),"%d",propertyValue->valueint);
}else if(propertyValue->type==cJSON_String){
snprintf(propertyValueStr,sizeof(propertyValueStr),"%s",propertyValue->valuestring);
......
......@@ -72,11 +72,11 @@
#define KK_TSL_SPECIAL_EVENT_POST_IDENTIFIER "post"
#define KK_TSL_SPECIAL_EVENT_POST_METHOD "thing.event.property.post"
#define KK_TSL_VERSION_IDENTIFIER "Version"
#define KK_TSL_CCU_LANIP_IDENTIFIER "LanIPAddress"
#define KK_TSL_CCU_WANIP_IDENTIFIER "WanIPAddress"
#define KK_TSL_CCU_WANSTATE_IDENTIFIER "WanState"
#define KK_TSL_CCU_IOTCLOUD_IDENTIFIER "IOTCloudState"
#define KK_TSL_VERSION_IDENTIFIER "version"
#define KK_TSL_CCU_LANIP_IDENTIFIER "lanIPAddress"
#define KK_TSL_CCU_WANIP_IDENTIFIER "wanIPAddress"
#define KK_TSL_CCU_WANSTATE_IDENTIFIER "wanState"
#define KK_TSL_CCU_IOTCLOUD_IDENTIFIER "iotCloudState"
#define KK_TSL_CCU_ARMINGSTATE_IDENTIFIER "ArmingState"
#define KK_TSL_GATAWAY_VERSION_IDENTIFIER "Version"
......
......@@ -13,9 +13,10 @@ char* kk_load_json(const char *productCode,int type)
char *tslPath = NULL;
int path_len = 0;
unsigned int filesize;
char pid[32] = {0};
kk_get_pid(pid);
if(type == KK_DM_DEVICE_CCU){
path_len = strlen(TSL_CCU_PATH_FILE)+strlen("12")+1;
path_len = strlen(TSL_CCU_PATH_FILE)+strlen(pid)+1;
}
else if(type == KK_DM_DEVICE_GATEWAY){
path_len = strlen(TSL_GATEWAY_PATH_FILE)+strlen("2")+1;
......@@ -33,7 +34,7 @@ char* kk_load_json(const char *productCode,int type)
memset(tslPath,0x0,path_len);
if(type == KK_DM_DEVICE_CCU){
snprintf(tslPath,path_len,TSL_CCU_PATH_FILE,"12");
snprintf(tslPath,path_len,TSL_CCU_PATH_FILE,pid);
}
else if(type == KK_DM_DEVICE_GATEWAY){
snprintf(tslPath,path_len,TSL_GATEWAY_PATH_FILE,"2");
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment