Commit 15e812ee authored by chen.weican's avatar chen.weican

【修改内容】修改启动后误报offline的bug

【提交人】陈伟灿
parent c60ccdf7
...@@ -82,6 +82,7 @@ static void _kk_heartbeat_unlock(void) ...@@ -82,6 +82,7 @@ static void _kk_heartbeat_unlock(void)
HAL_MutexUnlock(ctx->mutex); HAL_MutexUnlock(ctx->mutex);
} }
} }
uint64_t s_start_time = 0;
void *kk_heartbeat_yield(void *args) void *kk_heartbeat_yield(void *args)
{ {
...@@ -89,7 +90,7 @@ void *kk_heartbeat_yield(void *args) ...@@ -89,7 +90,7 @@ void *kk_heartbeat_yield(void *args)
uint64_t current_time = 0; uint64_t current_time = 0;
dm_mgr_dev_node_t *search_node = NULL; dm_mgr_dev_node_t *search_node = NULL;
while (ctx->hearbeat_thread_running) { while (ctx->hearbeat_thread_running) {
current_time = HAL_UptimeMs(); current_time = HAL_UptimeMs() - s_start_time;
_kk_heartbeat_lock(); _kk_heartbeat_lock();
dm_mgr_check_heartbeat_timeout(current_time); dm_mgr_check_heartbeat_timeout(current_time);
_kk_heartbeat_unlock(); _kk_heartbeat_unlock();
...@@ -109,6 +110,7 @@ int kk_heartbeat_init(void) ...@@ -109,6 +110,7 @@ int kk_heartbeat_init(void)
} }
/* Init Device Id*/ /* Init Device Id*/
ctx->hearbeat_thread_running = 1; ctx->hearbeat_thread_running = 1;
s_start_time = HAL_UptimeMs();
res = pthread_create(&ctx->hearbeat_thread, NULL, kk_heartbeat_yield, NULL); res = pthread_create(&ctx->hearbeat_thread, NULL, kk_heartbeat_yield, NULL);
if (res < 0) { if (res < 0) {
......
...@@ -158,7 +158,7 @@ void gw2mid_cb(void* data, int len, char* chalMark){ ...@@ -158,7 +158,7 @@ void gw2mid_cb(void* data, int len, char* chalMark){
} }
} }
extern uint64_t s_start_time;
void kk_platMsg_handle(void* data, char* chalMark){ void kk_platMsg_handle(void* data, char* chalMark){
char *out; char *out;
...@@ -197,10 +197,10 @@ void kk_platMsg_handle(void* data, char* chalMark){ ...@@ -197,10 +197,10 @@ void kk_platMsg_handle(void* data, char* chalMark){
} }
if (chalMark != NULL){ if (chalMark != NULL){
dm_mgr_update_timestamp_by_devicecode(chalMark,HAL_UptimeMs()); dm_mgr_update_timestamp_by_devicecode(chalMark,HAL_UptimeMs()-s_start_time);
} }
dm_mgr_update_timestamp_by_devicecode(info_dcode->valuestring,HAL_UptimeMs()); dm_mgr_update_timestamp_by_devicecode(info_dcode->valuestring,HAL_UptimeMs()-s_start_time);
if (strcmp(msgType->valuestring, KK_THING_TOPO_ADD_MSG)==0){ if (strcmp(msgType->valuestring, KK_THING_TOPO_ADD_MSG)==0){
proCode = cJSON_GetObjectItem(jsonPay, MSG_PRODUCT_CODE_STR); proCode = cJSON_GetObjectItem(jsonPay, MSG_PRODUCT_CODE_STR);
......
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