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

【修改内容】epNum适配

【提交人】陈伟灿
parent b4755898
......@@ -52,7 +52,7 @@ const char DM_MSG_TO_MIDDWARE[] = "{\"msgtype\":\"%s\",\"productCode\":\"%s\",\"
#define KK_POWER_SWITCH_2 "PowerSwitch_2"
#define KK_POWER_SWITCH_3 "PowerSwitch_3"
#define KK_POWER_SWITCH_4 "PowerSwitch_4"
extern char* KK_Make_Topic(cJSON *info);
extern char* KK_Make_Topic(cJSON *info,cJSON *data);
extern int KK_Subdev_UnSubscribe(cJSON *payload);
extern int KK_Subdev_UnSubscribe_By_DeviceCode(const char *deviceCode,const char *productCode );
extern int KK_Subdev_Subscribe(const cJSON *root);
......@@ -214,15 +214,16 @@ int _kk_sendto_cloud(cJSON *root)
if(msgTypeStr == NULL){
return RETURN_FAIL;
}
topic = KK_Make_Topic(info);
if(topic == NULL){
return RETURN_FAIL;
}
pData = cJSON_GetObjectItem(root, MSG_PAYLOAD_STR);
if(pData == NULL){
free(topic);
return RETURN_FAIL;
}
topic = KK_Make_Topic(info,pData);
if(topic == NULL){
return RETURN_FAIL;
}
//If topo delete,need UnSubscribe the topic
if(strstr(msgTypeStr->valuestring,KK_FILTER_DELETE_TOPIC) != NULL){
KK_Subdev_UnSubscribe(pData);
......@@ -258,10 +259,12 @@ int _kk_sendto_cloud(cJSON *root)
free(topic);
return RETURN_SUCCESS;
}
if(kk_check_need_split(info)){
kk_split_send_data(pData,topic);
}
else{
//if(kk_check_need_split(info)){
//kk_split_send_data(pData,topic);
//}
//else
{
#if 0
cJSON *pParam = NULL;
cJSON *PowerSwitch = NULL;
int i = 0;
......@@ -282,6 +285,7 @@ int _kk_sendto_cloud(cJSON *root)
break;
}
}
#endif
char* out=cJSON_Print(pData);
KK_MQTT_SendMsg(topic,(const char*)out);
free(out);
......@@ -511,7 +515,7 @@ static char * _kk_data_create(const char *topic,const char *data)
root=cJSON_CreateObject();
cJSON* infoObj = cJSON_Parse(infoStr);
cJSON* payloadObj = cJSON_Parse(data);
#if 1
#if 0
cJSON * params = cJSON_GetObjectItem(payloadObj,"params");
if(params != NULL){
cJSON * PowerSwitch = cJSON_GetObjectItem(params,"PowerSwitch");
......@@ -564,7 +568,7 @@ int KK_Send_CloudState(int state)
infoStr_len = strlen(DM_MSG_TO_MIDDWARE)+strlen(KK_CLOUDSTATE_MSG_REPLY)+10;
infoStr = malloc(infoStr_len);
if(infoStr == NULL){
ERROR_PRINT("[%s][%d]\n",__FUNCTION__,__LINE__);
ERROR_PRINT("infoStr == NULL\n");
return RETURN_FAIL;
}
memset(infoStr,0x0,infoStr_len);
......@@ -573,7 +577,7 @@ int KK_Send_CloudState(int state)
payloadStr_len = strlen(DM_MSG_CLOUDSTATE) + 10;
payloadStr = malloc(payloadStr_len);
if(payloadStr == NULL){
ERROR_PRINT("[%s][%d]\n",__FUNCTION__,__LINE__);
ERROR_PRINT("payloadStr == NULL\n");
return RETURN_FAIL;
}
memset(payloadStr,0x0,payloadStr_len);
......@@ -589,7 +593,7 @@ int KK_Send_CloudState(int state)
cJSON_Delete(root);
free(payloadStr);
free(infoStr);
INFO_PRINT("[%s][%d]%s\n",__FUNCTION__,__LINE__,out);
INFO_PRINT("%s\n",out);
free(out);
return RETURN_SUCCESS;
}
......@@ -605,11 +609,11 @@ void KK_Sendto_DevData(const char *topic,const char *data)
{
if(_check_invalid_topic(topic))
{
INFO_PRINT("[%s][%d]ingore the topic:%s\n",__FUNCTION__,__LINE__,topic);
INFO_PRINT("ingore the topic:%s\n",topic);
return;//ingore the message
}
INFO_PRINT("[%s][%d]receive from cloud,topic:%s\n",__FUNCTION__,__LINE__,topic);
INFO_PRINT("[%s][%d]receive from cloud,data:%s\n",__FUNCTION__,__LINE__,data);
INFO_PRINT("receive from cloud,topic:%s\n",topic);
INFO_PRINT("receive from cloud,data:%s\n",data);
char *send_data = _kk_data_create(topic,data);
if(send_data == NULL){
return;
......
......@@ -64,7 +64,7 @@ int main(int argc, char* argv[])
open("kcloud",LOG_PID,LOG_USER);
/*set the callback to get the device date to cloud*/
kk_ipc_init(IPC_APP2MID,(ipc_cb*)KK_Data_FromDev,NULL,NULL);
//kk_info_report_start();
kk_info_report_start();
again:
rc = kk_start_ccu_register();
if(rc == 0){
......
......@@ -40,10 +40,13 @@ static int kk_info_get(char *str)
int ret = 0;
char version[VERSION_MAXLEN] = {0};
char *str_tmp = NULL;
char ccuid[32] = {0};
if(str == NULL){
return -1;
}
HAL_GetVersion(version);
memcpy(ccuid,KK_CCU_ID,strlen(KK_CCU_ID));
cJSON *root = cJSON_CreateObject();
if (root)
{
......@@ -56,20 +59,25 @@ static int kk_info_get(char *str)
if (ccu)
{
char status[4] = {0};
cJSON_AddItemToObject(args, "ccu", ccu);
cJSON_AddStringToObject(ccu, "id", "12345");
cJSON_AddStringToObject(ccu, "id", &ccuid[4]);
cJSON_AddStringToObject(ccu, "version", version);
cJSON_AddStringToObject(ccu, "name", "kk_new_ccu");
if(kk_get_gw_status() == DEVICE_OFFLINE){
strcpy(status,"2");
}
else if(kk_get_cloud_status() == DEVICE_OFFLINE){
//INFO_PRINT("---222kk_get_cloud_status():%d\n",kk_get_cloud_status());
//if(kk_get_gw_status() == DEVICE_OFFLINE){
//memcpy(status,"2",strlen("2"));
//}
if(kk_get_cloud_status() == DEVICE_OFFLINE)
{
//cJSON_AddStringToObject(ccu, "status", "1");
strcpy(status,"1");
//INFO_PRINT("_-----------------------------------------------------------11\n");
memcpy(status,"1",strlen("1"));
}else{
strcpy(status,"0");
//INFO_PRINT("_-----------------------------------------------------------22\n");
memcpy(status,"0",strlen("0"));
}
//INFO_PRINT("------------------------------------->status :%s\n",status);
cJSON_AddStringToObject(ccu, "status", status);
}
......@@ -91,8 +99,10 @@ static int kk_info_get(char *str)
cJSON *qr_code = cJSON_CreateObject();
if (qr_code)
{
char qrcodeStr[256] = {0};
sprintf(qrcodeStr,"KONKE-CCU:%s:%s:BBE3C5A5FC1FDB6CA1A386AB321D02AB",KK_CCU_PRODUCTID,&ccuid[4]);
cJSON_AddItemToObject(args, "qr_code", qr_code);
cJSON_AddStringToObject(qr_code, "string", "KONKE-CCU:15:95972:E53AC78A40C4EBD4ABFFA1009794641B");
cJSON_AddStringToObject(qr_code, "string", qrcodeStr);
cJSON_AddBoolToObject(qr_code, "show", 1);
}
cJSON *service = cJSON_CreateObject();
......
......@@ -83,7 +83,7 @@ static int _kk_ccu_topic_subscribe(char productCode[PRODUCT_CODE_LEN],char devic
int res = 0;
int url_len = 0;
url_len = strlen(KK_URI_SYS_PREFIX_SERVICE) + strlen(productCode)+strlen(deviceCode) + 1;
url_len = strlen(KK_URI_SYS_PREFIX) + strlen(productCode)+strlen(deviceCode) + 1;
char *url = malloc(url_len);
if (url == NULL) {
return -1;
......@@ -95,12 +95,14 @@ static int _kk_ccu_topic_subscribe(char productCode[PRODUCT_CODE_LEN],char devic
//res = KK_MQTT_SubTopic(url);
memset(url, 0, url_len);
snprintf(url, url_len, KK_URI_SYS_PREFIX_SERVICE, productCode,deviceCode);
INFO_PRINT("sys [%s][%d] URL:%s\n",__FUNCTION__,__LINE__,url);
res = KK_MQTT_SubTopic(url);
memset(url, 0, url_len);
snprintf(url, url_len, KK_URI_SYS_PREFIX, productCode, deviceCode);
INFO_PRINT("sys [%s][%d] URL:%s\n",__FUNCTION__,__LINE__,url);
res = KK_MQTT_SubTopic(url);
free(url);
return res;
}
......@@ -212,7 +214,7 @@ errorreturn:
return -1;
}
char* KK_Make_Topic(cJSON *info)
char* KK_Make_Topic(cJSON *info,cJSON *data)
{
cJSON *type,*product_code,*device_code;
char *topic = NULL;
......@@ -236,6 +238,7 @@ char* KK_Make_Topic(cJSON *info)
KK_CCU_TOPIC_Subscribe();
}
if(!strcmp(product_code->valuestring,KK_GW_PRODUCTID)){
//printf("[%s][%d]:%s\n",__FUNCTION__,__LINE__,type->valuestring);
if(strstr(type->valuestring,"/thing/status/offline") != NULL){
kk_set_gw_status(DEVICE_OFFLINE);
}else if(strstr(type->valuestring,"/thing/status/online") != NULL){
......
......@@ -29,7 +29,7 @@
#include "QR_Encode.h"
#include "cJSON.h"
#include "main.h"
#include "kk_log.h"
#define MAC_SIZE 18
#define IP_SIZE 16
......@@ -230,15 +230,15 @@ static void load_cfg_str_from_file(char *cfg_file_name, char *str)
if (fp == NULL)
{
OLED_LOG_DBG("Unable to open file: %s\n", cfg_file_name);
OLED_LOG_DBG("Use default cfg\r\n");
INFO_PRINT("Unable to open file: %s\n", cfg_file_name);
INFO_PRINT("Use default cfg\r\n");
strcpy(str, oled_cfg_default);
return;
}
if (str == NULL)
{
OLED_LOG_DBG("string is null\r\n");
INFO_PRINT("string is null\r\n");
return;
}
......@@ -277,7 +277,7 @@ static void save_cfg_str_to_file(const char *cfg_file_name, char *str)
if (NULL == file_fd)
{
OLED_LOG_DBG("config %s open error\n", cfg_file_name);
INFO_PRINT("config %s open error\n", cfg_file_name);
return;
}
......@@ -350,12 +350,12 @@ static int load_cfg_from_str(char *cfg_json_str, oled_config_t *cfg)
{
if (strncmp(cfg->ccu_name, name->valuestring, sizeof(cfg->ccu_name)))
{
OLED_LOG_DBG("update ccu name from %s to %s\r\n", cfg->ccu_name, name->valuestring);
INFO_PRINT("update ccu name from %s to %s\r\n", cfg->ccu_name, name->valuestring);
strncpy(cfg->ccu_name, name->valuestring, sizeof(cfg->ccu_name));
ret = 1;
}
OLED_LOG_DBG("ccu name %s\r\n", cfg->ccu_name);
INFO_PRINT("ccu name %s\r\n", cfg->ccu_name);
}
}
#endif
......@@ -368,12 +368,12 @@ static int load_cfg_from_str(char *cfg_json_str, oled_config_t *cfg)
{
if (cfg->ccu_status != atoi(st->valuestring))
{
OLED_LOG_DBG("update ccu status from %d to %d\r\n", cfg->ccu_status, atoi(st->valuestring));
INFO_PRINT("update ccu status from %d to %d\r\n", cfg->ccu_status, atoi(st->valuestring));
cfg->ccu_status = atoi(st->valuestring);
ret = 1;
}
OLED_LOG_DBG("ccu status %d\r\n", cfg->ccu_status);
INFO_PRINT("ccu status %d\r\n", cfg->ccu_status);
}
}
#endif
......@@ -393,12 +393,12 @@ static int load_cfg_from_str(char *cfg_json_str, oled_config_t *cfg)
{
if (strncmp(cfg->ccu_lan, interface->valuestring, sizeof(cfg->ccu_lan)))
{
OLED_LOG_DBG("update ccu lan name from %s to %s\r\n", cfg->ccu_lan, interface->valuestring);
INFO_PRINT("update ccu lan name from %s to %s\r\n", cfg->ccu_lan, interface->valuestring);
strncpy(cfg->ccu_lan, interface->valuestring, sizeof(cfg->ccu_lan));
ret = 1;
}
OLED_LOG_DBG("net interface %s\r\n", cfg->ccu_lan);
INFO_PRINT("net interface %s\r\n", cfg->ccu_lan);
}
}
}
......@@ -423,7 +423,7 @@ static int load_cfg_from_str(char *cfg_json_str, oled_config_t *cfg)
ret = 1;
}
OLED_LOG_DBG("qr string %s\r\n", cfg->ccu_qr_str);
INFO_PRINT("qr string %s\r\n", cfg->ccu_qr_str);
}
}
#endif
......@@ -436,12 +436,12 @@ static int load_cfg_from_str(char *cfg_json_str, oled_config_t *cfg)
{
if (cfg->ccu_show_qr != qr_show->valueint)
{
OLED_LOG_DBG("update ccu show_qr from %d to %d\r\n", cfg->ccu_show_qr, qr_show->valueint);
INFO_PRINT("update ccu show_qr from %d to %d\r\n", cfg->ccu_show_qr, qr_show->valueint);
cfg->ccu_show_qr = qr_show->valueint;
ret = 1;
}
OLED_LOG_DBG("qr show %d\r\n", cfg->ccu_show_qr);
INFO_PRINT("qr show %d\r\n", cfg->ccu_show_qr);
}
}
#endif
......@@ -466,12 +466,12 @@ static int load_cfg_from_str(char *cfg_json_str, oled_config_t *cfg)
{
if (strncmp(cfg->ccu_udp_path, path->valuestring, sizeof(cfg->ccu_udp_path)))
{
OLED_LOG_DBG("update ccu udp path from %s to %s\r\n", cfg->ccu_udp_path, path->valuestring);
INFO_PRINT("update ccu udp path from %s to %s\r\n", cfg->ccu_udp_path, path->valuestring);
strncpy(cfg->ccu_udp_path, path->valuestring, sizeof(cfg->ccu_udp_path));
ret = 1;
}
OLED_LOG_DBG("ccu udp path %s\r\n", cfg->ccu_udp_path);
INFO_PRINT("ccu udp path %s\r\n", cfg->ccu_udp_path);
}
}
#endif
......@@ -484,12 +484,12 @@ static int load_cfg_from_str(char *cfg_json_str, oled_config_t *cfg)
{
if (cfg->hw_version != version->valueint)
{
OLED_LOG_DBG("update ccu hw_version from %d to %d\r\n", cfg->hw_version, version->valueint);
INFO_PRINT("update ccu hw_version from %d to %d\r\n", cfg->hw_version, version->valueint);
cfg->hw_version = version->valueint;
ret = 1;
}
OLED_LOG_DBG("ccu hw version %d\r\n", cfg->hw_version);
INFO_PRINT("ccu hw version %d\r\n", cfg->hw_version);
}
}
#endif
......@@ -589,7 +589,7 @@ static int save_cfg_to_json_str(oled_config_t *cfg, char *str)
}
str_tmp = cJSON_PrintUnformatted(root);
OLED_LOG_DBG("JSON %s\r\n", str_tmp);
INFO_PRINT("JSON %s\r\n", str_tmp);
strcpy(str, str_tmp);
free(str_tmp);
cJSON_Delete(root);
......@@ -627,7 +627,7 @@ int nanomsg_sock_init(void)
sockfd = nn_socket(AF_SP, NN_PAIR);
if (sockfd == -1)
{
OLED_LOG_DBG("Failed to create socket\r\n");
INFO_PRINT("Failed to create socket\r\n");
return -1;
}
nn_bind (sockfd, OLED_NANOMSG_SOCKET_ADDR);
......@@ -639,7 +639,7 @@ void *nanomsg_recv(void *rec_data)
char *buf = NULL;
int sockfd = nanomsg_sock_init();
if(sockfd < 0){
OLED_LOG_DBG("Failed to nanomsg_sock_init\r\n");
INFO_PRINT("Failed to nanomsg_sock_init\r\n");
return NULL;
}
char nanomsg_str[1500] = {0};
......@@ -662,7 +662,7 @@ void *nanomsg_recv(void *rec_data)
{
int json_result = load_cfg_from_str(nanomsg_str, &g_oled_config);
OLED_LOG_DBG("JSON len %d \r\n%s\r\nresult %d\r\n", strlen(nanomsg_str), nanomsg_str, json_result);
INFO_PRINT("JSON len %d \r\n%s\r\nresult %d\r\n", strlen(nanomsg_str), nanomsg_str, json_result);
if (json_result == 1)
{
......@@ -759,7 +759,7 @@ int oled_dp_info(void)
if (-1 == sd)
{
OLED_LOG_DBG("socket error: %s\n", strerror(errno));
INFO_PRINT("socket error: %s\n", strerror(errno));
}
else
{
......@@ -769,7 +769,7 @@ int oled_dp_info(void)
if (ioctl(sd, SIOCGIFADDR, &ifr) < 0)
{
OLED_LOG_DBG("ioctl error: %s\n", strerror(errno));
INFO_PRINT("ioctl error: %s\n", strerror(errno));
snprintf(ip, IP_SIZE, "0.0.0.0");
}
else
......@@ -831,7 +831,7 @@ int oled_dp_info(void)
sprintf(str, "%s(%s)", g_oled_config.ccu_id, g_oled_config.ccu_version);
show_str_set(str, 0, 7, show_6x8_mode);
printf("g_oled_config.ccu_status:%d\n",g_oled_config.ccu_status);
if (g_oled_config.ccu_status == 0)
{
show_chn_set(104, 6, 4, 12);
......@@ -1114,7 +1114,7 @@ void *key_process(void *parameter)
{
if (key_pressed == 0)
{
OLED_LOG_DBG("Key pressed\r\n");
INFO_PRINT("Key pressed\r\n");
}
key_pressed += 10;
......@@ -1139,7 +1139,7 @@ void *key_process(void *parameter)
#endif
}
OLED_LOG_DBG("Key released\r\n");
INFO_PRINT("Key released\r\n");
key_pressed = 0;
}
}
......@@ -1175,7 +1175,7 @@ int main(int argc, char **argv)
if ((strlen(cfg_file_name) == 0) || (strlen(ko_file_name) == 0))
{
OLED_LOG_DBG("Usage : %s [-f cfg_file_name] [-k ko_file_nmae]\r\n", argv[0]);
INFO_PRINT("Usage : %s [-f cfg_file_name] [-k ko_file_nmae]\r\n", argv[0]);
return 0;
}
}
......@@ -1188,7 +1188,7 @@ int main(int argc, char **argv)
if (str)
{
load_cfg_str_from_file(cfg_file_name, str);
OLED_LOG_DBG("%d %s\r\n", strlen(str), str);
INFO_PRINT("%d %s\r\n", strlen(str), str);
load_cfg_from_str(str, &g_oled_config);
get_qr_img(g_oled_config.ccu_qr_str);
free(str);
......@@ -1211,7 +1211,7 @@ int main(int argc, char **argv)
rc = pthread_create(&nanomsg_recv_thread, &nanomsg_recv_attr, nanomsg_recv, (void *)NULL); //收数据
if (rc)
{
OLED_LOG_DBG("Error : unable to create thread udp_recv \r\n");
INFO_PRINT("Error : unable to create thread udp_recv \r\n");
return 0;
}
}
......@@ -1230,7 +1230,7 @@ int main(int argc, char **argv)
if (rc)
{
OLED_LOG_DBG("Error : unable to create thread oled_dp\r\n");
INFO_PRINT("Error : unable to create thread oled_dp\r\n");
return 0;
}
}
......@@ -1249,7 +1249,7 @@ int main(int argc, char **argv)
if (rc)
{
OLED_LOG_DBG("Error : unable to create thread key_process\r\n");
INFO_PRINT("Error : unable to create thread key_process\r\n");
return 0;
}
}
......@@ -1264,7 +1264,7 @@ int main(int argc, char **argv)
if (rc)
{
OLED_LOG_DBG("Error : unable to join udp_recv\r\n");
INFO_PRINT("Error : unable to join udp_recv\r\n");
return 0;
}
}
......@@ -1274,7 +1274,7 @@ int main(int argc, char **argv)
if (rc)
{
OLED_LOG_DBG("Error : unable to join oled_dp\r\n");
INFO_PRINT("Error : unable to join oled_dp\r\n");
return 0;
}
}
......@@ -1283,7 +1283,7 @@ int main(int argc, char **argv)
if (rc)
{
OLED_LOG_DBG("Error : unable to join key_thread\r\n");
INFO_PRINT("Error : unable to join key_thread\r\n");
return 0;
}
}
......
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