|
@@ -9,7 +9,7 @@ from datetime import datetime, timezone, timedelta
|
|
|
|
|
|
import common.sys_comm as sys_comm
|
|
import common.sys_comm as sys_comm
|
|
from common.sys_comm import (
|
|
from common.sys_comm import (
|
|
- LOGDBG, LOGINFO, LOGWARN, LOGERR,
|
|
|
|
|
|
+ LOGDBG, LOGINFO, LOGWARN, LOGERR, EC,
|
|
get_utc_time_ms, get_utc_time_s, get_bj_time_ms, get_bj_time_s,
|
|
get_utc_time_ms, get_utc_time_s, get_bj_time_ms, get_bj_time_s,
|
|
utc_to_bj_ms, bj_to_utc_ms, utc_to_bj_s, bj_to_utc_s
|
|
utc_to_bj_ms, bj_to_utc_ms, utc_to_bj_s, bj_to_utc_s
|
|
)
|
|
)
|
|
@@ -350,11 +350,11 @@ class AlarmPlan:
|
|
self.event_attr_.leave_ts_ = timestamp
|
|
self.event_attr_.leave_ts_ = timestamp
|
|
|
|
|
|
if self.event_attr_.enter_ts_ == -1 or self.event_attr_.leave_ts_ == -1:
|
|
if self.event_attr_.enter_ts_ == -1 or self.event_attr_.leave_ts_ == -1:
|
|
- return -1
|
|
|
|
|
|
+ return EC.EC_FAILED
|
|
|
|
|
|
# 归并时间内,不认为事件结束
|
|
# 归并时间内,不认为事件结束
|
|
if now - self.event_attr_.leave_ts_ < self.merge_time_:
|
|
if now - self.event_attr_.leave_ts_ < self.merge_time_:
|
|
- return -1
|
|
|
|
|
|
+ return EC.EC_FAILED
|
|
self.event_attr_.stay_time_ = self.event_attr_.leave_ts_ - self.event_attr_.enter_ts_
|
|
self.event_attr_.stay_time_ = self.event_attr_.leave_ts_ - self.event_attr_.enter_ts_
|
|
|
|
|
|
return self.event_attr_.stay_time_
|
|
return self.event_attr_.stay_time_
|
|
@@ -367,7 +367,7 @@ class AlarmPlan:
|
|
if stay_time < self.threshold_time_ :
|
|
if stay_time < self.threshold_time_ :
|
|
self.event_attr_.reset()
|
|
self.event_attr_.reset()
|
|
LOGINFO(f"less than threshold_time, alarm_plan: {self.plan_uuid_}, event_type: {self.event_type_}")
|
|
LOGINFO(f"less than threshold_time, alarm_plan: {self.plan_uuid_}, event_type: {self.event_type_}")
|
|
- return -1
|
|
|
|
|
|
+ return EC.EC_FAILED
|
|
LOGINFO(f"detected target leave, plan_uuid: {self.plan_uuid_}")
|
|
LOGINFO(f"detected target leave, plan_uuid: {self.plan_uuid_}")
|
|
return 0
|
|
return 0
|
|
|
|
|
|
@@ -378,7 +378,7 @@ class AlarmPlan:
|
|
# 查找最新的落在检测区域的目标
|
|
# 查找最新的落在检测区域的目标
|
|
rtd_unit = self.find_latest_rtd_in_region(device, self.rect_, now, 3)
|
|
rtd_unit = self.find_latest_rtd_in_region(device, self.rect_, now, 3)
|
|
if rtd_unit:
|
|
if rtd_unit:
|
|
- return -1
|
|
|
|
|
|
+ return EC.EC_FAILED
|
|
with self.lock_:
|
|
with self.lock_:
|
|
if self.event_attr_.leave_ts_ == -1:
|
|
if self.event_attr_.leave_ts_ == -1:
|
|
self.event_attr_.leave_ts_ = now
|
|
self.event_attr_.leave_ts_ = now
|
|
@@ -387,11 +387,11 @@ class AlarmPlan:
|
|
self.event_attr_.enter_ts_ = now
|
|
self.event_attr_.enter_ts_ = now
|
|
|
|
|
|
if self.event_attr_.enter_ts_ == -1 or self.event_attr_.leave_ts_ == -1:
|
|
if self.event_attr_.enter_ts_ == -1 or self.event_attr_.leave_ts_ == -1:
|
|
- return -1
|
|
|
|
|
|
+ return EC.EC_FAILED
|
|
|
|
|
|
# 归并时间内,不认为事件结束
|
|
# 归并时间内,不认为事件结束
|
|
if now - self.event_attr_.enter_ts_ < self.merge_time_:
|
|
if now - self.event_attr_.enter_ts_ < self.merge_time_:
|
|
- return -1
|
|
|
|
|
|
+ return EC.EC_FAILED
|
|
|
|
|
|
self.event_attr_.absence_time_ = self.event_attr_.enter_ts_ - self.event_attr_.leave_ts_
|
|
self.event_attr_.absence_time_ = self.event_attr_.enter_ts_ - self.event_attr_.leave_ts_
|
|
return self.event_attr_.absence_time_
|
|
return self.event_attr_.absence_time_
|
|
@@ -404,7 +404,7 @@ class AlarmPlan:
|
|
if absence_time < self.event_attr_.time_threshold_:
|
|
if absence_time < self.event_attr_.time_threshold_:
|
|
self.event_attr_.reset()
|
|
self.event_attr_.reset()
|
|
LOGINFO(f"less than threshold_time, alarm_plan: {self.plan_uuid_}, event_type: {self.event_type_}")
|
|
LOGINFO(f"less than threshold_time, alarm_plan: {self.plan_uuid_}, event_type: {self.event_type_}")
|
|
- return -1
|
|
|
|
|
|
+ return EC.EC_FAILED
|
|
LOGINFO(f"detected target enter, plan_uuid: {self.plan_uuid_}")
|
|
LOGINFO(f"detected target enter, plan_uuid: {self.plan_uuid_}")
|
|
return 0
|
|
return 0
|
|
|
|
|
|
@@ -419,11 +419,11 @@ class AlarmPlan:
|
|
|
|
|
|
# 获取停留时间
|
|
# 获取停留时间
|
|
stay_time = self.get_stay_time(device)
|
|
stay_time = self.get_stay_time(device)
|
|
- if stay_time == -1:
|
|
|
|
|
|
+ if stay_time == EC.EC_FAILED:
|
|
return
|
|
return
|
|
|
|
|
|
# 检查停留时间
|
|
# 检查停留时间
|
|
- if self.check_stay_time(stay_time) == -1:
|
|
|
|
|
|
+ if self.check_stay_time(stay_time) == EC.EC_FAILED:
|
|
return
|
|
return
|
|
|
|
|
|
# 构造事件
|
|
# 构造事件
|
|
@@ -454,7 +454,7 @@ class AlarmPlan:
|
|
"linkage_push_wechat_service": self.linkage_action_.wechat_service_
|
|
"linkage_push_wechat_service": self.linkage_action_.wechat_service_
|
|
}
|
|
}
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, event_uuid, self.plan_uuid_, event_desc_map[self.event_type_], info, linkage_action, "events")
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, event_uuid, self.plan_uuid_, event_desc_map[self.event_type_], info, linkage_action, "events")
|
|
- LOGDBG(f"new event: {event_desc_map[self.event_type_]}, stay_time: {stay_time}")
|
|
|
|
|
|
+ LOGDBG(f"new event: {event_desc_map[self.event_type_]}, stay_time: {stay_time}, dev: {dev_id}, plan: {self.plan_uuid_}")
|
|
|
|
|
|
self.event_attr_.reset()
|
|
self.event_attr_.reset()
|
|
|
|
|
|
@@ -478,11 +478,11 @@ class AlarmPlan:
|
|
|
|
|
|
# 获取停留时间
|
|
# 获取停留时间
|
|
stay_time = self.get_stay_time(device)
|
|
stay_time = self.get_stay_time(device)
|
|
- if stay_time == -1:
|
|
|
|
|
|
+ if stay_time == EC.EC_FAILED:
|
|
return
|
|
return
|
|
|
|
|
|
# 检查停留时间
|
|
# 检查停留时间
|
|
- if self.check_stay_time(stay_time) == -1:
|
|
|
|
|
|
+ if self.check_stay_time(stay_time) == EC.EC_FAILED:
|
|
return
|
|
return
|
|
|
|
|
|
# 构造事件
|
|
# 构造事件
|
|
@@ -513,7 +513,7 @@ class AlarmPlan:
|
|
"linkage_push_wechat_service": self.linkage_action_.wechat_service_
|
|
"linkage_push_wechat_service": self.linkage_action_.wechat_service_
|
|
}
|
|
}
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, event_uuid, self.plan_uuid_, event_desc_map[self.event_type_], info, linkage_action, "events")
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, event_uuid, self.plan_uuid_, event_desc_map[self.event_type_], info, linkage_action, "events")
|
|
- LOGDBG(f"new event: {event_desc_map[self.event_type_]}, stay_time: {stay_time}")
|
|
|
|
|
|
+ LOGDBG(f"new event: {event_desc_map[self.event_type_]}, stay_time: {stay_time}, dev: {dev_id}, plan: {self.plan_uuid_}")
|
|
|
|
|
|
self.event_attr_.reset()
|
|
self.event_attr_.reset()
|
|
|
|
|
|
@@ -537,11 +537,11 @@ class AlarmPlan:
|
|
|
|
|
|
# 获取停留时间
|
|
# 获取停留时间
|
|
stay_time = self.get_stay_time(device)
|
|
stay_time = self.get_stay_time(device)
|
|
- if stay_time == -1:
|
|
|
|
|
|
+ if stay_time == EC.EC_FAILED:
|
|
return
|
|
return
|
|
|
|
|
|
# 检查停留时间
|
|
# 检查停留时间
|
|
- if self.check_stay_time(stay_time) == -1:
|
|
|
|
|
|
+ if self.check_stay_time(stay_time) == EC.EC_FAILED:
|
|
return
|
|
return
|
|
|
|
|
|
# 构造事件
|
|
# 构造事件
|
|
@@ -572,7 +572,7 @@ class AlarmPlan:
|
|
"linkage_push_wechat_service": self.linkage_action_.wechat_service_
|
|
"linkage_push_wechat_service": self.linkage_action_.wechat_service_
|
|
}
|
|
}
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, event_uuid, self.plan_uuid_, event_desc_map[self.event_type_], info, linkage_action, "events")
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, event_uuid, self.plan_uuid_, event_desc_map[self.event_type_], info, linkage_action, "events")
|
|
- LOGDBG(f"new event: {event_desc_map[self.event_type_]}, stay_time: {stay_time}")
|
|
|
|
|
|
+ LOGDBG(f"new event: {event_desc_map[self.event_type_]}, stay_time: {stay_time}, dev: {dev_id}, plan: {self.plan_uuid_}")
|
|
|
|
|
|
self.event_attr_.reset()
|
|
self.event_attr_.reset()
|
|
|
|
|
|
@@ -771,11 +771,11 @@ class AlarmPlan:
|
|
|
|
|
|
# 获取消失时间
|
|
# 获取消失时间
|
|
absence_time = self.get_absence_time(device)
|
|
absence_time = self.get_absence_time(device)
|
|
- if absence_time == -1:
|
|
|
|
|
|
+ if absence_time == EC.EC_FAILED:
|
|
return
|
|
return
|
|
|
|
|
|
# 检查消失时间
|
|
# 检查消失时间
|
|
- if self.check_absence_time(absence_time) == -1:
|
|
|
|
|
|
+ if self.check_absence_time(absence_time) == EC.EC_FAILED:
|
|
return
|
|
return
|
|
|
|
|
|
# 构造事件
|
|
# 构造事件
|
|
@@ -806,7 +806,7 @@ class AlarmPlan:
|
|
"linkage_push_wechat_service": self.linkage_action_.wechat_service_
|
|
"linkage_push_wechat_service": self.linkage_action_.wechat_service_
|
|
}
|
|
}
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, event_uuid, self.plan_uuid_, event_desc_map[self.event_type_], info, linkage_action, "events")
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, event_uuid, self.plan_uuid_, event_desc_map[self.event_type_], info, linkage_action, "events")
|
|
- LOGDBG(f"new event: {event_desc_map[self.event_type_]}, absence_time: {absence_time}")
|
|
|
|
|
|
+ LOGDBG(f"new event: {event_desc_map[self.event_type_]}, absence_time: {absence_time}, dev: {dev_id}, plan: {self.plan_uuid_}")
|
|
|
|
|
|
self.event_attr_.reset()
|
|
self.event_attr_.reset()
|
|
|
|
|
|
@@ -892,7 +892,7 @@ class AlarmPlan:
|
|
}
|
|
}
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, this_event_uuid, plan_uuid, event_desc_map[self.event_type_], last_info, linkage_action, "events")
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, this_event_uuid, plan_uuid, event_desc_map[self.event_type_], last_info, linkage_action, "events")
|
|
|
|
|
|
- LOGINFO(f"cb_toileting_frequency succeed")
|
|
|
|
|
|
+ LOGINFO(f"new event: {event_desc_map[self.event_type_]}")
|
|
else:
|
|
else:
|
|
LOGDBG("cb_toileting_frequency, empty result")
|
|
LOGDBG("cb_toileting_frequency, empty result")
|
|
|
|
|
|
@@ -959,7 +959,7 @@ class AlarmPlan:
|
|
}
|
|
}
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, this_event_uuid, plan_uuid, event_desc_map[self.event_type_], last_info, linkage_action, "events")
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, this_event_uuid, plan_uuid, event_desc_map[self.event_type_], last_info, linkage_action, "events")
|
|
|
|
|
|
- LOGINFO(f"cb_night_toileting_frequency succeed")
|
|
|
|
|
|
+ LOGINFO(f"new event: {event_desc_map[self.event_type_]}")
|
|
else:
|
|
else:
|
|
LOGDBG("cb_night_toileting_frequency, empty result")
|
|
LOGDBG("cb_night_toileting_frequency, empty result")
|
|
|
|
|
|
@@ -1029,7 +1029,7 @@ class AlarmPlan:
|
|
}
|
|
}
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, this_event_uuid, self.plan_uuid_, event_desc_map[self.event_type_], last_info, linkage_action, "events")
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, this_event_uuid, self.plan_uuid_, event_desc_map[self.event_type_], last_info, linkage_action, "events")
|
|
|
|
|
|
- LOGINFO(f"cb_toileting_frequency_abnormal succeed")
|
|
|
|
|
|
+ LOGINFO(f"new event: {event_desc_map[self.event_type_]}")
|
|
else:
|
|
else:
|
|
LOGDBG("cb_toileting_frequency_abnormal, empty result")
|
|
LOGDBG("cb_toileting_frequency_abnormal, empty result")
|
|
|
|
|
|
@@ -1099,7 +1099,7 @@ class AlarmPlan:
|
|
}
|
|
}
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, this_event_uuid, self.plan_uuid_, event_desc_map[self.event_type_], last_info, linkage_action, "events")
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, this_event_uuid, self.plan_uuid_, event_desc_map[self.event_type_], last_info, linkage_action, "events")
|
|
|
|
|
|
- LOGINFO(f"cb_night_toileting_frequency_abnormal succeed")
|
|
|
|
|
|
+ LOGINFO(f"new event: {event_desc_map[self.event_type_]}")
|
|
else:
|
|
else:
|
|
LOGDBG("cb_night_toileting_frequency_abnormal, empty result")
|
|
LOGDBG("cb_night_toileting_frequency_abnormal, empty result")
|
|
|
|
|
|
@@ -1166,7 +1166,7 @@ class AlarmPlan:
|
|
}
|
|
}
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, this_event_uuid, plan_uuid, event_desc_map[self.event_type_], last_info, linkage_action, "events")
|
|
mqtt_send.alarm_event(dev_id, self.dev_name_, this_event_uuid, plan_uuid, event_desc_map[self.event_type_], last_info, linkage_action, "events")
|
|
|
|
|
|
- LOGINFO(f"cb_bathroom_stay_frequency+- succeed")
|
|
|
|
|
|
+ LOGINFO(f"new event: {event_desc_map[self.event_type_]}")
|
|
else:
|
|
else:
|
|
LOGDBG("cb_bathroom_stay_frequency, empty result")
|
|
LOGDBG("cb_bathroom_stay_frequency, empty result")
|
|
|
|
|