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
51c5a0a7
Commit
51c5a0a7
authored
Aug 10, 2021
by
chen.weican
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://172.17.3.10:17001/chenweican/k-sdk
parents
4ee47ad9
604f4d05
Changes
7
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
243 additions
and
90 deletions
+243
-90
application/klansdk/kk_ccu_msg.h
application/klansdk/kk_ccu_msg.h
+3
-0
application/klansdk/kk_data_handle.c
application/klansdk/kk_data_handle.c
+11
-6
application/klansdk/kk_data_mng.c
application/klansdk/kk_data_mng.c
+8
-5
application/klansdk/kk_lan_main.c
application/klansdk/kk_lan_main.c
+1
-0
application/klansdk/kk_lan_sync.c
application/klansdk/kk_lan_sync.c
+201
-76
application/klansdk/kk_lan_sync.h
application/klansdk/kk_lan_sync.h
+1
-1
application/klansdk/kk_oldccu_msg.c
application/klansdk/kk_oldccu_msg.c
+18
-2
No files found.
application/klansdk/kk_ccu_msg.h
View file @
51c5a0a7
...
@@ -16,6 +16,9 @@
...
@@ -16,6 +16,9 @@
#define GUARD_STATUS_ARMING_LEAVE_HOME "ARMING_LEAVE_HOME"
#define GUARD_STATUS_ARMING_LEAVE_HOME "ARMING_LEAVE_HOME"
#define GUARD_STATUS_DISARMING "DISARMING"
#define GUARD_STATUS_DISARMING "DISARMING"
#define GUARD_STATUS_ARMING_IN_HOME "ARMING_IN_HOME"
#define GUARD_STATUS_ARMING_IN_HOME "ARMING_IN_HOME"
#define ARMING_STATUS_GUARD_ZONE "ARMING_CUSTOM_GUARD_ZONE"
#define EMPTY_STR ""
#define EMPTY_STR ""
...
...
application/klansdk/kk_data_handle.c
View file @
51c5a0a7
...
@@ -248,12 +248,15 @@ int kk_zb_devs_hw_ack_all(int sockfd)
...
@@ -248,12 +248,15 @@ int kk_zb_devs_hw_ack_all(int sockfd)
kk_map_dev_node_t
*
search_node
=
NULL
;
kk_map_dev_node_t
*
search_node
=
NULL
;
cJSON
*
array
=
cJSON_CreateArray
();
cJSON
*
array
=
cJSON_CreateArray
();
cJSON
*
item
;
cJSON
*
item
;
_kk_map_dev_mutex_lock
();
list_for_each_entry
(
search_node
,
&
ctx
->
dev_list
,
linked_list
,
kk_map_dev_node_t
)
{
list_for_each_entry
(
search_node
,
&
ctx
->
dev_list
,
linked_list
,
kk_map_dev_node_t
)
{
if
((
item
=
kk_zb_dev_hw_info_build
(
search_node
->
deviceCode
,
search_node
->
productCode
,
search_node
->
online_status
,
NULL
,
NULL
))
!=
NULL
){
if
((
item
=
kk_zb_dev_hw_info_build
(
search_node
->
deviceCode
,
search_node
->
productCode
,
search_node
->
online_status
,
NULL
,
NULL
))
!=
NULL
){
cJSON_AddItemToArray
(
array
,
item
);
cJSON_AddItemToArray
(
array
,
item
);
}
}
}
}
_kk_map_dev_mutex_unlock
();
_kk_zb_devs_hw_ack
(
sockfd
,
array
);
_kk_zb_devs_hw_ack
(
sockfd
,
array
);
return
-
1
;
return
-
1
;
}
}
...
@@ -265,7 +268,8 @@ int kk_zb_dev_hw_info_build_by_deviceCode(int sockfd,const char *deviceCode)
...
@@ -265,7 +268,8 @@ int kk_zb_dev_hw_info_build_by_deviceCode(int sockfd,const char *deviceCode)
cJSON
*
item
;
cJSON
*
item
;
unsigned
char
online_status
=
0
;
unsigned
char
online_status
=
0
;
int
pid
=-
1
;
int
pid
=-
1
;
_kk_map_dev_mutex_lock
();
list_for_each_entry
(
search_node
,
&
ctx
->
dev_list
,
linked_list
,
kk_map_dev_node_t
)
{
list_for_each_entry
(
search_node
,
&
ctx
->
dev_list
,
linked_list
,
kk_map_dev_node_t
)
{
if
(
(
strlen
(
search_node
->
deviceCode
)
==
strlen
(
deviceCode
))
&&
if
(
(
strlen
(
search_node
->
deviceCode
)
==
strlen
(
deviceCode
))
&&
(
memcmp
(
search_node
->
deviceCode
,
deviceCode
,
strlen
(
deviceCode
))
==
0
))
{
(
memcmp
(
search_node
->
deviceCode
,
deviceCode
,
strlen
(
deviceCode
))
==
0
))
{
...
@@ -275,6 +279,7 @@ int kk_zb_dev_hw_info_build_by_deviceCode(int sockfd,const char *deviceCode)
...
@@ -275,6 +279,7 @@ int kk_zb_dev_hw_info_build_by_deviceCode(int sockfd,const char *deviceCode)
return
item
;
return
item
;
}
}
}
}
_kk_map_dev_mutex_unlock
();
return
NULL
;
return
NULL
;
}
}
...
@@ -436,7 +441,7 @@ int is_arming_status_notify(cJSON *payload)
...
@@ -436,7 +441,7 @@ int is_arming_status_notify(cJSON *payload)
cJSON
*
params
=
NULL
;
cJSON
*
params
=
NULL
;
cJSON
*
ArmingState
=
NULL
;
cJSON
*
ArmingState
=
NULL
;
if
((
params
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
))
!=
NULL
){
if
((
params
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
))
!=
NULL
){
if
((
ArmingState
=
cJSON_GetObjectItem
(
pa
yload
,
"ArmingState"
))
!=
NULL
){
if
((
ArmingState
=
cJSON_GetObjectItem
(
pa
rams
,
"ArmingState"
))
!=
NULL
){
if
(
ArmingState
->
type
==
cJSON_String
&&
if
(
ArmingState
->
type
==
cJSON_String
&&
ArmingState
->
valuestring
!=
NULL
){
ArmingState
->
valuestring
!=
NULL
){
return
atoi
(
ArmingState
->
valuestring
);
return
atoi
(
ArmingState
->
valuestring
);
...
@@ -482,9 +487,11 @@ void KK_Data_FromMid(void* str,int len)
...
@@ -482,9 +487,11 @@ void KK_Data_FromMid(void* str,int len)
if
(
strstr
(
msgtype
->
valuestring
,
SYNC_MSG_TYPE_REPLY
)
!=
NULL
){
if
(
strstr
(
msgtype
->
valuestring
,
SYNC_MSG_TYPE_REPLY
)
!=
NULL
){
kk_parse_syncinfo
(
payload
);
kk_parse_syncinfo
(
payload
);
kk_create_syncinfo_to_sdk
(
payload
);
kk_create_syncinfo_to_sdk
(
payload
);
}
else
if
(
strstr
(
msgtype
->
valuestring
,
"/thing/event/property/post"
)
!=
NULL
){
}
else
if
(
strstr
(
msgtype
->
valuestring
,
"/thing/event/property/post"
)
!=
NULL
){
if
(
is_ccu_msg
(
productCode
,
deviceCode
)){
if
(
is_ccu_msg
(
productCode
,
deviceCode
)){
int
type
;
int
type
;
if
((
type
=
is_arming_status_notify
(
payload
))
!=-
1
){
if
((
type
=
is_arming_status_notify
(
payload
))
!=-
1
){
arming_status_notify
(
type
);
arming_status_notify
(
type
);
...
@@ -492,8 +499,6 @@ void KK_Data_FromMid(void* str,int len)
...
@@ -492,8 +499,6 @@ void KK_Data_FromMid(void* str,int len)
}
else
{
}
else
{
property_post_deal
(
deviceCode
->
valuestring
,
payload
);
property_post_deal
(
deviceCode
->
valuestring
,
payload
);
}
}
}
else
if
(
strstr
(
msgtype
->
valuestring
,
"/thing/topo/delete"
)
!=
NULL
){
}
else
if
(
strstr
(
msgtype
->
valuestring
,
"/thing/topo/delete"
)
!=
NULL
){
device_delete_sync
(
payload
);
device_delete_sync
(
payload
);
}
else
if
(
strstr
(
msgtype
->
valuestring
,
"/thing/status/online"
)
!=
NULL
){
}
else
if
(
strstr
(
msgtype
->
valuestring
,
"/thing/status/online"
)
!=
NULL
){
...
...
application/klansdk/kk_data_mng.c
View file @
51c5a0a7
...
@@ -18,14 +18,14 @@ kk_map_dev_ctx *_kk_map_dev_ctx(void)
...
@@ -18,14 +18,14 @@ kk_map_dev_ctx *_kk_map_dev_ctx(void)
return
&
g_map_dev_mgr
;
return
&
g_map_dev_mgr
;
}
}
static
void
_kk_map_dev_mutex_lock
(
void
)
void
_kk_map_dev_mutex_lock
(
void
)
{
{
kk_map_dev_ctx
*
ctx
=
_kk_map_dev_ctx
();
kk_map_dev_ctx
*
ctx
=
_kk_map_dev_ctx
();
if
(
ctx
->
mutex
)
{
if
(
ctx
->
mutex
)
{
kk_MutexLock
(
ctx
->
mutex
);
kk_MutexLock
(
ctx
->
mutex
);
}
}
}
}
static
void
_kk_map_dev_mutex_unlock
(
void
)
void
_kk_map_dev_mutex_unlock
(
void
)
{
{
kk_map_dev_ctx
*
ctx
=
_kk_map_dev_ctx
();
kk_map_dev_ctx
*
ctx
=
_kk_map_dev_ctx
();
if
(
ctx
->
mutex
)
{
if
(
ctx
->
mutex
)
{
...
@@ -53,7 +53,6 @@ void kk_map_dev_deinit(void)
...
@@ -53,7 +53,6 @@ void kk_map_dev_deinit(void)
printf
(
"[%s][%d]
\n
"
,
__FUNCTION__
,
__LINE__
);
printf
(
"[%s][%d]
\n
"
,
__FUNCTION__
,
__LINE__
);
printf
(
"[lock]_kk_map_dev_mutex_lock
\n
"
);
_kk_map_dev_mutex_lock
();
_kk_map_dev_mutex_lock
();
list_for_each_entry_safe
(
node
,
n
,
&
ctx
->
dev_list
,
linked_list
,
kk_map_dev_node_t
)
{
list_for_each_entry_safe
(
node
,
n
,
&
ctx
->
dev_list
,
linked_list
,
kk_map_dev_node_t
)
{
...
@@ -74,7 +73,6 @@ void kk_map_dev_deinit(void)
...
@@ -74,7 +73,6 @@ void kk_map_dev_deinit(void)
}
}
}
}
printf
(
"[unlock]_kk_map_dev_mutex_lock
\n
"
);
_kk_map_dev_mutex_unlock
();
_kk_map_dev_mutex_unlock
();
}
}
...
@@ -87,6 +85,7 @@ static kk_map_dev_node_t *kk_map_dev_node_create(const char *deviceCode,const ch
...
@@ -87,6 +85,7 @@ static kk_map_dev_node_t *kk_map_dev_node_create(const char *deviceCode,const ch
cJSON
*
newccu
=
NULL
,
*
oldccu
=
NULL
,
*
channel
=
NULL
,
*
optype
=
NULL
;
cJSON
*
newccu
=
NULL
,
*
oldccu
=
NULL
,
*
channel
=
NULL
,
*
optype
=
NULL
;
cJSON
*
syn_type
=
NULL
,
*
syn_opcode
=
NULL
;
cJSON
*
syn_type
=
NULL
,
*
syn_opcode
=
NULL
;
printf
(
"kk_map_dev_node_create
\n
"
);
node
=
malloc
(
sizeof
(
kk_map_dev_node_t
));
node
=
malloc
(
sizeof
(
kk_map_dev_node_t
));
if
(
node
==
NULL
)
{
if
(
node
==
NULL
)
{
return
NULL
;
return
NULL
;
...
@@ -410,17 +409,21 @@ int kk_map_dev_search_by_deviceCode(char *deviceCode, kk_map_dev_node_t **node)
...
@@ -410,17 +409,21 @@ int kk_map_dev_search_by_deviceCode(char *deviceCode, kk_map_dev_node_t **node)
kk_map_dev_node_t
*
n
=
NULL
;
kk_map_dev_node_t
*
n
=
NULL
;
//list_for_each_entry_safe
//list_for_each_entry_safe
printf
(
"[QAQ] kk_map_dev_search_by_deviceCode
\n
"
);
list_for_each_entry
(
search_node
,
&
ctx
->
dev_list
,
linked_list
,
kk_map_dev_node_t
)
{
list_for_each_entry
(
search_node
,
&
ctx
->
dev_list
,
linked_list
,
kk_map_dev_node_t
)
{
if
(
(
strlen
(
search_node
->
deviceCode
)
==
strlen
(
deviceCode
))
&&
printf
(
"+++
\n
"
);
if
(
(
strlen
(
search_node
->
deviceCode
)
==
strlen
(
deviceCode
))
&&
(
memcmp
(
search_node
->
deviceCode
,
deviceCode
,
strlen
(
deviceCode
))
==
0
))
{
(
memcmp
(
search_node
->
deviceCode
,
deviceCode
,
strlen
(
deviceCode
))
==
0
))
{
/* dm_log_debug("Device Found, devid: %d", devid); */
/* dm_log_debug("Device Found, devid: %d", devid); */
if
(
node
)
{
if
(
node
)
{
*
node
=
search_node
;
*
node
=
search_node
;
}
}
printf
(
"[find]%s
\n
"
,
search_node
->
deviceCode
);
return
0
;
return
0
;
}
}
}
}
ERROR_PRINT
(
"Device Not Found, deviceCode: %s
\n
"
,
deviceCode
);
ERROR_PRINT
(
"Device Not Found, deviceCode: %s
\n
"
,
deviceCode
);
return
-
1
;
return
-
1
;
}
}
...
...
application/klansdk/kk_lan_main.c
View file @
51c5a0a7
...
@@ -64,6 +64,7 @@ int main(int argc, char* argv[])
...
@@ -64,6 +64,7 @@ int main(int argc, char* argv[])
char
*
ppp
;
char
*
ppp
;
open
(
"kk_lan"
,
LOG_PID
,
LOG_USER
);
open
(
"kk_lan"
,
LOG_PID
,
LOG_USER
);
kk_lan_ccuid_init
();
/*set the callback to get the device date to cloud*/
/*set the callback to get the device date to cloud*/
kk_ipc_init
(
IPC_APP2MID
,(
ipc_cb
*
)
KK_Data_FromMid
,
NULL
,
NULL
);
kk_ipc_init
(
IPC_APP2MID
,(
ipc_cb
*
)
KK_Data_FromMid
,
NULL
,
NULL
);
...
...
application/klansdk/kk_lan_sync.c
View file @
51c5a0a7
This diff is collapsed.
Click to expand it.
application/klansdk/kk_lan_sync.h
View file @
51c5a0a7
...
@@ -42,7 +42,7 @@ cJSON *kk_get_raw_sync_data(cJSON *payload);
...
@@ -42,7 +42,7 @@ cJSON *kk_get_raw_sync_data(cJSON *payload);
cJSON
*
kk_sync_rooms_to_sdk
(
cJSON
*
root
,
cJSON
*
payload
);
cJSON
*
kk_sync_rooms_to_sdk
(
cJSON
*
root
,
cJSON
*
payload
);
cJSON
*
kk_sync_scence_to_sdk
(
cJSON
*
root
,
cJSON
*
data
);
cJSON
*
kk_sync_scence_to_sdk
(
cJSON
*
root
,
cJSON
*
data
);
int
kk_sync_devices_to_sdk
(
cJSON
*
root
);
int
kk_sync_devices_to_sdk
(
cJSON
*
root
,
cJSON
*
data
);
int
kk_sync_devices_status_to_sdk
(
cJSON
*
root
);
int
kk_sync_devices_status_to_sdk
(
cJSON
*
root
);
int
kk_create_syncinfo_to_sdk
(
cJSON
*
payload
);
int
kk_create_syncinfo_to_sdk
(
cJSON
*
payload
);
...
...
application/klansdk/kk_oldccu_msg.c
View file @
51c5a0a7
...
@@ -138,7 +138,6 @@ cJSON *kk_devicestatus_build(kk_map_dev_node_t *node)
...
@@ -138,7 +138,6 @@ cJSON *kk_devicestatus_build(kk_map_dev_node_t *node)
cJSON
*
newccu
,
*
oldccu
;
cJSON
*
newccu
,
*
oldccu
;
cJSON
*
dev_status
;
cJSON
*
dev_status
;
kk_map_dev_ctx
*
ctx
=
_kk_map_dev_ctx
();
printf
(
"@@@@kk_devicestatus_build
\n
"
);
printf
(
"@@@@kk_devicestatus_build
\n
"
);
if
(
node
==
NULL
||
node
->
syn_opcode
==
NULL
){
if
(
node
==
NULL
||
node
->
syn_opcode
==
NULL
){
...
@@ -263,6 +262,7 @@ cJSON * attr_report_conver(const char *deviceCode,kk_map_dev_node_t *devNode,cJS
...
@@ -263,6 +262,7 @@ cJSON * attr_report_conver(const char *deviceCode,kk_map_dev_node_t *devNode,cJS
cJSON
*
val
;
cJSON
*
val
;
cJSON
*
item_size
;
cJSON
*
item_size
;
cJSON
*
channel
;
cJSON
*
channel
;
cJSON
*
epNum
=
NULL
;
cJSON
*
opcode
;
cJSON
*
opcode
;
...
@@ -278,6 +278,7 @@ cJSON * attr_report_conver(const char *deviceCode,kk_map_dev_node_t *devNode,cJS
...
@@ -278,6 +278,7 @@ cJSON * attr_report_conver(const char *deviceCode,kk_map_dev_node_t *devNode,cJS
newccu
=
devNode
->
newccu
;
newccu
=
devNode
->
newccu
;
item_size
=
cJSON_GetArraySize
(
oldccu
);
item_size
=
cJSON_GetArraySize
(
oldccu
);
printf
(
"[%s][%d]
\n
"
,
__FUNCTION__
,
__LINE__
);
for
(
i
=
0
;
i
<
item_size
;
i
++
){
for
(
i
=
0
;
i
<
item_size
;
i
++
){
o_item
=
cJSON_GetArrayItem
(
oldccu
,
i
);
o_item
=
cJSON_GetArrayItem
(
oldccu
,
i
);
...
@@ -287,7 +288,7 @@ cJSON * attr_report_conver(const char *deviceCode,kk_map_dev_node_t *devNode,cJS
...
@@ -287,7 +288,7 @@ cJSON * attr_report_conver(const char *deviceCode,kk_map_dev_node_t *devNode,cJS
n_id
=
cJSON_GetObjectItem
(
params
,
o_id_map
->
valuestring
);
n_id
=
cJSON_GetObjectItem
(
params
,
o_id_map
->
valuestring
);
printf
(
"[%s][%d]
\n
"
,
__FUNCTION__
,
__LINE__
);
if
(
n_id
!=
NULL
){
if
(
n_id
!=
NULL
){
n_dataType
=
cJSON_GetObjectItem
(
n_item
,
"dataType"
);
n_dataType
=
cJSON_GetObjectItem
(
n_item
,
"dataType"
);
...
@@ -298,6 +299,16 @@ cJSON * attr_report_conver(const char *deviceCode,kk_map_dev_node_t *devNode,cJS
...
@@ -298,6 +299,16 @@ cJSON * attr_report_conver(const char *deviceCode,kk_map_dev_node_t *devNode,cJS
channel
=
cJSON_GetObjectItem
(
o_item
,
"channel"
);
channel
=
cJSON_GetObjectItem
(
o_item
,
"channel"
);
epNum
=
cJSON_GetObjectItem
(
params
,
"epNum"
);
if
(
channel
==
NULL
||
epNum
==
NULL
){
printf
(
"[%s][%d]
\n
"
,
__FUNCTION__
,
__LINE__
);
continue
;
}
if
(
strlen
(
channel
->
valuestring
)
!=
strlen
(
epNum
->
valuestring
)
||
strcmp
(
channel
->
valuestring
,
epNum
->
valuestring
)
!=
0
){
printf
(
"[%s][%d]
\n
"
,
__FUNCTION__
,
__LINE__
);
continue
;
}
ch
=
atoi
(
channel
->
valuestring
);
ch
=
atoi
(
channel
->
valuestring
);
nodeId
=
kk_lan_db_node_get
(
deviceCode
,
ch
);
nodeId
=
kk_lan_db_node_get
(
deviceCode
,
ch
);
...
@@ -465,6 +476,7 @@ void property_syn_deal(const char *deviceCode,cJSON *properties)
...
@@ -465,6 +476,7 @@ void property_syn_deal(const char *deviceCode,cJSON *properties)
kk_map_dev_node_t
*
dev
;
kk_map_dev_node_t
*
dev
;
if
(
kk_map_dev_search_by_deviceCode
(
deviceCode
,
&
dev
)
==
0
){
if
(
kk_map_dev_search_by_deviceCode
(
deviceCode
,
&
dev
)
==
0
){
printf
(
"[%s][%d]
\n
"
,
__FUNCTION__
,
__LINE__
);
attr_report_conver
(
deviceCode
,
dev
,
properties
);
attr_report_conver
(
deviceCode
,
dev
,
properties
);
}
}
}
}
...
@@ -495,10 +507,14 @@ int arming_status_notify(int type)
...
@@ -495,10 +507,14 @@ int arming_status_notify(int type)
msg
=
old_ccu_msg_build
(
WILDCARD_CHARACTER_STR
,
GUARD_STATUS_DISARMING
,
SUCCESS_STR
,
WILDCARD_CHARACTER_STR
);
msg
=
old_ccu_msg_build
(
WILDCARD_CHARACTER_STR
,
GUARD_STATUS_DISARMING
,
SUCCESS_STR
,
WILDCARD_CHARACTER_STR
);
}
else
if
(
type
==
2
){
}
else
if
(
type
==
2
){
msg
=
old_ccu_msg_build
(
WILDCARD_CHARACTER_STR
,
GUARD_STATUS_ARMING_IN_HOME
,
SUCCESS_STR
,
WILDCARD_CHARACTER_STR
);
msg
=
old_ccu_msg_build
(
WILDCARD_CHARACTER_STR
,
GUARD_STATUS_ARMING_IN_HOME
,
SUCCESS_STR
,
WILDCARD_CHARACTER_STR
);
}
else
if
(
type
==
3
){
msg
=
old_ccu_msg_build
(
WILDCARD_CHARACTER_STR
,
ARMING_STATUS_GUARD_ZONE
,
SUCCESS_STR
,
WILDCARD_CHARACTER_STR
);
}
else
{
}
else
{
printf
(
"[unkown arming type]!!!
\n
"
);
printf
(
"[unkown arming type]!!!
\n
"
);
return
-
1
;
return
-
1
;
}
}
send_msg_to_module
(
msg
);
send_msg_to_module
(
msg
);
cJSON_Delete
(
msg
);
cJSON_Delete
(
msg
);
return
0
;
return
0
;
...
...
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