Commit 08dd429e authored by 陈伟灿's avatar 陈伟灿

Merge branch 'cwc' into 'master'

【修改内容】1,增加传感器类设备事件上报的处理

See merge request chenweican/k-sdk!37
parents dd5cc710 cb607cf9
......@@ -29,7 +29,10 @@ char * g_filerToPlatTable[] =
{KK_LOGIN_TOPIC_REPLY},
{KK_THING_SERVICE_PROPERTY_GET},
{KK_THING_CLOUDSTATE_MSG},
{KK_THING_SERVICE_SETLOCALTIMER},
{KK_THING_SERVICE_GETLOCALTIMER},
{KK_THING_SERVICE_SETCOUNTDOWN},
{KK_THING_SERVICE_GETCOUNTDOWN},
};
static int _kk_filter_to_plat(const char* msgtype)
{
......@@ -335,6 +338,7 @@ void kk_platMsg_handle(void* data, char* chalMark){
}else{
kk_mid_subdev_add(KK_DM_DEVICE_SUBDEV,proCode->valuestring,devCode->valuestring, mac->valuestring,info_dcode->valuestring);
}
dm_mgr_update_timestamp_by_devicecode(devCode->valuestring,HAL_UptimeMs()-s_start_time);
}else if (strstr(msgType->valuestring, KK_THING_TOPO_BATCH_ADD_MSG) != NULL){
kk_ipc_send(IPC_MID2APP,data,strlen(data));
......@@ -364,6 +368,49 @@ void kk_platMsg_handle(void* data, char* chalMark){
kk_ipc_send(IPC_MID2APP,data,strlen(data)+1);
dm_mgr_subdev_delete(devCode->valuestring);
}else if(strstr(msgType->valuestring, KK_THING_EVENT_MESSAGE) != NULL && \
strstr(msgType->valuestring, KK_THING_EVENT_POST) != NULL){
kk_tsl_t *dev_shadow = NULL;
int idx = 0;
kk_tsl_event_t *eventItem =NULL;
char tmpStr[128] = {0};
dm_mgr_get_device_shadow_by_devicecode(info_dcode->valuestring,&dev_shadow);
for(idx = 0; idx < dev_shadow->event_number; idx++){
eventItem = dev_shadow->events + idx;
if(eventItem != NULL){
if(strcmp(eventItem->identifier,MSG_PROPERTY_STR) != 0 &&
eventItem->output_data_number > 0){
int index = 0;
kk_tsl_data_t *itemData = NULL;
cJSON * itemStr = NULL;
for(index = 0; index < eventItem->output_data_number;index++){
itemStr = cJSON_GetObjectItem(jsonPay, eventItem->identifier);
itemData = eventItem->output_datas + index;
if(itemStr != NULL){
memset(tmpStr,0x0,sizeof(tmpStr));
sprintf(tmpStr,"%s.%s",eventItem->identifier,itemData->identifier);
#if 0
if(strcmp(itemData->identifier,"Battery") == 0) {
double batteryValue = 0;
kk_tsl_get_value(kk_tsl_get_property_value,dev_shadow,itemData->identifier,&batteryValue,NULL);
kk_tsl_set_value(kk_tsl_set_event_output_value,dev_shadow,tmpStr,&batteryValue,NULL);
}
else{
kk_tsl_set_value(kk_tsl_set_event_output_value,dev_shadow,tmpStr,&itemStr->valueint,NULL);
}
#else
kk_tsl_set_value(kk_tsl_set_event_output_value,dev_shadow,tmpStr,&itemStr->valueint,NULL);
#endif
INFO_PRINT("kk_platMsg_handle data: event post\n");
dm_msg_thing_event_post(info_dcode->valuestring,eventItem->identifier);
}
}
}
}
}
}else if(strstr(msgType->valuestring, KK_THING_TOPO_BATCH_DELETE_MSG) != NULL){
kk_ipc_send(IPC_MID2APP,data,strlen(data));
cJSON *devices = cJSON_GetObjectItem(jsonPay, MSG_TOPO_CHANGE_DEVICES_STR);
......@@ -392,7 +439,7 @@ void kk_platMsg_dispatch(void)
if (dm_queue_msg_next2(&data) == SUCCESS_RETURN) {
dm_queue_msg_t *msg = (dm_queue_msg_t *)data;
INFO_PRINT("kk_handle_platMsg_dispatch get call \n");
//INFO_PRINT("kk_handle_platMsg_dispatch get call \n");
if (kk_platMsg_handle) {
kk_platMsg_handle(msg->data,msg->chalMark);
}
......
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