|
@@ -422,21 +422,46 @@ class CloudStorageView(View):
|
|
|
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): # 获取视频播放列表
|
|
|
+ logger = logging.getLogger('info')
|
|
|
+ intoTime = int(time.time())
|
|
|
+
|
|
|
startTime = int(request_dict.get('startTime', None))
|
|
|
endTime = int(request_dict.get('endTime', None))
|
|
|
uid = request_dict.get('uid', 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',
|
|
|
'vodPrimaryMaster')
|
|
|
if not dv_qs.exists():
|
|
|
return response.json(12)
|
|
|
+
|
|
|
+ dvQsModelTimeOver = int(time.time())
|
|
|
+ if uid == 'UWE2ZJ52SE4FX75U111A':
|
|
|
+ logger.info({
|
|
|
+ "intoTime": intoTime,
|
|
|
+ "dvQsModelOverTime": dvQsModelTimeOver,
|
|
|
+ })
|
|
|
+
|
|
|
+
|
|
|
if dv_qs[0]['vodPrimaryUserID'] != userID:
|
|
|
return response.json(10034)
|
|
|
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')
|
|
|
if not bv_qs.exists():
|
|
|
return response.json(10030)
|
|
|
+
|
|
|
+ UidBucketModelTimeOver = int(time.time())
|
|
|
+ logger.info({
|
|
|
+ "intoTime": intoTime,
|
|
|
+ "dvQsModelOverTime": dvQsModelTimeOver,
|
|
|
+ "UidBucketModelOverTime": UidBucketModelTimeOver,
|
|
|
+ })
|
|
|
+
|
|
|
# vh_qs = VodHlsModel.objects.filter \
|
|
|
# (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")
|
|
@@ -447,6 +472,15 @@ class CloudStorageView(View):
|
|
|
vod_play_list = []
|
|
|
if not vh_qs.exists():
|
|
|
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_secret_access_key = AWS_SECRET_ACCESS_KEY[vh_qs[0]["bucket__mold"]]
|
|
|
session = Session(
|
|
@@ -456,6 +490,16 @@ class CloudStorageView(View):
|
|
|
)
|
|
|
conn = session.client('s3')
|
|
|
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:
|
|
|
# bucket__mold = vod["bucket__mold"]
|
|
|
bucket_name = vod["bucket__bucket"]
|
|
@@ -483,6 +527,18 @@ class CloudStorageView(View):
|
|
|
'ts_num': ts_num,
|
|
|
'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)
|
|
|
|
|
|
def do_store_playlist(self, request_dict, response): # 设备调用,上传视频到s3,同时把视频数据信息传给服务器,服务器存储播放内容
|
|
@@ -863,10 +919,15 @@ class CloudStorageView(View):
|
|
|
return HttpResponseRedirect(red_url)
|
|
|
|
|
|
def do_pay_by_paypal_callback(self, request_dict, response): # paypal支付回调
|
|
|
+ logger = logging.getLogger('info')
|
|
|
+ logger.info('---------进入paypay异步回调')
|
|
|
paymentId = request_dict.get('paymentId', None)
|
|
|
PayerID = request_dict.get('PayerID', None)
|
|
|
orderID = request_dict.get('orderID', None)
|
|
|
lang = request_dict.get('lang', 'en')
|
|
|
+
|
|
|
+ logger.info("paymentID={paymentId},payerID={PayerID}".format(paymentId=paymentId,PayerID=PayerID))
|
|
|
+
|
|
|
# redis加锁,防止订单重复
|
|
|
redisObj = RedisObject()
|
|
|
isLock = redisObj.CONN.setnx(orderID + 'do_notify', 1)
|
|
@@ -887,6 +948,10 @@ class CloudStorageView(View):
|
|
|
# ID of the payment. This ID is provided when creating payment.
|
|
|
payment = paypalrestsdk.Payment.find(paymentId)
|
|
|
print(payment)
|
|
|
+
|
|
|
+ logger.info("payment------")
|
|
|
+ logger.info(payment)
|
|
|
+
|
|
|
payres = payment.execute({"payer_id": PayerID})
|
|
|
print(payres)
|
|
|
if not payres:
|