Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
K
k-sdk
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
陈伟灿
k-sdk
Commits
5dcf9fd9
Commit
5dcf9fd9
authored
Oct 25, 2021
by
chen.weican
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
【修改内容】修改房间设置相关
【提交人】陈伟灿
parent
d3176669
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
299 additions
and
30 deletions
+299
-30
common/api/com_api.h
common/api/com_api.h
+3
-1
midware/midware/area/kk_area_handle.c
midware/midware/area/kk_area_handle.c
+77
-7
midware/midware/area/kk_area_handle.h
midware/midware/area/kk_area_handle.h
+4
-0
midware/midware/dm/kk_dm_msg.h
midware/midware/dm/kk_dm_msg.h
+13
-3
midware/midware/dm/kk_linkkit.c
midware/midware/dm/kk_linkkit.c
+202
-19
No files found.
common/api/com_api.h
View file @
5dcf9fd9
...
@@ -71,7 +71,9 @@ typedef enum {
...
@@ -71,7 +71,9 @@ typedef enum {
#define MSG_PROPERTY_STR "property"
#define MSG_PROPERTY_STR "property"
#define MSG_PROPERTIES_STR "properties"
#define MSG_PROPERTIES_STR "properties"
#define MSG_ONLINE_STATUS_STR "onlineStatus"
#define MSG_ONLINE_STATUS_STR "onlineStatus"
#define MSG_AREA_ROOM_FLOORS "floors"
#define MSG_AREA_ROOM_FLOOR_ID "floorId"
#define MSG_AREA_ROOM_FLOOR_ROOMS "rooms"
/************************LOCK KEY*************************/
/************************LOCK KEY*************************/
#define MSG_KEYDELETE_NOTIFICATION_KEYID "KeyDeletedNotification.KeyID"
#define MSG_KEYDELETE_NOTIFICATION_KEYID "KeyDeletedNotification.KeyID"
#define MSG_KEYDELETE_NOTIFICATION_KEYTYPE "KeyDeletedNotification.KeyType"
#define MSG_KEYDELETE_NOTIFICATION_KEYTYPE "KeyDeletedNotification.KeyType"
...
...
midware/midware/area/kk_area_handle.c
View file @
5dcf9fd9
...
@@ -56,7 +56,9 @@ static int _kk_area_db_init(void)
...
@@ -56,7 +56,9 @@ static int _kk_area_db_init(void)
idx INTEGER PRIMARY KEY, \
idx INTEGER PRIMARY KEY, \
name varchar(256), \
name varchar(256), \
roomId varchar(256), \
roomId varchar(256), \
armingstate INTEGER)"
;
armingstate INTEGER, \
floorId varchar(256), \
floorName varchar(256))"
;
if
(
sqlite3_exec
(
ctx
->
pDb
,
pAreaTable
,
NULL
,
NULL
,
&
pcErr
)
!=
SQLITE_OK
)
if
(
sqlite3_exec
(
ctx
->
pDb
,
pAreaTable
,
NULL
,
NULL
,
&
pcErr
)
!=
SQLITE_OK
)
{
{
...
@@ -212,13 +214,42 @@ int kk_room_add(const char *name,const char *roomId)
...
@@ -212,13 +214,42 @@ int kk_room_add(const char *name,const char *roomId)
}
}
}
}
int
kk_get_roomname_by_id
(
const
char
*
roomid
,
char
*
roomname
,
int
len
)
{
int
isExist
=
0
;
sqlite3_stmt
*
stmt
;
char
*
pRoomname
=
NULL
;
kk_area_ctx_t
*
ctx
=
_kk_area_get_ctx
();
char
*
sqlCmd
=
NULL
;
int
tlen
=
0
;
if
(
roomname
==
NULL
){
return
-
1
;
}
_kk_area_lock
();
sqlCmd
=
sqlite3_mprintf
(
"select * from AreaInfo WHERE roomId= '%s'"
,
roomid
);
sqlite3_prepare_v2
(
ctx
->
pDb
,
sqlCmd
,
strlen
(
sqlCmd
),
&
stmt
,
NULL
);
//INFO_PRINT("total_column = %d\n", sqlite3_column_count(stmt));
while
(
sqlite3_step
(
stmt
)
==
SQLITE_ROW
){
pRoomname
=
(
char
*
)
sqlite3_column_text
(
stmt
,
DB_ROOM_NAME
);
}
if
(
pRoomname
!=
NULL
&&
strlen
(
pRoomname
)
>
0
){
tlen
=
strlen
(
pRoomname
)
>
len
?
len
:
strlen
(
pRoomname
);
strncpy
(
roomname
,
pRoomname
,
tlen
);
}
else
{
strcpy
(
roomname
,
""
);
}
sqlite3_finalize
(
stmt
);
sqlite3_free
(
sqlCmd
);
_kk_area_unlock
();
return
0
;
}
int
kk_room_update_armingstate
(
int
state
,
const
char
*
roomid
)
int
kk_room_update_armingstate
(
int
state
,
const
char
*
roomid
)
{
{
char
*
sqlCmd
=
NULL
;
char
*
sqlCmd
=
NULL
;
int
rc
=
0
;
int
rc
=
0
;
char
*
zErrMsg
=
0
;
char
*
zErrMsg
=
0
;
kk_area_ctx_t
*
ctx
=
_kk_area_get_ctx
();
kk_area_ctx_t
*
ctx
=
_kk_area_get_ctx
();
_kk_area_lock
();
_kk_area_lock
();
sqlCmd
=
sqlite3_mprintf
(
"UPDATE AreaInfo SET armingstate=%d WHERE roomId= '%s'"
,
state
,
roomid
);
sqlCmd
=
sqlite3_mprintf
(
"UPDATE AreaInfo SET armingstate=%d WHERE roomId= '%s'"
,
state
,
roomid
);
rc
=
sqlite3_exec
(
ctx
->
pDb
,
sqlCmd
,
NULL
,
NULL
,
&
zErrMsg
);
rc
=
sqlite3_exec
(
ctx
->
pDb
,
sqlCmd
,
NULL
,
NULL
,
&
zErrMsg
);
...
@@ -232,6 +263,26 @@ int kk_room_update_armingstate(int state,const char *roomid)
...
@@ -232,6 +263,26 @@ int kk_room_update_armingstate(int state,const char *roomid)
_kk_area_unlock
();
_kk_area_unlock
();
return
SUCCESS_RETURN
;
return
SUCCESS_RETURN
;
}
}
int
kk_room_set_floor_info
(
const
char
*
floorId
,
const
char
*
floorName
,
const
char
*
roomid
)
{
char
*
sqlCmd
=
NULL
;
int
rc
=
0
;
char
*
zErrMsg
=
0
;
kk_area_ctx_t
*
ctx
=
_kk_area_get_ctx
();
_kk_area_lock
();
sqlCmd
=
sqlite3_mprintf
(
"UPDATE AreaInfo SET floorId=%s,floorName=%s WHERE roomId= '%s'"
,
floorId
,
floorName
,
roomid
);
rc
=
sqlite3_exec
(
ctx
->
pDb
,
sqlCmd
,
NULL
,
NULL
,
&
zErrMsg
);
if
(
rc
!=
SQLITE_OK
){
ERROR_PRINT
(
"SQL error: %s
\n
"
,
zErrMsg
);
sqlite3_free
(
zErrMsg
);
}
else
{
INFO_PRINT
(
"Table updata data successfully
\n
"
);
}
sqlite3_free
(
sqlCmd
);
_kk_area_unlock
();
return
SUCCESS_RETURN
;
}
int
kk_room_delete
(
const
char
*
roomId
)
int
kk_room_delete
(
const
char
*
roomId
)
{
{
int
res
=
0
;
int
res
=
0
;
...
@@ -239,7 +290,7 @@ int kk_room_delete(const char *roomId)
...
@@ -239,7 +290,7 @@ int kk_room_delete(const char *roomId)
char
*
sqlCmd
=
NULL
;
char
*
sqlCmd
=
NULL
;
char
*
zErrMsg
=
0
;
char
*
zErrMsg
=
0
;
const
char
*
deleteCmd
=
"delete from AreaInfo where roomId = '%s';"
;
const
char
*
deleteCmd
=
"delete from AreaInfo where roomId = '%s';"
;
kk_room_dev_remove_by_roomid
(
roomId
);
_kk_area_lock
();
_kk_area_lock
();
sqlCmd
=
sqlite3_mprintf
(
deleteCmd
,
roomId
);
sqlCmd
=
sqlite3_mprintf
(
deleteCmd
,
roomId
);
...
@@ -276,6 +327,7 @@ static int _kk_check_dev_exist(const char* deviceCode,const char *epNum)
...
@@ -276,6 +327,7 @@ static int _kk_check_dev_exist(const char* deviceCode,const char *epNum)
if
(
!
strcmp
(
deviceCode
,
pDeviceCode
)
&&
!
strcmp
(
pEpNum
,
epNum
))
if
(
!
strcmp
(
deviceCode
,
pDeviceCode
)
&&
!
strcmp
(
pEpNum
,
epNum
))
{
{
isExist
=
1
;
isExist
=
1
;
INFO_PRINT
(
"_kk_check_dev_exist
\n
"
);
break
;
break
;
}
}
}
}
...
@@ -294,7 +346,7 @@ int kk_room_dev_add(const char *roomId,const char *roomName,const char *deviceCo
...
@@ -294,7 +346,7 @@ int kk_room_dev_add(const char *roomId,const char *roomName,const char *deviceCo
if
(
_kk_check_dev_exist
(
deviceCode
,
epNum
)){
if
(
_kk_check_dev_exist
(
deviceCode
,
epNum
)){
sqlCmd
=
sqlite3_mprintf
(
"UPDATE AreaDevInfo SET roomId='%s',
dev
Name='%s', devName='%s'\
sqlCmd
=
sqlite3_mprintf
(
"UPDATE AreaDevInfo SET roomId='%s',
room
Name='%s', devName='%s'\
WHERE deviceCode= '%s' and epNum = '%s'"
,
roomId
,
roomName
,
devName
,
deviceCode
,
epNum
);
WHERE deviceCode= '%s' and epNum = '%s'"
,
roomId
,
roomName
,
devName
,
deviceCode
,
epNum
);
}
}
else
{
else
{
...
@@ -440,6 +492,27 @@ int kk_get_device_roomInfo(const char* deviceCode,int epNum,char *roomName,char
...
@@ -440,6 +492,27 @@ int kk_get_device_roomInfo(const char* deviceCode,int epNum,char *roomName,char
_kk_area_unlock
();
_kk_area_unlock
();
return
isGet
;
return
isGet
;
}
}
int
kk_room_dev_remove_by_roomid
(
const
char
*
roomid
)
{
int
res
=
0
;
kk_area_ctx_t
*
ctx
=
_kk_area_get_ctx
();
char
*
sqlCmd
=
NULL
;
char
*
zErrMsg
=
0
;
const
char
*
deleteCmd
=
"delete from AreaDevInfo where roomId = '%s';"
;
_kk_area_lock
();
sqlCmd
=
sqlite3_mprintf
(
deleteCmd
,
roomid
);
res
=
sqlite3_exec
(
ctx
->
pDb
,
sqlCmd
,
NULL
,
NULL
,
&
zErrMsg
);
if
(
res
!=
SQLITE_OK
){
ERROR_PRINT
(
"SQL error: %s
\n
"
,
zErrMsg
);
sqlite3_free
(
zErrMsg
);
}
else
{
//INFO_PRINT("sub device insert data successfully\n");
}
sqlite3_free
(
sqlCmd
);
_kk_area_unlock
();
return
SUCCESS_RETURN
;
}
int
kk_room_dev_remove
(
const
char
*
deviceCode
,
const
char
*
epNum
)
int
kk_room_dev_remove
(
const
char
*
deviceCode
,
const
char
*
epNum
)
{
{
int
res
=
0
;
int
res
=
0
;
...
@@ -448,9 +521,6 @@ int kk_room_dev_remove(const char *deviceCode,const char *epNum)
...
@@ -448,9 +521,6 @@ int kk_room_dev_remove(const char *deviceCode,const char *epNum)
char
*
zErrMsg
=
0
;
char
*
zErrMsg
=
0
;
const
char
*
insertCmd
=
NULL
;
const
char
*
insertCmd
=
NULL
;
printf
(
"deviceCode---->%s,%s
\n
"
,
deviceCode
,
epNum
);
if
(
epNum
==
NULL
){
if
(
epNum
==
NULL
){
insertCmd
=
"delete from AreaDevInfo where deviceCode = '%s';"
;
insertCmd
=
"delete from AreaDevInfo where deviceCode = '%s';"
;
}
}
...
...
midware/midware/area/kk_area_handle.h
View file @
5dcf9fd9
...
@@ -12,6 +12,8 @@ enum{
...
@@ -12,6 +12,8 @@ enum{
DB_ROOM_NAME
,
DB_ROOM_NAME
,
DB_ROOM_ID
,
DB_ROOM_ID
,
DB_ROOM_ARMING
,
DB_ROOM_ARMING
,
DB_ROOM_FLOORID
,
DB_ROOM_FLOORNAME
,
};
};
enum
{
enum
{
...
@@ -36,5 +38,7 @@ int kk_get_room_armingstate(const char* roomId);
...
@@ -36,5 +38,7 @@ int kk_get_room_armingstate(const char* roomId);
int
kk_get_roomId_by_deviceCode
(
const
char
*
deviceCode
,
const
char
*
epNum
,
char
*
roomId
,
int
size
);
int
kk_get_roomId_by_deviceCode
(
const
char
*
deviceCode
,
const
char
*
epNum
,
char
*
roomId
,
int
size
);
int
kk_get_device_roomInfo
(
const
char
*
deviceCode
,
int
epNum
,
char
*
roomName
,
char
*
roomId
);
int
kk_get_device_roomInfo
(
const
char
*
deviceCode
,
int
epNum
,
char
*
roomName
,
char
*
roomId
);
int
kk_room_reset_armingstate
(
void
);
int
kk_room_reset_armingstate
(
void
);
int
kk_room_dev_remove_by_roomid
(
const
char
*
roomid
);
int
kk_room_set_floor_info
(
const
char
*
floorId
,
const
char
*
floorName
,
const
char
*
roomid
);
#endif
#endif
midware/midware/dm/kk_dm_msg.h
View file @
5dcf9fd9
...
@@ -59,10 +59,15 @@ const char DM_MSG_INFO[] DM_READ_ONLY;
...
@@ -59,10 +59,15 @@ const char DM_MSG_INFO[] DM_READ_ONLY;
#define KK_THING_TOPO_CHANGE_MSG "/thing/topo/change"
#define KK_THING_TOPO_CHANGE_MSG "/thing/topo/change"
#define KK_THING_SERVICE_REBOOT "/thing/service/reboot"
#define KK_THING_SERVICE_REBOOT "/thing/service/reboot"
#define KK_THING_SERVICE_ADDROOM "/thing/service/addRoom"
#define KK_THING_SERVICE_ADDROOM "/thing/service/addRoom"
#define KK_THING_SERVICE_ADDROOM_REPLY "/thing/service/addRoom_reply"
#define KK_THING_SERVICE_UPDATEROOM "/thing/service/updateRoom"
#define KK_THING_SERVICE_UPDATEROOM_REPLY "/thing/service/updateRoom_reply"
#define KK_THING_SERVICE_DELETEROOM "/thing/service/deleteRoom"
#define KK_THING_SERVICE_DELETEROOM "/thing/service/deleteRoom"
#define KK_THING_SERVICE_DELETEROOM_REPLY "/thing/service/deleteRoom_reply"
#define KK_THING_SERVICE_ADDDEVICETOROOM "/thing/service/addDeviceToRoom"
#define KK_THING_SERVICE_ADDDEVICETOROOM "/thing/service/addDeviceToRoom"
#define KK_THING_SERVICE_ADDDEVICETOROOM_REPLY "/thing/service/addDeviceToRoom_reply"
#define KK_THING_SERVICE_ADDDEVICETOROOM_REPLY "/thing/service/addDeviceToRoom_reply"
#define KK_THING_SERVICE_REMOVEDEVICEFROMROOM "/thing/service/removeDeviceFromRoom"
#define KK_THING_SERVICE_REMOVEDEVICEFROMROOM "/thing/service/removeDeviceFromRoom"
#define KK_THING_SERVICE_REMOVEDEVICEFROMROOM_REPLY "/thing/service/removeDeviceFromRoom_reply"
#define KK_THING_SERVICE_EXECUTEROOM "/thing/service/executeRoom"
#define KK_THING_SERVICE_EXECUTEROOM "/thing/service/executeRoom"
#define KK_THING_SERVICE_SETLOCALTIMER "/thing/service/setLocalTimer"
#define KK_THING_SERVICE_SETLOCALTIMER "/thing/service/setLocalTimer"
#define KK_THING_SERVICE_GETLOCALTIMER "/thing/service/getLocalTimer"
#define KK_THING_SERVICE_GETLOCALTIMER "/thing/service/getLocalTimer"
...
@@ -73,10 +78,14 @@ const char DM_MSG_INFO[] DM_READ_ONLY;
...
@@ -73,10 +78,14 @@ const char DM_MSG_INFO[] DM_READ_ONLY;
#define KK_THING_SERVICE_DELETEKEY "/thing/service/DeleteKey"
#define KK_THING_SERVICE_DELETEKEY "/thing/service/DeleteKey"
#define KK_THING_SERVICE_MODIFYKEY "/thing/service/ModifyKey"
#define KK_THING_SERVICE_MODIFYKEY "/thing/service/ModifyKey"
#define KK_THING_SERVICE_ADDSCENC "/thing/service/addScene"
#define KK_THING_SERVICE_ADDSCENC "/thing/service/addScene"
#define KK_THING_SERVICE_ADDSCENC_REPLY "/thing/service/addScene_reply"
#define KK_THING_SERVICE_DELETESCENC "/thing/service/deleteScene"
#define KK_THING_SERVICE_DELETESCENC "/thing/service/deleteScene"
#define KK_THING_SERVICE_DELETESCENC_REPLY "/thing/service/deleteScene_reply"
#define KK_THING_SERVICE_UPDATESCENC "/thing/service/updateScene"
#define KK_THING_SERVICE_UPDATESCENC "/thing/service/updateScene"
#define KK_THING_SERVICE_UPDATESCENC_REPLY "/thing/service/updateScene_reply"
#define KK_THING_SERVICE_PROPERTY_GET_REPLY "/thing/service/property/get_reply"
#define KK_THING_SERVICE_PROPERTY_GET_REPLY "/thing/service/property/get_reply"
#define KK_THING_SERVICE_EXECUTESCENE "/thing/service/executeScene"
#define KK_THING_SERVICE_EXECUTESCENE "/thing/service/executeScene"
#define KK_THING_SERVICE_EXECUTESCENE_REPLY "/thing/service/executeScene_reply"
#define KK_THING_SERVICE_NEGATIVE "/thing/service/negativeProperty"
#define KK_THING_SERVICE_NEGATIVE "/thing/service/negativeProperty"
#define KK_THING_METHOD_DELETESCENC "thing.service.deleteScene"
#define KK_THING_METHOD_DELETESCENC "thing.service.deleteScene"
#define KK_THING_METHOD_UPDATESCENC "thing.service.updateScene"
#define KK_THING_METHOD_UPDATESCENC "thing.service.updateScene"
...
@@ -88,9 +97,10 @@ const char DM_MSG_INFO[] DM_READ_ONLY;
...
@@ -88,9 +97,10 @@ const char DM_MSG_INFO[] DM_READ_ONLY;
#define KK_THING_SERVICE_SYNCDEVICEINFO_REPLY "/thing/service/syncDeviceInfo_reply"
#define KK_THING_SERVICE_SYNCDEVICEINFO_REPLY "/thing/service/syncDeviceInfo_reply"
#define KK_THING_SERVICE_CLOUDSTATUS "/thing/service/cloudStatus"
#define KK_THING_SERVICE_CLOUDSTATUS "/thing/service/cloudStatus"
#define KK_THING_SERVICE_EXECUTEDNDMODE "/thing/service/executeDNDMode"
#define KK_THING_SERVICE_EXECUTEDNDMODE "/thing/service/executeDNDMode"
#define KK_THING_SERVICE_SETFLOOR "/thing/service/setAllFloors"
#define KK_THING_SERVICE_SETFLOOR_REPLY "/thing/service/setAllFloors_reply"
#define KK_THING_SERVICE_GETFLOOR "/thing/service/getAllFloors"
#define KK_THING_SERVICE_GETFLOOR_REPLY "/thing/service/getAllFloors_reply"
#define KK_THING_SERVICE_SYNCINFO_REPLY "/thing/service/syncinfo_reply"
#define KK_THING_SERVICE_SYNCINFO_REPLY "/thing/service/syncinfo_reply"
#define KK_THING_SERVICE_SYNCINFOPUSH_REPLY "/thing/service/syncinfopush_reply"
#define KK_THING_SERVICE_SYNCINFOPUSH_REPLY "/thing/service/syncinfopush_reply"
...
...
midware/midware/dm/kk_linkkit.c
View file @
5dcf9fd9
...
@@ -414,7 +414,47 @@ int kk_topo_delete_handle(cJSON *payload,cJSON *buf)
...
@@ -414,7 +414,47 @@ int kk_topo_delete_handle(cJSON *payload,cJSON *buf)
}
}
return
SUCCESS_RETURN
;
return
SUCCESS_RETURN
;
}
}
static
int
kk_service_addRoom_reply
(
cJSON
*
param
,
cJSON
*
msgId
,
char
*
roomid
,
int
type
)
{
int
res
=
0
;
int
i
=
0
,
num
=
0
;
if
(
param
==
NULL
||
msgId
==
NULL
){
return
INVALID_PARAMETER
;
}
cJSON
*
deviceCode
=
cJSON_GetObjectItem
(
param
,
MSG_DEVICE_CODE_STR
);
if
(
deviceCode
==
NULL
){
return
FAIL_RETURN
;
}
cJSON
*
productCode
=
cJSON_GetObjectItem
(
param
,
MSG_PRODUCT_CODE_STR
);
if
(
productCode
==
NULL
){
return
FAIL_RETURN
;
}
cJSON
*
info
=
cJSON_CreateObject
();
if
(
type
==
0
){
cJSON_AddStringToObject
(
info
,
MSG_TYPE_STR
,
KK_THING_SERVICE_ADDROOM_REPLY
);
}
else
{
cJSON_AddStringToObject
(
info
,
MSG_TYPE_STR
,
KK_THING_SERVICE_UPDATEROOM_REPLY
);
}
cJSON_AddStringToObject
(
info
,
MSG_DEVICE_CODE_STR
,
deviceCode
->
valuestring
);
cJSON_AddStringToObject
(
info
,
MSG_PRODUCT_CODE_STR
,
productCode
->
valuestring
);
char
*
infff
=
cJSON_Print
(
info
);
cJSON
*
payload
=
cJSON_CreateObject
();
cJSON_AddStringToObject
(
payload
,
"desc"
,
"success"
);
cJSON_AddStringToObject
(
payload
,
"version"
,
"1.0"
);
cJSON_AddStringToObject
(
payload
,
"code"
,
"0"
);
cJSON_AddStringToObject
(
payload
,
"msgId"
,
msgId
->
valuestring
);
cJSON
*
Item
=
cJSON_CreateObject
();
cJSON_AddStringToObject
(
Item
,
"roomId"
,
roomid
);
cJSON_AddItemToObject
(
payload
,
"params"
,
Item
);
char
*
payload11
=
cJSON_Print
(
payload
);
kk_sendData2app
(
infff
,
payload11
,
0
);
free
(
payload11
);
free
(
infff
);
cJSON_Delete
(
payload
);
cJSON_Delete
(
info
);
return
res
;
}
/************************************************************
/************************************************************
*功能描述:添加房间处理函数
*功能描述:添加房间处理函数
*输入参数:params:云端传下来JSON数据,主要包含房间名称
*输入参数:params:云端传下来JSON数据,主要包含房间名称
...
@@ -422,7 +462,7 @@ int kk_topo_delete_handle(cJSON *payload,cJSON *buf)
...
@@ -422,7 +462,7 @@ int kk_topo_delete_handle(cJSON *payload,cJSON *buf)
*返 回 值: 0:成功;其他:失败
*返 回 值: 0:成功;其他:失败
*其他说明:
*其他说明:
*************************************************************/
*************************************************************/
static
int
kk_service_addRoom_handle
(
const
char
*
deviceCode
,
cJSON
*
params
)
static
int
kk_service_addRoom_handle
(
const
char
*
deviceCode
,
cJSON
*
params
,
cJSON
*
inforoot
,
cJSON
*
msgid
)
{
{
dm_mgr_dev_node_t
*
node
=
NULL
;
dm_mgr_dev_node_t
*
node
=
NULL
;
char
roomId
[
32
]
=
{
0
};
char
roomId
[
32
]
=
{
0
};
...
@@ -441,39 +481,53 @@ static int kk_service_addRoom_handle(const char *deviceCode, cJSON *params)
...
@@ -441,39 +481,53 @@ static int kk_service_addRoom_handle(const char *deviceCode, cJSON *params)
return
res
;
return
res
;
}
}
cJSON
*
roomInfoStr
=
cJSON_GetObjectItem
(
params
,
MSG_AREA_ADDROOM_ROOMNAME
);
cJSON
*
roomInfoStr
=
cJSON_GetObjectItem
(
params
,
MSG_AREA_ADDROOM_ROOMNAME
);
cJSON
*
roomIdStr
=
cJSON_GetObjectItem
(
params
,
MSG_AREA_ROOM_ROOMID
);
//
cJSON *roomIdStr = cJSON_GetObjectItem(params, MSG_AREA_ROOM_ROOMID);
if
(
roomInfoStr
==
NULL
){
if
(
roomInfoStr
==
NULL
){
return
FAIL_RETURN
;
return
FAIL_RETURN
;
}
}
memcpy
(
roomId
,
roomIdStr
->
valuestring
,
strlen
(
roomIdStr
->
valuestring
));
//
memcpy(roomId,roomIdStr->valuestring,strlen(roomIdStr->valuestring));
//
HAL_GetTime_s((char*)roomId);
HAL_GetTime_s
((
char
*
)
roomId
);
kk_room_add
(
roomInfoStr
->
valuestring
,
roomId
);
kk_room_add
(
roomInfoStr
->
valuestring
,
roomId
);
kk_service_addRoom_reply
(
inforoot
,
msgid
,
roomId
,
0
);
kk_tsl_set_value
(
kk_tsl_set_event_output_value
,
node
->
dev_shadow
,
MSG_AREA_ADDROOM_NOTIFICATION_ROOMID
,
NULL
,
roomId
);
kk_tsl_set_value
(
kk_tsl_set_event_output_value
,
node
->
dev_shadow
,
MSG_AREA_ADDROOM_NOTIFICATION_ROOMID
,
NULL
,
roomId
);
return
SUCCESS_RETURN
;
return
SUCCESS_RETURN
;
}
}
/************************************************************
/************************************************************
*功能描述:
删除
房间处理函数
*功能描述:
更新
房间处理函数
*输入参数:params:云端传下来JSON数据,主要包含房间
ID
*输入参数:params:云端传下来JSON数据,主要包含房间
名称
*输出参数:无
*输出参数:无
*返 回 值: 0:成功;其他:失败
*返 回 值: 0:成功;其他:失败
*其他说明:
*其他说明:
*************************************************************/
*************************************************************/
static
int
kk_service_
deleteRoom_handle
(
cJSON
*
params
)
static
int
kk_service_
updateRoom_handle
(
const
char
*
deviceCode
,
cJSON
*
params
,
cJSON
*
inforoot
,
cJSON
*
msgid
)
{
{
if
(
params
==
NULL
){
dm_mgr_dev_node_t
*
node
=
NULL
;
char
roomId
[
32
]
=
{
0
};
int
res
=
0
;
if
(
deviceCode
==
NULL
||
params
==
NULL
){
return
INVALID_PARAMETER
;
return
INVALID_PARAMETER
;
}
}
cJSON
*
roomInfoStr
=
cJSON_GetObjectItem
(
params
,
MSG_AREA_ADDROOM_ROOMNAME
);
cJSON
*
roomI
nfoStr
=
cJSON_GetObjectItem
(
params
,
MSG_AREA_ROOM_ROOMID
);
cJSON
*
roomI
dStr
=
cJSON_GetObjectItem
(
params
,
MSG_AREA_ROOM_ROOMID
);
if
(
roomInfoStr
==
NULL
){
if
(
roomInfoStr
==
NULL
||
roomIdStr
==
NULL
){
return
FAIL_RETURN
;
return
FAIL_RETURN
;
}
}
kk_room_delete
(
roomInfoStr
->
valuestring
);
//memcpy(roomId,roomIdStr->valuestring,strlen(roomIdStr->valuestring));
//INFO_PRINT(" update room 111!!! %s.%s\n",roomInfoStr->valuestring,roomIdStr->valuestring);
kk_room_add
(
roomInfoStr
->
valuestring
,
roomIdStr
->
valuestring
);
//INFO_PRINT(" update room 111!!!\n");
kk_service_addRoom_reply
(
inforoot
,
msgid
,
roomIdStr
->
valuestring
,
1
);
//INFO_PRINT(" update room 111!!!\n");
return
SUCCESS_RETURN
;
return
SUCCESS_RETURN
;
}
}
/************************************************************
static
int
kk_service_addDeviceToRoom_reply
(
cJSON
*
param
,
cJSON
*
msgId
)
*功能描述:删除房间处理函数
*输入参数:params:云端传下来JSON数据,主要包含房间ID
*输出参数:无
*返 回 值: 0:成功;其他:失败
*其他说明:
*************************************************************/
static
int
kk_service_deleteRoom_reply
(
cJSON
*
param
,
cJSON
*
msgId
)
{
{
int
res
=
0
;
int
res
=
0
;
int
i
=
0
,
num
=
0
;
int
i
=
0
,
num
=
0
;
...
@@ -489,7 +543,7 @@ static int kk_service_addDeviceToRoom_reply(cJSON *param,cJSON *msgId)
...
@@ -489,7 +543,7 @@ static int kk_service_addDeviceToRoom_reply(cJSON *param,cJSON *msgId)
return
FAIL_RETURN
;
return
FAIL_RETURN
;
}
}
cJSON
*
info
=
cJSON_CreateObject
();
cJSON
*
info
=
cJSON_CreateObject
();
cJSON_AddStringToObject
(
info
,
MSG_TYPE_STR
,
KK_THING_SERVICE_
ADDDEVICETO
ROOM_REPLY
);
cJSON_AddStringToObject
(
info
,
MSG_TYPE_STR
,
KK_THING_SERVICE_
DELETE
ROOM_REPLY
);
cJSON_AddStringToObject
(
info
,
MSG_DEVICE_CODE_STR
,
deviceCode
->
valuestring
);
cJSON_AddStringToObject
(
info
,
MSG_DEVICE_CODE_STR
,
deviceCode
->
valuestring
);
cJSON_AddStringToObject
(
info
,
MSG_PRODUCT_CODE_STR
,
productCode
->
valuestring
);
cJSON_AddStringToObject
(
info
,
MSG_PRODUCT_CODE_STR
,
productCode
->
valuestring
);
char
*
infff
=
cJSON_Print
(
info
);
char
*
infff
=
cJSON_Print
(
info
);
...
@@ -509,6 +563,20 @@ static int kk_service_addDeviceToRoom_reply(cJSON *param,cJSON *msgId)
...
@@ -509,6 +563,20 @@ static int kk_service_addDeviceToRoom_reply(cJSON *param,cJSON *msgId)
cJSON_Delete
(
info
);
cJSON_Delete
(
info
);
return
res
;
return
res
;
}
}
static
int
kk_service_deleteRoom_handle
(
cJSON
*
params
)
{
if
(
params
==
NULL
){
return
INVALID_PARAMETER
;
}
cJSON
*
roomInfoStr
=
cJSON_GetObjectItem
(
params
,
MSG_AREA_ROOM_ROOMID
);
if
(
roomInfoStr
==
NULL
){
return
FAIL_RETURN
;
}
kk_room_delete
(
roomInfoStr
->
valuestring
);
return
SUCCESS_RETURN
;
}
/************************************************************
/************************************************************
*功能描述:添加设备到房间处理函数
*功能描述:添加设备到房间处理函数
*输入参数:params:云端传下来JSON数据,主要包含房间ID和设备deviceCode
*输入参数:params:云端传下来JSON数据,主要包含房间ID和设备deviceCode
...
@@ -519,6 +587,7 @@ static int kk_service_addDeviceToRoom_reply(cJSON *param,cJSON *msgId)
...
@@ -519,6 +587,7 @@ static int kk_service_addDeviceToRoom_reply(cJSON *param,cJSON *msgId)
static
int
kk_service_addDeviceToRoom_handle
(
cJSON
*
params
)
static
int
kk_service_addDeviceToRoom_handle
(
cJSON
*
params
)
{
{
char
epNumStr
[
10
]
=
{
0
};
char
epNumStr
[
10
]
=
{
0
};
//char roomName[256] = {0};
int
isAirGwFlag
=
0
;
int
isAirGwFlag
=
0
;
int
res
=
0
;
int
res
=
0
;
dm_mgr_dev_node_t
*
node
=
NULL
;
dm_mgr_dev_node_t
*
node
=
NULL
;
...
@@ -538,7 +607,7 @@ static int kk_service_addDeviceToRoom_handle(cJSON *params)
...
@@ -538,7 +607,7 @@ static int kk_service_addDeviceToRoom_handle(cJSON *params)
if
(
roomId
==
NULL
){
if
(
roomId
==
NULL
){
return
FAIL_RETURN
;
return
FAIL_RETURN
;
}
}
kk_room_add
(
room_name
->
valuestring
,
roomId
->
valuestring
);
//
kk_room_add(room_name->valuestring,roomId->valuestring);
cJSON
*
deviceCode
=
cJSON_GetObjectItem
(
params
,
MSG_DEVICE_CODE_STR
);
cJSON
*
deviceCode
=
cJSON_GetObjectItem
(
params
,
MSG_DEVICE_CODE_STR
);
if
(
deviceCode
==
NULL
){
if
(
deviceCode
==
NULL
){
return
FAIL_RETURN
;
return
FAIL_RETURN
;
...
@@ -690,7 +759,92 @@ static int kk_service_executeDNDMode_handle(cJSON *params)
...
@@ -690,7 +759,92 @@ static int kk_service_executeDNDMode_handle(cJSON *params)
kk_free_room_dev_list
();
kk_free_room_dev_list
();
return
SUCCESS_RETURN
;
return
SUCCESS_RETURN
;
}
}
/************************************************************
*功能描述:设置楼层
*输入参数:params:云端下发数据,包含房间号等
*输出参数:无
*返 回 值: 0:成功;其他:失败
*其他说明:
*************************************************************/
static
int
kk_service_setFloor_handle
(
cJSON
*
params
)
{
int
res
=
0
;
char
roomIdStr
[
16
]
=
{
0
};
kk_dev_list_t
*
pList
=
NULL
;
if
(
params
==
NULL
){
return
INVALID_PARAMETER
;
}
cJSON
*
floorArray
=
cJSON_GetObjectItem
(
params
,
MSG_AREA_ROOM_FLOORS
);
if
(
floorArray
==
NULL
){
ERROR_PRINT
(
"DATA ERROR!!!
\n
"
);
return
INVALID_PARAMETER
;
}
cJSON
*
item
=
floorArray
->
child
;
while
(
item
!=
NULL
){
cJSON
*
floorId
=
cJSON_GetObjectItem
(
item
,
MSG_AREA_ROOM_FLOOR_ID
);
if
(
floorId
==
NULL
)
return
INVALID_PARAMETER
;
cJSON
*
name
=
cJSON_GetObjectItem
(
item
,
MSG_AREA_ADDROOM_DEVICENAME
);
if
(
name
==
NULL
)
return
INVALID_PARAMETER
;
cJSON
*
rooms
=
cJSON_GetObjectItem
(
item
,
MSG_AREA_ROOM_FLOOR_ROOMS
);
if
(
rooms
==
NULL
)
return
INVALID_PARAMETER
;
cJSON
*
itemroom
=
rooms
->
child
;
while
(
itemroom
!=
NULL
){
cJSON
*
roomid
=
cJSON_GetObjectItem
(
itemroom
,
MSG_AREA_ROOM_ROOMID
);
if
(
roomid
==
NULL
){
return
INVALID_PARAMETER
;
}
kk_room_set_floor_info
(
floorId
->
valuestring
,
name
->
valuestring
,
roomid
->
valuestring
);
itemroom
=
itemroom
->
next
;
}
item
=
item
->
next
;
}
return
SUCCESS_RETURN
;
}
/************************************************************
*功能描述:设置楼层
*输入参数:params:云端下发数据,包含房间号等
*输出参数:无
*返 回 值: 0:成功;其他:失败
*其他说明:
*************************************************************/
static
int
kk_service_getFloor_handle
(
cJSON
*
params
)
{
int
res
=
0
;
char
roomIdStr
[
16
]
=
{
0
};
kk_dev_list_t
*
pList
=
NULL
;
if
(
params
==
NULL
){
return
INVALID_PARAMETER
;
}
cJSON
*
floorArray
=
cJSON_GetObjectItem
(
params
,
MSG_AREA_ROOM_FLOORS
);
if
(
floorArray
==
NULL
){
ERROR_PRINT
(
"DATA ERROR!!!
\n
"
);
return
INVALID_PARAMETER
;
}
cJSON
*
item
=
floorArray
->
child
;
while
(
item
!=
NULL
){
cJSON
*
floorId
=
cJSON_GetObjectItem
(
item
,
MSG_AREA_ROOM_FLOOR_ID
);
if
(
floorId
==
NULL
)
return
INVALID_PARAMETER
;
cJSON
*
name
=
cJSON_GetObjectItem
(
item
,
MSG_AREA_ADDROOM_DEVICENAME
);
if
(
name
==
NULL
)
return
INVALID_PARAMETER
;
cJSON
*
rooms
=
cJSON_GetObjectItem
(
item
,
MSG_AREA_ROOM_FLOOR_ROOMS
);
if
(
rooms
==
NULL
)
return
INVALID_PARAMETER
;
cJSON
*
itemroom
=
rooms
->
child
;
while
(
itemroom
!=
NULL
){
cJSON
*
roomid
=
cJSON_GetObjectItem
(
itemroom
,
MSG_AREA_ROOM_ROOMID
);
if
(
roomid
==
NULL
){
return
INVALID_PARAMETER
;
}
kk_room_set_floor_info
(
floorId
->
valuestring
,
name
->
valuestring
,
roomid
->
valuestring
);
itemroom
=
itemroom
->
next
;
}
item
=
item
->
next
;
}
return
SUCCESS_RETURN
;
}
/************************************************************
/************************************************************
*功能描述:批量执行房间设备处理
*功能描述:批量执行房间设备处理
*输入参数:params:云端下发数据,包含房间号,productCode等
*输入参数:params:云端下发数据,包含房间号,productCode等
...
@@ -1372,25 +1526,37 @@ static void _iotx_linkkit_event_callback(iotx_dm_event_types_t type, char *data)
...
@@ -1372,25 +1526,37 @@ static void _iotx_linkkit_event_callback(iotx_dm_event_types_t type, char *data)
INFO_PRINT
(
" add room!!!
\n
"
);
INFO_PRINT
(
" add room!!!
\n
"
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
kk_service_addRoom_handle
(
deviceCode
->
valuestring
,
paramStr
);
kk_service_addRoom_handle
(
deviceCode
->
valuestring
,
paramStr
,
info_root
,
msgId
);
dm_msg_thing_event_post
(
deviceCode
->
valuestring
,
MSG_AREA_ADDROOM_NOTIFICATION
,
msgId
->
valuestring
);
dm_msg_thing_event_post
(
deviceCode
->
valuestring
,
MSG_AREA_ADDROOM_NOTIFICATION
,
msgId
->
valuestring
);
}
}
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_UPDATEROOM
)
==
0
){
INFO_PRINT
(
" update room!!!
\n
"
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
kk_service_updateRoom_handle
(
deviceCode
->
valuestring
,
paramStr
,
info_root
,
msgId
);
//dm_msg_thing_event_post(deviceCode->valuestring,MSG_AREA_ADDROOM_NOTIFICATION,msgId->valuestring);
}
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_DELETEROOM
)
==
0
){
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_DELETEROOM
)
==
0
){
INFO_PRINT
(
" delete room
\n
"
);
INFO_PRINT
(
" delete room
\n
"
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
kk_service_deleteRoom_handle
(
paramStr
);
kk_service_deleteRoom_handle
(
paramStr
);
kk_service_deleteRoom_reply
(
info_root
,
msgId
);
}
}
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_ADDDEVICETOROOM
)
==
0
){
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_ADDDEVICETOROOM
)
==
0
){
INFO_PRINT
(
" adddevicetoroom
\n
"
);
INFO_PRINT
(
" adddevicetoroom
\n
"
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
kk_service_addDeviceToRoom_handle
(
paramStr
);
kk_service_addDeviceToRoom_handle
(
paramStr
);
kk_service_
addDeviceToRoom_reply
(
info_root
,
msgId
);
kk_service_
common_reply
(
info_root
,
msgId
,
KK_THING_SERVICE_ADDDEVICETOROOM_REPLY
);
}
}
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_REMOVEDEVICEFROMROOM
)
==
0
){
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_REMOVEDEVICEFROMROOM
)
==
0
){
INFO_PRINT
(
" removedevicefromroom
\n
"
);
INFO_PRINT
(
" removedevicefromroom
\n
"
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
kk_service_removeDeviceFromRoom_handle
(
paramStr
);
kk_service_removeDeviceFromRoom_handle
(
paramStr
);
//kk_service_addDeviceToRoom_reply(info_root,msgId,1);
kk_service_common_reply
(
info_root
,
msgId
,
KK_THING_SERVICE_REMOVEDEVICEFROMROOM_REPLY
);
}
}
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_EXECUTEROOM
)
==
0
){
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_EXECUTEROOM
)
==
0
){
INFO_PRINT
(
" executeroom
\n
"
);
INFO_PRINT
(
" executeroom
\n
"
);
...
@@ -1402,24 +1568,28 @@ static void _iotx_linkkit_event_callback(iotx_dm_event_types_t type, char *data)
...
@@ -1402,24 +1568,28 @@ static void _iotx_linkkit_event_callback(iotx_dm_event_types_t type, char *data)
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
kk_service_addScene_handle
(
paramStr
,
msgId
);
kk_service_addScene_handle
(
paramStr
,
msgId
);
kk_service_common_reply
(
info_root
,
msgId
,
KK_THING_SERVICE_ADDSCENC_REPLY
);
}
}
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_UPDATESCENC
)
==
0
){
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_UPDATESCENC
)
==
0
){
INFO_PRINT
(
" update scene
\n
"
);
INFO_PRINT
(
" update scene
\n
"
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
kk_service_updateScene_handle
(
paramStr
,
msgId
);
kk_service_updateScene_handle
(
paramStr
,
msgId
);
kk_service_common_reply
(
info_root
,
msgId
,
KK_THING_SERVICE_UPDATESCENC_REPLY
);
}
}
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_DELETESCENC
)
==
0
){
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_DELETESCENC
)
==
0
){
INFO_PRINT
(
"delete scene
\n
"
);
INFO_PRINT
(
"delete scene
\n
"
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
kk_service_deleteScene_handle
(
paramStr
,
msgId
);
kk_service_deleteScene_handle
(
paramStr
,
msgId
);
kk_service_common_reply
(
info_root
,
msgId
,
KK_THING_SERVICE_DELETESCENC_REPLY
);
}
}
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_EXECUTESCENE
)
==
0
){
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_EXECUTESCENE
)
==
0
){
INFO_PRINT
(
"execute scene
\n
"
);
INFO_PRINT
(
"execute scene
\n
"
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
kk_service_executeScene_handle
(
paramStr
,
msgId
);
kk_service_executeScene_handle
(
paramStr
,
msgId
);
kk_service_common_reply
(
info_root
,
msgId
,
KK_THING_SERVICE_EXECUTESCENE_REPLY
);
}
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_SYNCDEVICEINFO
)
==
0
){
}
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_SYNCDEVICEINFO
)
==
0
){
INFO_PRINT
(
"SYNCDEVICEINFO service
\n
"
);
INFO_PRINT
(
"SYNCDEVICEINFO service
\n
"
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
...
@@ -1528,6 +1698,19 @@ static void _iotx_linkkit_event_callback(iotx_dm_event_types_t type, char *data)
...
@@ -1528,6 +1698,19 @@ static void _iotx_linkkit_event_callback(iotx_dm_event_types_t type, char *data)
kk_service_common_reply
(
info_root
,
msgId
,
"/thing/service/executeDNDMode_reply"
);
kk_service_common_reply
(
info_root
,
msgId
,
"/thing/service/executeDNDMode_reply"
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
kk_service_executeDNDMode_handle
(
paramStr
);
kk_service_executeDNDMode_handle
(
paramStr
);
}
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_SETFLOOR
)
==
0
){
INFO_PRINT
(
"SETFLOOR
\n
"
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
kk_service_setFloor_handle
(
paramStr
);
kk_service_common_reply
(
info_root
,
msgId
,
KK_THING_SERVICE_SETFLOOR_REPLY
);
}
else
if
(
strcmp
(
typeJson
->
valuestring
,
KK_THING_SERVICE_GETFLOOR
)
==
0
){
INFO_PRINT
(
"GETFLOOR
\n
"
);
cJSON
*
msgId
=
cJSON_GetObjectItem
(
payload
,
MSG_COMMON_MSGID
);
//kk_service_setFloor_handle();
//kk_service_common_reply(info_root,msgId,KK_THING_SERVICE_SETFLOOR_REPLY);
}
}
else
{
else
{
INFO_PRINT
(
"Error msgtype!!!
\n
"
);
INFO_PRINT
(
"Error msgtype!!!
\n
"
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment