|
@@ -422,21 +422,46 @@ class CloudStorageView(View):
|
|
return HttpResponse(json.dumps(res, ensure_ascii=False), content_type="application/json,charset=utf-8")
|
|
return HttpResponse(json.dumps(res, ensure_ascii=False), content_type="application/json,charset=utf-8")
|
|
|
|
|
|
def do_query_vod_list(self, request_dict, userID, response): # 获取视频播放列表
|
|
def do_query_vod_list(self, request_dict, userID, response): # 获取视频播放列表
|
|
|
|
+ logger = logging.getLogger('info')
|
|
|
|
+ intoTime = int(time.time())
|
|
|
|
+
|
|
startTime = int(request_dict.get('startTime', None))
|
|
startTime = int(request_dict.get('startTime', None))
|
|
endTime = int(request_dict.get('endTime', None))
|
|
endTime = int(request_dict.get('endTime', None))
|
|
uid = request_dict.get('uid', None)
|
|
uid = request_dict.get('uid', None)
|
|
channel = request_dict.get('channel', None)
|
|
channel = request_dict.get('channel', None)
|
|
|
|
|
|
|
|
+ if uid == 'UWE2ZJ52SE4FX75U111A':
|
|
|
|
+ logger.info({
|
|
|
|
+ "intoTime":intoTime,
|
|
|
|
+ })
|
|
|
|
+
|
|
dv_qs = Device_Info.objects.filter(userID_id=userID, UID=uid, isShare=False).values('vodPrimaryUserID',
|
|
dv_qs = Device_Info.objects.filter(userID_id=userID, UID=uid, isShare=False).values('vodPrimaryUserID',
|
|
'vodPrimaryMaster')
|
|
'vodPrimaryMaster')
|
|
if not dv_qs.exists():
|
|
if not dv_qs.exists():
|
|
return response.json(12)
|
|
return response.json(12)
|
|
|
|
+
|
|
|
|
+ dvQsModelTimeOver = int(time.time())
|
|
|
|
+ if uid == 'UWE2ZJ52SE4FX75U111A':
|
|
|
|
+ logger.info({
|
|
|
|
+ "intoTime": intoTime,
|
|
|
|
+ "dvQsModelOverTime": dvQsModelTimeOver,
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+
|
|
if dv_qs[0]['vodPrimaryUserID'] != userID:
|
|
if dv_qs[0]['vodPrimaryUserID'] != userID:
|
|
return response.json(10034)
|
|
return response.json(10034)
|
|
now_time = int(time.time())
|
|
now_time = int(time.time())
|
|
bv_qs = UID_Bucket.objects.filter(uid=uid, endTime__gte=now_time ,channel=channel).values('bucket_id').order_by('addTime')
|
|
bv_qs = UID_Bucket.objects.filter(uid=uid, endTime__gte=now_time ,channel=channel).values('bucket_id').order_by('addTime')
|
|
if not bv_qs.exists():
|
|
if not bv_qs.exists():
|
|
return response.json(10030)
|
|
return response.json(10030)
|
|
|
|
+
|
|
|
|
+ UidBucketModelTimeOver = int(time.time())
|
|
|
|
+ logger.info({
|
|
|
|
+ "intoTime": intoTime,
|
|
|
|
+ "dvQsModelOverTime": dvQsModelTimeOver,
|
|
|
|
+ "UidBucketModelOverTime": UidBucketModelTimeOver,
|
|
|
|
+ })
|
|
|
|
+
|
|
# vh_qs = VodHlsModel.objects.filter \
|
|
# vh_qs = VodHlsModel.objects.filter \
|
|
# (uid=uid, channel=channel, endTime__gte=now_time,time__range=(startTime, endTime), bucket_id=bv_qs[0]['bucket_id']). \
|
|
# (uid=uid, channel=channel, endTime__gte=now_time,time__range=(startTime, endTime), bucket_id=bv_qs[0]['bucket_id']). \
|
|
# values("id", "time", "sec", "bucket__bucket", "fg", "bucket__endpoint", "bucket__region", "bucket__mold")
|
|
# values("id", "time", "sec", "bucket__bucket", "fg", "bucket__endpoint", "bucket__region", "bucket__mold")
|
|
@@ -447,6 +472,15 @@ class CloudStorageView(View):
|
|
vod_play_list = []
|
|
vod_play_list = []
|
|
if not vh_qs.exists():
|
|
if not vh_qs.exists():
|
|
return response.json(0, vod_play_list)
|
|
return response.json(0, vod_play_list)
|
|
|
|
+
|
|
|
|
+ vodHlsModelTimeOver = int(time.time())
|
|
|
|
+ logger.info({
|
|
|
|
+ "intoTime": intoTime,
|
|
|
|
+ "dvQsModelOverTime": dvQsModelTimeOver,
|
|
|
|
+ "UidBucketModelOverTime": UidBucketModelTimeOver,
|
|
|
|
+ "vodHlsModelOverTime": vodHlsModelTimeOver,
|
|
|
|
+ })
|
|
|
|
+
|
|
aws_access_key_id = AWS_ACCESS_KEY_ID[vh_qs[0]["bucket__mold"]]
|
|
aws_access_key_id = AWS_ACCESS_KEY_ID[vh_qs[0]["bucket__mold"]]
|
|
aws_secret_access_key = AWS_SECRET_ACCESS_KEY[vh_qs[0]["bucket__mold"]]
|
|
aws_secret_access_key = AWS_SECRET_ACCESS_KEY[vh_qs[0]["bucket__mold"]]
|
|
session = Session(
|
|
session = Session(
|
|
@@ -456,6 +490,16 @@ class CloudStorageView(View):
|
|
)
|
|
)
|
|
conn = session.client('s3')
|
|
conn = session.client('s3')
|
|
uidToken = TokenObject().encryption(data={'uid': uid})
|
|
uidToken = TokenObject().encryption(data={'uid': uid})
|
|
|
|
+
|
|
|
|
+ awsObjectOverTime = int(time.time())
|
|
|
|
+ logger.info({
|
|
|
|
+ "intoTime": intoTime,
|
|
|
|
+ "dvQsModelOverTime": dvQsModelTimeOver,
|
|
|
|
+ "UidBucketModelOverTime": UidBucketModelTimeOver,
|
|
|
|
+ "vodHlsModelOverTime": vodHlsModelTimeOver,
|
|
|
|
+ "awsObjectOverTime": awsObjectOverTime,
|
|
|
|
+ })
|
|
|
|
+
|
|
for vod in vh_qs:
|
|
for vod in vh_qs:
|
|
# bucket__mold = vod["bucket__mold"]
|
|
# bucket__mold = vod["bucket__mold"]
|
|
bucket_name = vod["bucket__bucket"]
|
|
bucket_name = vod["bucket__bucket"]
|
|
@@ -483,6 +527,18 @@ class CloudStorageView(View):
|
|
'ts_num': ts_num,
|
|
'ts_num': ts_num,
|
|
'vod_id': vod['id']
|
|
'vod_id': vod['id']
|
|
}),
|
|
}),
|
|
|
|
+
|
|
|
|
+ generatePresignedOverTime = int(time.time())
|
|
|
|
+ if uid == 'UWE2ZJ52SE4FX75U111A':
|
|
|
|
+ logger.info({
|
|
|
|
+ "intoTime":intoTime,
|
|
|
|
+ "dvQsModelOverTime":dvQsModelTimeOver,
|
|
|
|
+ "UidBucketModelOverTime":UidBucketModelTimeOver,
|
|
|
|
+ "vodHlsModelOverTime":vodHlsModelTimeOver,
|
|
|
|
+ "awsObjectOverTime":awsObjectOverTime,
|
|
|
|
+ "generatePresignedOverTime":generatePresignedOverTime,
|
|
|
|
+ })
|
|
|
|
+
|
|
return response.json(0, vod_play_list)
|
|
return response.json(0, vod_play_list)
|
|
|
|
|
|
def do_store_playlist(self, request_dict, response): # 设备调用,上传视频到s3,同时把视频数据信息传给服务器,服务器存储播放内容
|
|
def do_store_playlist(self, request_dict, response): # 设备调用,上传视频到s3,同时把视频数据信息传给服务器,服务器存储播放内容
|