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
561eed37
Commit
561eed37
authored
Oct 27, 2020
by
chen.weican
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
【修改内容】1,修改心跳检测采用系统时间;2,修改删除设备后房间信息内相关设备信息还存在的问题
【提交人】陈伟灿
parent
b4057ab6
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
50 additions
and
21 deletions
+50
-21
common/hal/HAL_OS_linux.c
common/hal/HAL_OS_linux.c
+10
-0
midware/midware/area/kk_area_handle.c
midware/midware/area/kk_area_handle.c
+7
-1
midware/midware/dm/kk_dm_heartbeat.c
midware/midware/dm/kk_dm_heartbeat.c
+3
-1
midware/midware/dm/kk_dm_mng.c
midware/midware/dm/kk_dm_mng.c
+5
-1
midware/midware/dm/kk_dm_msg.c
midware/midware/dm/kk_dm_msg.c
+5
-0
midware/midware/midware.c
midware/midware/midware.c
+19
-17
midware/tsl/tsl_handle/kk_tsl_common.h
midware/tsl/tsl_handle/kk_tsl_common.h
+1
-1
No files found.
common/hal/HAL_OS_linux.c
View file @
561eed37
...
...
@@ -114,6 +114,16 @@ uint64_t HAL_UptimeMs(void)
return
time_ms
;
}
time_t
HAL_Uptimes
(
void
)
{
time_t
time_m
;
struct
timespec
ts
;
clock_gettime
(
CLOCK_MONOTONIC
,
&
ts
);
time_m
=
ts
.
tv_sec
;
return
time_m
;
}
uint64_t
HAL_GetTime
(
void
)
{
...
...
midware/midware/area/kk_area_handle.c
View file @
561eed37
...
...
@@ -233,8 +233,14 @@ int kk_room_dev_remove(const char *deviceCode,const char *epNum)
kk_area_ctx_t
*
ctx
=
_kk_area_get_ctx
();
char
*
sqlCmd
=
NULL
;
char
*
zErrMsg
=
0
;
const
char
*
insertCmd
=
NULL
;
const
char
*
insertCmd
=
"delete from AreaDevInfo where deviceCode = '%s' and epNum = '%s';"
;
if
(
epNum
==
NULL
){
insertCmd
=
"delete from AreaDevInfo where deviceCode = '%s';"
;
}
else
{
insertCmd
=
"delete from AreaDevInfo where deviceCode = '%s' and epNum = '%s';"
;
}
_kk_area_lock
();
sqlCmd
=
sqlite3_mprintf
(
insertCmd
,
deviceCode
,
epNum
);
...
...
midware/midware/dm/kk_dm_heartbeat.c
View file @
561eed37
...
...
@@ -47,11 +47,13 @@ void *kk_heartbeat_yield(void *args)
{
kk_heartbeat_ctx_t
*
ctx
=
_kk_heartbeat_get_ctx
();
time_t
current_time
=
0
;
time_t
sys_time
=
0
;
int
res
=
0
;
dm_mgr_dev_node_t
*
node
=
NULL
;
kk_gw_status_ctx_t
*
gw
=
NULL
;
while
(
ctx
->
hearbeat_thread_running
)
{
current_time
=
HAL_GetTime
();
sys_time
=
HAL_Uptimes
();
_kk_heartbeat_lock
();
if
(
!
list_empty
(
&
ctx
->
gw_status_list
))
{
...
...
@@ -88,7 +90,7 @@ void *kk_heartbeat_yield(void *args)
}
}
_kk_heartbeat_unlock
();
dm_mgr_check_heartbeat_timeout
(
current
_time
);
dm_mgr_check_heartbeat_timeout
(
sys
_time
);
sleep
(
1
);
}
return
NULL
;
...
...
midware/midware/dm/kk_dm_mng.c
View file @
561eed37
...
...
@@ -250,7 +250,7 @@ int dm_mgr_device_create(_IN_ int dev_type,_IN_ char productCode[PRODUCT_CODE_MA
if
(
dev_type
!=
KK_DM_DEVICE_CCU
&&
fatherDeviceCode
!=
NULL
)
{
memcpy
(
node
->
fatherDeviceCode
,
fatherDeviceCode
,
strlen
(
fatherDeviceCode
));
}
node
->
timestamp
=
HAL_
GetTime
();
node
->
timestamp
=
HAL_
Uptimes
();
//node->dev_status = IOTX_DM_DEV_STATUS_AUTHORIZED;
//if(strcmp(productCode,"1035") == 0){
//tsl_str = kk_load_json("130", dev_type);
...
...
@@ -1473,6 +1473,10 @@ int dm_mgr_subdev_delete(_IN_ char deviceCode[DEVICE_CODE_MAXLEN])
return
FAIL_RETURN
;
}
INFO_PRINT
(
"dm_mgr_subdev_delete deviceCode:%s
\n
"
,
deviceCode
);
/*房间信息中删除对应的设备*/
kk_room_dev_remove
(
deviceCode
,
NULL
);
res
=
kk_subDev_delete_by_dcode
(
deviceCode
);
//delete sub db data
if
(
res
!=
SUCCESS_RETURN
)
{
ERROR_PRINT
(
"ERROR [%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
...
...
midware/midware/dm/kk_dm_msg.c
View file @
561eed37
...
...
@@ -747,13 +747,16 @@ int dm_msg_thing_event_post(const char *deviceCode, const char *identifier)
dm_mgr_dev_node_t
*
node
=
NULL
;
void
*
event
=
NULL
;
char
*
method
=
NULL
;
INFO_PRINT
(
"dm_msg_thing_event_post enter
\n
"
);
if
(
deviceCode
==
NULL
){
ERROR_PRINT
(
"dm_msg_thing_event_post failed
\n
"
);
return
FAIL_RETURN
;
}
res
=
dm_mgr_get_device_by_devicecode
(
deviceCode
,
&
node
);
if
(
res
!=
SUCCESS_RETURN
)
{
ERROR_PRINT
(
"dm_msg_thing_event_post failed
\n
"
);
return
FAIL_RETURN
;
}
payload
=
kk_tsl_get_post_event_str
(
node
->
dev_shadow
,
identifier
,
strlen
(
identifier
));
...
...
@@ -761,12 +764,14 @@ int dm_msg_thing_event_post(const char *deviceCode, const char *identifier)
res
=
kk_tsl_get_event_by_identifier
(
node
->
dev_shadow
,
identifier
,
&
event
);
if
(
res
!=
SUCCESS_RETURN
)
{
free
(
payload
);
ERROR_PRINT
(
"dm_msg_thing_event_post failed
\n
"
);
return
FAIL_RETURN
;
}
res
=
kk_tsl_get_event_method
(
event
,
&
method
);
if
(
res
!=
SUCCESS_RETURN
)
{
free
(
payload
);
ERROR_PRINT
(
"dm_msg_thing_event_post failed
\n
"
);
return
FAIL_RETURN
;
}
dm_mgr_upstream_thing_event_post
(
node
->
devid
,
identifier
,
strlen
(
identifier
),
method
,
payload
,
strlen
(
payload
));
...
...
midware/midware/midware.c
View file @
561eed37
...
...
@@ -322,11 +322,11 @@ void kk_platMsg_handle(void* data, char* chalMark){
}
if
(
chalMark
!=
NULL
){
dm_mgr_update_timestamp_by_devicecode
(
chalMark
,
HAL_
GetTime
());
dm_mgr_update_timestamp_by_devicecode
(
chalMark
,
HAL_
Uptimes
());
}
dm_mgr_update_timestamp_by_devicecode
(
info_dcode
->
valuestring
,
HAL_
GetTime
());
dm_mgr_update_timestamp_by_devicecode
(
info_dcode
->
valuestring
,
HAL_
Uptimes
());
if
(
strcmp
(
msgType
->
valuestring
,
KK_THING_TOPO_ADD_MSG
)
==
0
){
jsonPay
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
...
...
@@ -346,7 +346,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_
GetTime
());
dm_mgr_update_timestamp_by_devicecode
(
devCode
->
valuestring
,
HAL_
Uptimes
());
}
else
if
(
strstr
(
msgType
->
valuestring
,
KK_THING_TOPO_BATCH_ADD_MSG
)
!=
NULL
){
...
...
@@ -400,6 +400,7 @@ void kk_platMsg_handle(void* data, char* chalMark){
/*如果是离线状态,上报在线给云端*/
dm_mgr_set_dev_onoffline
(
node
,
0
);
}
INFO_PRINT
(
"kk_platMsg_handle event post enters
\n
"
);
for
(
idx
=
0
;
idx
<
node
->
dev_shadow
->
event_number
;
idx
++
){
eventItem
=
node
->
dev_shadow
->
events
+
idx
;
if
(
eventItem
!=
NULL
){
...
...
@@ -415,22 +416,23 @@ void kk_platMsg_handle(void* data, char* chalMark){
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);
kk_tsl_set_value
(
kk_tsl_set_event_output_value
,
node
->
dev_shadow
,
tmpStr
,
&
itemStr
->
valueint
,
NULL
);
INFO_PRINT
(
"kk_platMsg_handle data: event post
\n
"
);
dm_msg_thing_event_post
(
info_dcode
->
valuestring
,
eventItem
->
identifier
);
kk_scene_iftt_check
(
info_dcode
->
valuestring
,
jsonPay
);
}
else
{
cJSON
*
itemDataIdentifier
=
cJSON_GetObjectItem
(
jsonPay
,
itemData
->
identifier
);
if
(
itemDataIdentifier
!=
NULL
){
memset
(
tmpStr
,
0x0
,
sizeof
(
tmpStr
));
sprintf
(
tmpStr
,
"%s.%s"
,
eventItem
->
identifier
,
itemData
->
identifier
);
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
,
node
->
dev_shadow
,
tmpStr
,
&
itemStr
->
valueint
,
NULL
);
#endif
kk_tsl_set_value
(
kk_tsl_set_event_output_value
,
node
->
dev_shadow
,
tmpStr
,
&
itemDataIdentifier
->
valueint
,
NULL
);
INFO_PRINT
(
"kk_platMsg_handle data: event post
\n
"
);
dm_msg_thing_event_post
(
info_dcode
->
valuestring
,
eventItem
->
identifier
);
kk_scene_iftt_check
(
info_dcode
->
valuestring
,
jsonPay
);
}
}
}
...
...
@@ -753,7 +755,7 @@ void *ccu_property_monitor(void *args)
}
dm_mgr_search_dev_by_devid
(
KK_DM_DEVICE_CCU_DEVICEID
,
&
node
);
//dm_mgr_update_timestamp_by_devicecode(node->deviceCode,HAL_GetTime());
node
->
timestamp
=
HAL_
GetTime
();
node
->
timestamp
=
HAL_
Uptimes
();
HAL_Get_IP
(
s_IP
,
NULL
);
res
=
kk_tsl_get_value
(
kk_tsl_get_property_value
,
node
->
dev_shadow
,
KK_TSL_CCU_WANIP_IDENTIFIER
,
s_IP_TSL
,
NULL
);
if
(
res
!=
SUCCESS_RETURN
){
...
...
midware/tsl/tsl_handle/kk_tsl_common.h
View file @
561eed37
...
...
@@ -81,7 +81,7 @@
#define KK_TSL_GATAWAY_SN_IDENTIFIER "SN"
#define KK_TSL_GATAWAY_WHITELIST_IDENTIFIER "WhiteListState"
#define DEFAULT_HEARTBEAT_TIMEOUT (60*
4)// four
minutes
#define DEFAULT_HEARTBEAT_TIMEOUT (60*
10)// ten
minutes
typedef
enum
{
KK_DEV_ONLINE
=
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