|
@@ -7,19 +7,35 @@ import config
|
|
|
from loguru import logger
|
|
|
import json
|
|
|
from algo.car_cf import car_classification
|
|
|
+from algo.car_direction import car_dircetion
|
|
|
+from algo.class_direction import class_direction
|
|
|
+
|
|
|
|
|
|
logger.add(config.log_path, rotation="50 MB", encoding='utf-8')
|
|
|
|
|
|
-CONNECT_TYPE = 'connect'
|
|
|
-ERROR_TYPE = 'error'
|
|
|
-CLOSE_TYPE = 'close'
|
|
|
XLS_TYPE = 'xls'
|
|
|
XLSX_TYPE = 'xlsx'
|
|
|
-TXT_TYPE = 'txt'
|
|
|
+TXT_TYPE ='txt'
|
|
|
WAV_TYPE = 'wav'
|
|
|
-JSON_TYPE = 'json'
|
|
|
+JSON_TYPE ='json'
|
|
|
NPY_TYPE = 'npy'
|
|
|
|
|
|
+handlers = {
|
|
|
+XLS_TYPE : 'xls',
|
|
|
+XLSX_TYPE : 'xlsx',
|
|
|
+TXT_TYPE : 'txt',
|
|
|
+WAV_TYPE : 'wav',
|
|
|
+JSON_TYPE :'json',
|
|
|
+NPY_TYPE : 'npy'
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+CLOSE_TYPE = 'close'
|
|
|
+ERROR_TYPE = 'error'
|
|
|
+CONNECT_TYPE = 'connect'
|
|
|
+CAR_CLASS = 'car_classification'
|
|
|
+CAR_DIREC = 'car_direction'
|
|
|
+CLASS_DIREC = 'class_direc'
|
|
|
|
|
|
class MessageOperation:
|
|
|
|
|
@@ -30,39 +46,54 @@ class MessageOperation:
|
|
|
try:
|
|
|
ask = json.loads(msg)
|
|
|
self.msg_type = ask['msg_type']
|
|
|
- self.msg_type = ask['msg_type']
|
|
|
+ self.positive_dir = ask['positive_dir']
|
|
|
+ self.negativa_dir = ask['negativa_dir']
|
|
|
+ self.task_type = ask['task_type']
|
|
|
self.record_id = ask['recordId']
|
|
|
self.msg_content = ask['content']
|
|
|
- if self.msg_type == XLS_TYPE:
|
|
|
- self.response_status, self.response_content = car_classification(
|
|
|
- self.msg_content)
|
|
|
- elif self.msg_type == XLSX_TYPE:
|
|
|
- self.response_status, self.response_content = car_classification(
|
|
|
- self.msg_content)
|
|
|
- elif self.msg_type == TXT_TYPE:
|
|
|
- self.response_status, self.response_content = car_classification(
|
|
|
- self.msg_content)
|
|
|
- elif self.msg_type == WAV_TYPE:
|
|
|
- self.response_status, self.response_content = car_classification(
|
|
|
- self.msg_content)
|
|
|
- elif self.msg_type == JSON_TYPE:
|
|
|
- self.response_status, self.response_content = car_classification(
|
|
|
- self.msg_content)
|
|
|
- elif self.msg_type == NPY_TYPE:
|
|
|
- self.response_status, self.response_content = car_classification(
|
|
|
- self.msg_content)
|
|
|
- elif self.msg_type == CLOSE_TYPE:
|
|
|
- self.response_status = True
|
|
|
- self.response_content = "close success"
|
|
|
- else:
|
|
|
- self.response_status = False
|
|
|
- self.response_content = "无法识别"
|
|
|
- # self.record_id = "null"
|
|
|
+ if self.task_type == CAR_CLASS:
|
|
|
+ if self.msg_type in handlers:
|
|
|
+ self.response_status,self.response_car_content,self.response_direction_content = car_classification(
|
|
|
+ self.msg_content)
|
|
|
+ elif self.msg_type == CLOSE_TYPE:
|
|
|
+ self.response_status = True
|
|
|
+ self.response_car_content = "close success"
|
|
|
+ self.response_direction_content = 'close success'
|
|
|
+ else:
|
|
|
+ self.response_status = False
|
|
|
+ self.response_car_content = "无法识别"
|
|
|
+ self.response_direction_content = '无法识别'
|
|
|
+ # self.record_id = "null"
|
|
|
+ elif self.task_type == CAR_DIREC:
|
|
|
+ if self.msg_type in handlers:
|
|
|
+ self.response_status, self.response_direction_content, self.response_car_content = car_dircetion(
|
|
|
+ self.msg_content,self.positive_dir,self.negativa_dir)
|
|
|
+ elif self.msg_type == CLOSE_TYPE:
|
|
|
+ self.response_status = True
|
|
|
+ self.response_direction_content = "close success"
|
|
|
+ self.response_car_content = "close success"
|
|
|
+ else:
|
|
|
+ self.response_status = False
|
|
|
+ self.response_direction_content = "无法识别"
|
|
|
+ self.response_car_content = "无法识别"
|
|
|
+ elif self.task_type == CLASS_DIREC:
|
|
|
+ if self.msg_type in handlers:
|
|
|
+ self.response_status, self.response_car_content,self.response_direction_content = class_direction(
|
|
|
+ self.msg_content,self.positive_dir,self.negativa_dir)
|
|
|
+ elif self.msg_type == CLOSE_TYPE:
|
|
|
+ self.response_status = True
|
|
|
+ self.response_car_content = "close success"
|
|
|
+ # self.response_direction_content = "close success"
|
|
|
+ else:
|
|
|
+ self.response_status = False
|
|
|
+ self.response_car_content = "无法识别"
|
|
|
+ # self.response_direction_content = "无法识别"
|
|
|
+
|
|
|
except Exception as e:
|
|
|
self.msg_type = ERROR_TYPE
|
|
|
self.response_status = False
|
|
|
self.response_content = str(e)
|
|
|
- # self.record_id = "null"
|
|
|
+
|
|
|
|
|
|
def pack(self) -> str:
|
|
|
return json.dumps({
|
|
@@ -71,7 +102,8 @@ class MessageOperation:
|
|
|
'recordId': self.record_id,
|
|
|
'status': self.response_status,
|
|
|
'msg_type': self.msg_type,
|
|
|
- 'content': self.response_content,
|
|
|
+ 'car_content': self.response_car_content,
|
|
|
+ 'direction_content': self.response_direction_content,
|
|
|
'time': str(datetime.datetime.now())
|
|
|
})
|
|
|
|
|
@@ -88,7 +120,8 @@ async def main():
|
|
|
'status': True,
|
|
|
'msg_type': CONNECT_TYPE,
|
|
|
'pid': pid,
|
|
|
- 'content': '',
|
|
|
+ 'car_content': '',
|
|
|
+ 'direction_content': '',
|
|
|
'time': str(datetime.datetime.now())
|
|
|
})
|
|
|
logger.debug(f">>> {greeting}")
|