Commit 69bc6df2 authored by 陈伟灿's avatar 陈伟灿

Merge branch 'cwc' into 'master'

【修改内容】修改moore屏房间的设置

See merge request chenweican/k-sdk!192
parents e5013c9e 243ce91e
...@@ -985,7 +985,7 @@ void KK_Data_FromMid(void* str,int len, char* chalMark) ...@@ -985,7 +985,7 @@ void KK_Data_FromMid(void* str,int len, char* chalMark)
kk_handle_sync_push_info(); kk_handle_sync_push_info();
}else if(strstr(msgtype->valuestring,"/thing/event/alarmNotify")!= NULL){ }else if(strstr(msgtype->valuestring,"/thing/event/alarmNotify")!= NULL){
INFO_PRINT("alarmNotify handle!!!"); INFO_PRINT("alarmNotify handle!!!");
cJSON * msgId = cJSON_GetObjectItem(payload, "msgId"); cJSON * msgId = cJSON_GetObjectItem(payload, "msgId");
kk_device_alarm_handle(payload,productCode->valuestring,deviceCode->valuestring,msgId->valuestring); kk_device_alarm_handle(payload,productCode->valuestring,deviceCode->valuestring,msgId->valuestring);
}else if(strstr(msgtype->valuestring,"/thing/service/historyAlarm_reply")!= NULL){ }else if(strstr(msgtype->valuestring,"/thing/service/historyAlarm_reply")!= NULL){
INFO_PRINT("historyAlarm_reply handle!!!"); INFO_PRINT("historyAlarm_reply handle!!!");
...@@ -1011,9 +1011,10 @@ void KK_Data_FromMid(void* str,int len, char* chalMark) ...@@ -1011,9 +1011,10 @@ void KK_Data_FromMid(void* str,int len, char* chalMark)
}else if(strstr(msgtype->valuestring,"/thing/service/getClientInfo_reply")!= NULL){ }else if(strstr(msgtype->valuestring,"/thing/service/getClientInfo_reply")!= NULL){
INFO_PRINT("getClientInfo_reply handle!!!"); INFO_PRINT("getClientInfo_reply handle!!!");
kk_client_info_push_handle(payload); kk_client_info_push_handle(payload);
}else if(strstr(msgtype->valuestring,"/thing/service/addSpecialDeviceToRoom_reply")!= NULL){
kk_handle_sync_info();
} }
cJSON_Delete(json); cJSON_Delete(json);
} }
......
...@@ -1237,17 +1237,33 @@ static void kk_strdel(char* s,char del_x) ...@@ -1237,17 +1237,33 @@ static void kk_strdel(char* s,char del_x)
*q=*p; *q=*p;
} }
static int _kk_mac_str_to_upper(char *s)
{
if(s == NULL){
return -1;
}
char *q=s;
while(*q != '\0'){
if(*q >= 'a' && *q <= 'z'){
*q-=32;
}
q++;
}
return 0;
}
static int kk_service_addScreen_handle(cJSON *info,cJSON *msgId,cJSON *params) static int kk_service_addScreen_handle(cJSON *info,cJSON *msgId,cJSON *params)
{ {
char str_mac[32] = {0}; char str_mac[32] = {0};
char mac_head[6] = {0};
if(params == NULL){ if(params == NULL){
return INVALID_PARAMETER; return INVALID_PARAMETER;
} }
cJSON *mac = cJSON_GetObjectItem(params,MSG_DEVICE_MAC); cJSON *mac = cJSON_GetObjectItem(params,MSG_DEVICE_MAC);
if(mac == NULL) return INVALID_PARAMETER; if(mac == NULL) return INVALID_PARAMETER;
strcpy(str_mac,mac->valuestring); strcpy(str_mac,mac->valuestring);
kk_strdel(str_mac,':'); memcpy(mac_head,str_mac,5);
//kk_strdel(str_mac,':');
_kk_mac_str_to_upper(str_mac);
cJSON *ip = cJSON_GetObjectItem(params,MSG_DEVICE_IP); cJSON *ip = cJSON_GetObjectItem(params,MSG_DEVICE_IP);
if(ip == NULL) return INVALID_PARAMETER; if(ip == NULL) return INVALID_PARAMETER;
cJSON *version = cJSON_GetObjectItem(params,MSG_DEVICE_VERSION); cJSON *version = cJSON_GetObjectItem(params,MSG_DEVICE_VERSION);
...@@ -1257,11 +1273,11 @@ static int kk_service_addScreen_handle(cJSON *info,cJSON *msgId,cJSON *params) ...@@ -1257,11 +1273,11 @@ static int kk_service_addScreen_handle(cJSON *info,cJSON *msgId,cJSON *params)
cJSON *devtype = cJSON_GetObjectItem(params,MSG_DEVICE_TYPE); cJSON *devtype = cJSON_GetObjectItem(params,MSG_DEVICE_TYPE);
if(devtype == NULL) return INVALID_PARAMETER; if(devtype == NULL) return INVALID_PARAMETER;
kk_service_addScreen_handle_reply(info,msgId,serialid->valuestring); kk_service_addScreen_handle_reply(info,msgId,serialid->valuestring);
#ifdef CONFIG_A133_PLATFORM if(strcmp(mac_head,"01:01") == 0){//moore4c mac
kk_screenDev_insert_db(devtype->valueint,serialid->valuestring,ip->valuestring,str_mac,version->valuestring,""); kk_screenDev_insert_db(devtype->valueint,serialid->valuestring,ip->valuestring,&str_mac[6],version->valuestring,"");
#else }else{
kk_screenDev_insert_db(devtype->valueint,serialid->valuestring,ip->valuestring,&str_mac[4],version->valuestring,""); kk_screenDev_insert_db(devtype->valueint,serialid->valuestring,ip->valuestring,str_mac,version->valuestring,"");
#endif }
kk_service_client_online_push(info,msgId,serialid->valuestring); kk_service_client_online_push(info,msgId,serialid->valuestring);
return SUCCESS_RETURN; return SUCCESS_RETURN;
} }
...@@ -1276,6 +1292,7 @@ static int kk_service_addScreen_handle(cJSON *info,cJSON *msgId,cJSON *params) ...@@ -1276,6 +1292,7 @@ static int kk_service_addScreen_handle(cJSON *info,cJSON *msgId,cJSON *params)
static int kk_service_addScreenToRoom_handle(cJSON *params) static int kk_service_addScreenToRoom_handle(cJSON *params)
{ {
char str_mac[32] = {0}; char str_mac[32] = {0};
char mac_head[6] = {0};
if(params == NULL){ if(params == NULL){
return INVALID_PARAMETER; return INVALID_PARAMETER;
} }
...@@ -1288,10 +1305,14 @@ static int kk_service_addScreenToRoom_handle(cJSON *params) ...@@ -1288,10 +1305,14 @@ static int kk_service_addScreenToRoom_handle(cJSON *params)
if(roomId == NULL) return INVALID_PARAMETER; if(roomId == NULL) return INVALID_PARAMETER;
cJSON *name = cJSON_GetObjectItem(params,MSG_AREA_ADDROOM_DEVICENAME); cJSON *name = cJSON_GetObjectItem(params,MSG_AREA_ADDROOM_DEVICENAME);
if(name == NULL) return INVALID_PARAMETER; if(name == NULL) return INVALID_PARAMETER;
#ifdef CONFIG_A133_PLATFORM _kk_mac_str_to_upper(str_mac);
#else memcpy(mac_head,str_mac,5);
kk_screenDev_update_room(str_mac,roomId->valuestring,roomname->valuestring,name->valuestring); if(strcmp(mac_head,"00:00") == 0){
#endif kk_screenDev_update_room(&str_mac[6],roomId->valuestring,roomname->valuestring,name->valuestring);
}
else{
kk_screenDev_update_room(str_mac,roomId->valuestring,roomname->valuestring,name->valuestring);
}
return SUCCESS_RETURN; return SUCCESS_RETURN;
} }
/************************************************************ /************************************************************
......
...@@ -676,17 +676,32 @@ int kk_indoor_air_action_add(char *propertyValue,char* deviceCode,int delay,char ...@@ -676,17 +676,32 @@ int kk_indoor_air_action_add(char *propertyValue,char* deviceCode,int delay,char
cJSON* Temperature = cJSON_GetObjectItem(json, "Temperature"); cJSON* Temperature = cJSON_GetObjectItem(json, "Temperature");
if(Temperature == NULL) { cJSON_Delete(json);return -1;} if(Temperature == NULL) { cJSON_Delete(json);return -1;}
memset(data,0x0,sizeof(data)); memset(data,0x0,sizeof(data));
sprintf(data,"%f",Temperature->valuedouble); if(Temperature->type == cJSON_String){
memcpy(data,Temperature->valuestring,strlen(Temperature->valuestring));
}else{
sprintf(data,"%f",Temperature->valuedouble);
}
_kk_indoor_air_info_handle(deviceCode,"Temperature",data,epnum,delay,gwDeviceCode,sceneId,type,0); _kk_indoor_air_info_handle(deviceCode,"Temperature",data,epnum,delay,gwDeviceCode,sceneId,type,0);
cJSON* WindSpeed = cJSON_GetObjectItem(json, "WindSpeed"); cJSON* WindSpeed = cJSON_GetObjectItem(json, "WindSpeed");
if(WindSpeed == NULL) { cJSON_Delete(json);return -1;} if(WindSpeed == NULL) { cJSON_Delete(json);return -1;}
memset(data,0x0,sizeof(data)); memset(data,0x0,sizeof(data));
sprintf(data,"%d",WindSpeed->valueint); if(WindSpeed->type == cJSON_String){
memcpy(data,WindSpeed->valuestring,strlen(WindSpeed->valuestring));
}else{
sprintf(data,"%d",WindSpeed->valueint);
}
_kk_indoor_air_info_handle(deviceCode,"WindSpeed",data,epnum,delay,gwDeviceCode,sceneId,type,0); _kk_indoor_air_info_handle(deviceCode,"WindSpeed",data,epnum,delay,gwDeviceCode,sceneId,type,0);
cJSON* WorkMode = cJSON_GetObjectItem(json, "WorkMode"); cJSON* WorkMode = cJSON_GetObjectItem(json, "WorkMode");
if(WorkMode == NULL){ cJSON_Delete(json);return -1;} if(WorkMode == NULL){ cJSON_Delete(json);return -1;}
memset(data,0x0,sizeof(data)); memset(data,0x0,sizeof(data));
sprintf(data,"%d",WorkMode->valueint); if(WorkMode->type == cJSON_String){
memcpy(data,WorkMode->valuestring,strlen(WorkMode->valuestring));
}else{
sprintf(data,"%d",WorkMode->valueint);
}
_kk_indoor_air_info_handle(deviceCode,"WorkMode",data,epnum,delay,gwDeviceCode,sceneId,type,0); _kk_indoor_air_info_handle(deviceCode,"WorkMode",data,epnum,delay,gwDeviceCode,sceneId,type,0);
cJSON_Delete(json); cJSON_Delete(json);
return 0; return 0;
...@@ -1120,16 +1135,6 @@ int kk_screenDev_insert_db(int devType,char *serialId, \ ...@@ -1120,16 +1135,6 @@ int kk_screenDev_insert_db(int devType,char *serialId, \
*返 回 值:0:成功;其他:失败 *返 回 值:0:成功;其他:失败
*其他说明: *其他说明:
*************************************************************/ *************************************************************/
void str_trans(char c[]) {
int i;
for(i=0;c[i];i++)
if(c[i]>='A'&&c[i]<='Z')
c[i]=(c[i]-'A')+'a';
/*以下注释内容为小写转大写,如不需要可删除*/
/*else if(c[i]<='z' && c[i]>='a')
c[i]=(c[i]-'a')+'A';*/
}
int kk_screenDev_update_room(char *mac,char *roomid,char *roomname,char* name) int kk_screenDev_update_room(char *mac,char *roomid,char *roomname,char* name)
{ {
char *sqlCmd = NULL; char *sqlCmd = NULL;
...@@ -1137,7 +1142,6 @@ int kk_screenDev_update_room(char *mac,char *roomid,char *roomname,char* name) ...@@ -1137,7 +1142,6 @@ int kk_screenDev_update_room(char *mac,char *roomid,char *roomname,char* name)
char *zErrMsg = 0; char *zErrMsg = 0;
kk_subDb_ctx_t *ctx = _kk_subDb_get_ctx(); kk_subDb_ctx_t *ctx = _kk_subDb_get_ctx();
str_trans(mac);
_kk_subDb_lock(); _kk_subDb_lock();
sqlCmd = sqlite3_mprintf("UPDATE ScreenDeviceInfo SET roomId= '%s',roomName ='%s',deviceName = '%s' WHERE mac= '%s'",roomid,roomname,name,mac); sqlCmd = sqlite3_mprintf("UPDATE ScreenDeviceInfo SET roomId= '%s',roomName ='%s',deviceName = '%s' WHERE mac= '%s'",roomid,roomname,name,mac);
rc = sqlite3_exec(ctx->pDb, sqlCmd, NULL, NULL, &zErrMsg); rc = sqlite3_exec(ctx->pDb, sqlCmd, NULL, NULL, &zErrMsg);
......
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