|
@@ -329,11 +329,79 @@ class DevicePushService:
|
|
|
"""""
|
|
|
return nickname
|
|
|
|
|
|
+ @staticmethod
|
|
|
+ def get_event_type_text(lang, event_type, dealings_type):
|
|
|
+ """
|
|
|
+ 事件类型文案键值查找
|
|
|
+ """
|
|
|
+ if lang == 'cn':
|
|
|
+ event_dict_cn = {
|
|
|
+ 1024: {
|
|
|
+ 1: '有人进入',
|
|
|
+ 2: '有人离开'
|
|
|
+ },
|
|
|
+ 512: '长时间无人出现',
|
|
|
+ 256: '有人徘徊',
|
|
|
+ 128: '区域离开',
|
|
|
+ 4: '有车出现',
|
|
|
+ 3: '检测到画面变化,有人出现',
|
|
|
+ 2: '有人出现',
|
|
|
+ 1: '检测到画面变化',
|
|
|
+ 5: '检测到画面变化,有车出现',
|
|
|
+ 9: '检测到画面变化,发现人脸',
|
|
|
+ 10: '发现人脸,有人出现'
|
|
|
+ }
|
|
|
+
|
|
|
+ if event_type in event_dict_cn:
|
|
|
+ if isinstance(event_dict_cn[event_type], dict):
|
|
|
+ msg_type = event_dict_cn[event_type][dealings_type]
|
|
|
+ else:
|
|
|
+ msg_type = event_dict_cn[event_type]
|
|
|
+ else:
|
|
|
+ msg_type = '未知事件类型'
|
|
|
+ return msg_type
|
|
|
+ else:
|
|
|
+ event_dict = {
|
|
|
+ 1024: {
|
|
|
+ 1: 'Someone entered',
|
|
|
+ 2: 'Someone left'
|
|
|
+ },
|
|
|
+ 512: 'No one shows up for a long time',
|
|
|
+ 256: 'Someone wanders',
|
|
|
+ 128: 'Area departure',
|
|
|
+ 4: 'A car appeared',
|
|
|
+ 3: 'Screen change detected and someone appears',
|
|
|
+ 2: 'Someone showed up',
|
|
|
+ 1: 'Screen change detected',
|
|
|
+ 5: 'Screen change detected,A car appeared',
|
|
|
+ 9: 'Screen change detected,Discover faces',
|
|
|
+ 10: 'A human face is found, Someone showed up'
|
|
|
+ }
|
|
|
+
|
|
|
+ if event_type in event_dict:
|
|
|
+ if isinstance(event_dict[event_type], dict):
|
|
|
+ msg_type = event_dict[event_type][dealings_type]
|
|
|
+ else:
|
|
|
+ msg_type = event_dict[event_type]
|
|
|
+ else:
|
|
|
+ msg_type = 'Unknown event type'
|
|
|
+ return msg_type
|
|
|
+
|
|
|
@staticmethod
|
|
|
def get_msg_text(channel, n_time, lang, tz, event_type, electricity='', is_sys=0, dealings_type=0, ai_type=0,
|
|
|
device_type=0):
|
|
|
"""
|
|
|
获取消息文本
|
|
|
+ @param: channel 通道号
|
|
|
+ @param: n_time 触发事件
|
|
|
+ @param: lang 语言
|
|
|
+ @param: tz 时区
|
|
|
+ @param: event_type 事件类型
|
|
|
+ @param: electricity 电量
|
|
|
+ @param: is_sys 是否系统消息
|
|
|
+ @param: dealings_type 往来类型 1 进 1 离开
|
|
|
+ @param: ai_type 设备本地AI只能算法 事件类型
|
|
|
+ @param: device_type 设备类型
|
|
|
"""
|
|
|
n_date = CommonService.get_now_time_str(n_time=n_time, tz=tz, lang=lang)
|
|
|
msg_type = ''
|
|
@@ -370,26 +438,7 @@ class DevicePushService:
|
|
|
elif event_type == 606:
|
|
|
msg_type = '有人呼叫,请点击查看'
|
|
|
elif ai_type > 0:
|
|
|
- if event_type == 1024 and dealings_type == 1:
|
|
|
- msg_type = '有人进入'
|
|
|
- elif event_type == 1024 and dealings_type == 2:
|
|
|
- msg_type = '有人离开'
|
|
|
- elif event_type == 512:
|
|
|
- msg_type = '长时间无人出现'
|
|
|
- elif event_type == 256:
|
|
|
- msg_type = '有人徘徊'
|
|
|
- elif event_type == 128:
|
|
|
- msg_type = '区域离开'
|
|
|
- elif event_type == 64:
|
|
|
- msg_type = '区域闯入'
|
|
|
- elif event_type == 4:
|
|
|
- msg_type = '有包裹出现'
|
|
|
- elif event_type == 3:
|
|
|
- msg_type = '有车出现'
|
|
|
- elif event_type == 2:
|
|
|
- msg_type = '有宠物出现'
|
|
|
- elif event_type == 1:
|
|
|
- msg_type = '有人出现'
|
|
|
+ msg_type = DevicePushService.get_event_type_text(lang, event_type, dealings_type)
|
|
|
if is_sys:
|
|
|
if device_type in MULTI_CHANNEL_TYPE_LIST:
|
|
|
send_text = '{} 通道:{}'.format(msg_type, channel)
|
|
@@ -431,26 +480,7 @@ class DevicePushService:
|
|
|
elif event_type == 606:
|
|
|
msg_type = 'Someone is calling, please click to view'
|
|
|
elif ai_type > 0:
|
|
|
- if event_type == 1024 and int(dealings_type) == 1:
|
|
|
- msg_type = 'Someone entered'
|
|
|
- elif event_type == 1024 and int(dealings_type) == 2:
|
|
|
- msg_type = 'Someone left'
|
|
|
- elif event_type == 512:
|
|
|
- msg_type = 'No one shows up for a long time'
|
|
|
- elif event_type == 256:
|
|
|
- msg_type = 'Someone wanders'
|
|
|
- elif event_type == 128:
|
|
|
- msg_type = 'Area departure'
|
|
|
- elif event_type == 64:
|
|
|
- msg_type = 'Area break-in'
|
|
|
- elif event_type == 4:
|
|
|
- msg_type = 'Package detected'
|
|
|
- elif event_type == 3:
|
|
|
- msg_type = 'Vehicle detected'
|
|
|
- elif event_type == 2:
|
|
|
- msg_type = 'Pet detected'
|
|
|
- elif event_type == 1:
|
|
|
- msg_type = 'Person detected'
|
|
|
+ msg_type = DevicePushService.get_event_type_text(lang, event_type, dealings_type)
|
|
|
if is_sys:
|
|
|
if device_type in MULTI_CHANNEL_TYPE_LIST:
|
|
|
send_text = '{} channel:{}'.format(msg_type, channel)
|