|
@@ -1,26 +1,16 @@
|
|
|
import time
|
|
|
from datetime import datetime
|
|
|
|
|
|
-import oss2
|
|
|
import boto3
|
|
|
-import botocore.client
|
|
|
-
|
|
|
+import botocore
|
|
|
from django.core.paginator import Paginator
|
|
|
-from django.db.models import Value
|
|
|
-from django.db.models.functions import Coalesce
|
|
|
from django.views import View
|
|
|
from obs import ObsClient
|
|
|
-from Ansjer.pushconfig import OSS_STS_ACCESS_SECRET, OSS_STS_ACCESS_KEY
|
|
|
-from Ansjer.config import HUAWEICLOUD_AK, HUAWEICLOUD_SK, HUAWEICLOUD_OBS_SERVER, HUAWEICLOUD_PUSH_BUKET, \
|
|
|
- AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, SERVER_TYPE, CONFIG_EUR, CONFIG_US
|
|
|
-from Object.RedisObject import RedisObject
|
|
|
-
|
|
|
-from Object.ResponseObject import ResponseObject
|
|
|
-from Object.OCIObjectStorage import OCIObjectStorage
|
|
|
+from Ansjer.config import HUAWEICLOUD_AK, HUAWEICLOUD_SK, HUAWEICLOUD_OBS_SERVER, CONFIG_INFO, CONFIG_CN, CONFIG_TEST, \
|
|
|
+ AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY
|
|
|
|
|
|
from Roomumy.models import TimeAlbum, AlbumMedia, TimeDiary, DiaryAlbumMediaRelation
|
|
|
from Service.CommonService import CommonService
|
|
|
-from Controller.DetectControllerV2 import DetectControllerViewV2
|
|
|
|
|
|
|
|
|
class TimeAlbumView(View):
|
|
@@ -224,10 +214,32 @@ class TimeAlbumView(View):
|
|
|
|
|
|
@staticmethod
|
|
|
def media_url(storage_location, uid, channel, event_time):
|
|
|
- obj_name = f'roomumy/albumMedia/{uid}/{channel}/{event_time}.jpg'
|
|
|
- obs_client = ObsClient(
|
|
|
- access_key_id=HUAWEICLOUD_AK, secret_access_key=HUAWEICLOUD_SK, server=HUAWEICLOUD_OBS_SERVER)
|
|
|
- create_res = obs_client.createSignedUrl(
|
|
|
- method='GET', bucketName="asj-app", objectKey=obj_name, expires=600)
|
|
|
- media_url = create_res.signedUrl
|
|
|
+ if storage_location == 2:
|
|
|
+ obj_name = f'roomumy/albumMedia/{uid}/{channel}/{event_time}.jpeg'
|
|
|
+ if CONFIG_INFO == CONFIG_CN or CONFIG_INFO == CONFIG_TEST:
|
|
|
+ aws_client = boto3.client(
|
|
|
+ 's3',
|
|
|
+ aws_access_key_id=AWS_ACCESS_KEY_ID[0],
|
|
|
+ aws_secret_access_key=AWS_SECRET_ACCESS_KEY[0],
|
|
|
+ region_name='cn-northwest-1'
|
|
|
+ )
|
|
|
+ else:
|
|
|
+ aws_client = boto3.client(
|
|
|
+ 's3',
|
|
|
+ aws_access_key_id=AWS_ACCESS_KEY_ID[1],
|
|
|
+ aws_secret_access_key=AWS_SECRET_ACCESS_KEY[1],
|
|
|
+ region_name='cn-northwest-1'
|
|
|
+ )
|
|
|
+ params = {'Key': obj_name, 'Bucket': 'ansjerfilemanager'}
|
|
|
+ media_url = aws_client.generate_presigned_url(
|
|
|
+ 'get_object', Params=params, ExpiresIn=300)
|
|
|
+ elif storage_location == 5:
|
|
|
+ obj_name = f'roomumy/albumMedia/{uid}/{channel}/{event_time}.jpeg'
|
|
|
+ obs_client = ObsClient(
|
|
|
+ access_key_id=HUAWEICLOUD_AK, secret_access_key=HUAWEICLOUD_SK, server=HUAWEICLOUD_OBS_SERVER)
|
|
|
+ create_res = obs_client.createSignedUrl(
|
|
|
+ method='GET', bucketName="asj-app", objectKey=obj_name, expires=600)
|
|
|
+ media_url = create_res.signedUrl
|
|
|
+ else:
|
|
|
+ media_url = ''
|
|
|
return media_url
|