|
@@ -172,6 +172,10 @@ class testView(View):
|
|
return self.uploadAVSS(request, response)
|
|
return self.uploadAVSS(request, response)
|
|
elif operation == 'oci_oss': # 生成oci oss预签名链接
|
|
elif operation == 'oci_oss': # 生成oci oss预签名链接
|
|
return self.oci_oss(request, response)
|
|
return self.oci_oss(request, response)
|
|
|
|
+ elif operation == 'genericReportPush': # 设备上传日志
|
|
|
|
+ return self.generic_report_push(request_dict, response)
|
|
|
|
+ elif operation == 'genericReportGet': # 获取设备上传日志
|
|
|
|
+ return self.generic_report_get(request_dict, response)
|
|
else:
|
|
else:
|
|
return response.json(414)
|
|
return response.json(414)
|
|
|
|
|
|
@@ -1180,7 +1184,7 @@ class testView(View):
|
|
config=botocore.client.Config(signature_version='s3v4'),
|
|
config=botocore.client.Config(signature_version='s3v4'),
|
|
region_name=region_name,
|
|
region_name=region_name,
|
|
endpoint_url='https://servers.compat.objectstorage.us-phoenix-1.oraclecloud.com'
|
|
endpoint_url='https://servers.compat.objectstorage.us-phoenix-1.oraclecloud.com'
|
|
- )
|
|
|
|
|
|
+ )
|
|
# 存储桶
|
|
# 存储桶
|
|
bucket = 'push'
|
|
bucket = 'push'
|
|
key = 'test.jpeg'
|
|
key = 'test.jpeg'
|
|
@@ -1188,7 +1192,7 @@ class testView(View):
|
|
# pre_signed_url = s3_client.generate_file_obj_url(bucket, key, client_method, 24*3600)
|
|
# pre_signed_url = s3_client.generate_file_obj_url(bucket, key, client_method, 24*3600)
|
|
pre_signed_url = s3_client.generate_presigned_url(
|
|
pre_signed_url = s3_client.generate_presigned_url(
|
|
ClientMethod=client_method,
|
|
ClientMethod=client_method,
|
|
- ExpiresIn=7*24*3600,
|
|
|
|
|
|
+ ExpiresIn=7 * 24 * 3600,
|
|
Params={
|
|
Params={
|
|
'Bucket': bucket,
|
|
'Bucket': bucket,
|
|
'Key': key
|
|
'Key': key
|
|
@@ -1197,3 +1201,29 @@ class testView(View):
|
|
return response.json(0, pre_signed_url)
|
|
return response.json(0, pre_signed_url)
|
|
except Exception as e:
|
|
except Exception as e:
|
|
return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
|
|
return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
|
|
|
|
+
|
|
|
|
+ @staticmethod
|
|
|
|
+ def generic_report_push(request_dict, response):
|
|
|
|
+ try:
|
|
|
|
+ logging.info('设备上传数据:{}'.format(request_dict))
|
|
|
|
+ return response.json(0)
|
|
|
|
+ except Exception as e:
|
|
|
|
+ return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
|
|
|
|
+
|
|
|
|
+ @staticmethod
|
|
|
|
+ def generic_report_get(request_dict, response):
|
|
|
|
+ uid = request_dict.get('uid', None)
|
|
|
|
+ event_type = request_dict.get('event_type', None)
|
|
|
|
+ if not all([uid, event_type]):
|
|
|
|
+ return response.json()
|
|
|
|
+ try:
|
|
|
|
+ serial_number = CommonService.query_serial_with_uid(uid)
|
|
|
|
+ msg = {
|
|
|
|
+ "reporttype": event_type
|
|
|
|
+ }
|
|
|
|
+ topic_name = 'ansjer/generic/{}/report/get'.format(serial_number)
|
|
|
|
+ result = CommonService.req_publish_mqtt_msg(serial_number, topic_name, msg)
|
|
|
|
+
|
|
|
|
+ return response.json(0)
|
|
|
|
+ except Exception as e:
|
|
|
|
+ return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
|