chenjunkai 6 년 전
부모
커밋
2b5b02b934
3개의 변경된 파일18개의 추가작업 그리고 33개의 파일을 삭제
  1. 1 13
      Ansjer/test/osssigput.py
  2. 16 19
      Controller/CloudVod.py
  3. 1 1
      Controller/EquipmentManager.py

+ 1 - 13
Ansjer/test/osssigput.py

@@ -25,19 +25,7 @@ http://test.dvema.com/cloudVod/getSts?uidToken=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1N
 '''
 
 
-tokenss = {
-  "Expiration": "2019-01-02T07:03:19Z",
-  "code": 0,
-  "SecurityToken": "CAISxgJ1q6Ft5B2yfSjIr4n7L+/V2KVS9IqvU3DUt1UeZeBqpYnOrjz2IHFIf3NhAe0bv/kzm2lX7/YYlr0uebV4FXHoM/FQy6Z1rCGeOtOYkpR9SyqGYNj3d1KIAjvXgeUsCoeQFaElE5XAQlTAkTAJkNmeXD6+XlujHISUgJp8FLo+VRW5ajw0TbUzIRB5+vcHKVzbN/umLnyShXHLXmZlvgdghER166m03re4iHzkgUb91/UeqqnoP5GgdLMMBppkVMqv1+EELsiH2SVLuR9R7/U03u4W8jHZud3ERARjySjWDsaKyP1KHi0kRJdjQvdt6+b7mac/+M6rztWvkk0RZ74ECXiDGtz5nPGpQr35aowLEp/gIGnI39y1MZ34jhgpe3pzNnkRKoZ6cC4oVEF9F22Fc/D+qArQDBy/UK+ey7GQWgfwCpUwlhqAAS0lC1SNhWzeK59LV7ZO52lDC871TSZp+LHohSB/zWC4ItNZ4Goq/kcrTLw0m92zHVp4ZI294+/J8FcHVm0JWHi0VkL0O8LUTmKFveAxKBRMzgS/z6LApFOgI6JCTgPvEI+rDf4aXAMsGn8xwuvJ9H+o7bHTVYV+NYQEmnl53Leb",
-  "AccessKeySecret": "41ZvKvrSLyKFzPMpZvFrFJdjzbrfqfysQn16Y62F4oxt",
-  "endpoint": "oss-cn-shenzhen.aliyuncs.com",
-  "storage": "5ZBU8UD6RHMZJ5JW111A/vod2/",
-  "expire": "3600",
-  "ip": "120.237.157.184",
-  "AccessKeyId": "STS.NJNdUa5zsCHDQVeSUKioFJLeL",
-  "bucket_name": "cnvod1",
-  "arn": "acs:ram::1901342792446414:role/stsoss/5ZBU8UD6RHMZJ5JW111A"
-}
+tokenss ={"ip": "120.237.157.184", "expire": "3600", "bucket_name": "cnvod3", "storage": "5ZBU8UD6RHMZJ5JW111A/vod2/", "endpoint": "oss-cn-shenzhen.aliyuncs.com", "Expiration": "2019-01-02T07:28:39Z", "AccessKeySecret": "6qLxVJZyUQ4RBCfQGXTRbiFJrUo9BEidKHp9tuK93Krv", "code": 0, "arn": "acs:ram::1901342792446414:role/stsoss/5ZBU8UD6RHMZJ5JW111A", "SecurityToken": "CAISxgJ1q6Ft5B2yfSjIr4n7Kc35tO5U4pOKd0X/kGdnWuFKm7Pp1Dz2IHFIf3NhAe0bv/kzm2lX7/YYlr0uebV4FXHoM/FQy6Z1rCGeOtOYkpRnPQ+HYNj3d1KIAjvXgeUsCoeQFaElE5XAQlTAkTAJkNmeXD6+XlujHISUgJp8FLo+VRW5ajw0TbUzIRB5+vcHKVzbN/umLnyShXHLXmZlvgdghER166m03re4iHzkgUb91/UeqqnoP5GgdLMMBppkVMqv1+EELsiH2SVLuR9R7/U03u4W8jHZud3GRARjySjWDsaKyP1KHi0kRJdjQvdt6+b7mac/+M6rztWvkk0RZ74ECXiDGtz5nPGpQr35aowLEp/gIGnI39y1MZ34jhgpe3pzNnkRKoZ6cC4oVEF9F22Fc/D+qArQDBy/UK+ey7GQWgfwCpUwlhqAAUkADkhHmc1Y0VJSCX7P7x0QK6cmkgKHDJuvqRQeuByEv1udBKNi1w/hPpegfmL6cWYl4LhYSavdElvg0CwyHD9dUuUlPXonnWSo52r5lhsgwpLgBmdmUhL8NnoGqzfeDq4ZU5FmM44vQXLU16qejz1oUjqTnquk0dVJW40K7fxj", "AccessKeyId": "STS.NJNbwMY1uUQaucNtg2VnftvB6"}
 # 使用RAM账号的AccessKeyId和AccessKeySecret向STS申请临时token。
 
 # 使用临时token中的认证信息初始化StsAuth实例。

+ 16 - 19
Controller/CloudVod.py

@@ -430,13 +430,13 @@ class CloudVodView(View):
         if not qs.exists():
             return response.json(13)
         uid = qs[0]['UID']
-        ubqs = UID_Bucket.objects.filter(uid=uid, channel=channel) \
+        now_time = CommonService.get_utc()
+        ubqs = UID_Bucket.objects.filter(uid=uid, channel=channel, endTime__gte=now_time) \
             .values('endTime', 'bucket__bucket', 'bucket__endpoint')
         if not ubqs.exists():
-            return response.json(10, '未购买')
-        now_time = time.time()
-        if now_time > ubqs[0]['endTime']:
-            return response.json(10, '已过期')
+            return response.json(10, '未购买或过期')
+        # if now_time > ubqs[0]['endTime']:
+        #     return response.json(10, '已过期')
         if not ubqs.exists():
             return response.json(10, '未开通云存储')
         bucket_name = ubqs[0]["bucket__bucket"]
@@ -461,7 +461,7 @@ class CloudVodView(View):
                 print(thumb_key)
                 thumb = bucket.sign_url('GET', thumb_key, 3600,
                                         params={'x-oss-process': 'video/snapshot,t_10000,m_fast,w_300'})
-                vod_play_list.append({'name': ptime, 'sign_url': vod_play_url, 'thumb': thumb,'sec':0})
+                vod_play_list.append({'name': ptime, 'sign_url': vod_play_url, 'thumb': thumb, 'sec': 0})
             else:  # 文件
                 pass
                 # print('file: ' + obj.key)
@@ -520,7 +520,7 @@ class CloudVodView(View):
                         upgrade_storeDay = int(smqs[0]['bucket__storeDay'])
                         ctcTime = ubqs[0]['endTime'] - nowTime
                         multiple = math.ceil(upgrade_storeDay / origin_storeDay)
-                        ubqs.update(endTime=ctcTime / multiple + addTime + ubqs[0]['endTime'],bucket_id=bucketId)
+                        ubqs.update(endTime=ctcTime / multiple + addTime + ubqs[0]['endTime'], bucket_id=bucketId)
         # 新增模式
         else:
             print('create')
@@ -574,11 +574,12 @@ class CloudVodView(View):
         channel = utko.channel
         print(channel)
         print(UID)
-        qs = UID_Bucket.objects.filter(uid=UID, channel=channel, status=1).values("channel", "bucket__storeDay",
-                                                                                  "bucket_id")
+        nowTime = CommonService.get_utc()
+        qs = UID_Bucket.objects.filter(uid=UID, channel=channel, status=1, endTime__gte=nowTime). \
+            values("channel", "bucket__storeDay", "bucket_id")
         if not qs.exists():
-            return response.json(10, '设备未购买')
-        # nowTime = time.time()
+            res = {'code': 404, 'msg': '设备未购买'}
+            return HttpResponse(json.dumps(res, ensure_ascii=False), content_type="application/json,charset=utf-8")
         storeDay = qs[0]['bucket__storeDay']
         bucketID = qs[0]['bucket_id']
         endTime = int(storeTime) + storeDay * 86400
@@ -604,7 +605,7 @@ class CloudVodView(View):
         ubqs = UID_Bucket.objects.filter(uid=UID, channel=channel).values('status')
         if not ubqs.exists():
             return response.json(10, '设备未购买')
-        nowTime = time.time()
+        nowTime = CommonService.get_utc()
         vodqs = VodHlsModel.objects.filter(uid=UID, channel=channel, time__range=(startTime, endTime),
                                            endTime__gte=nowTime) \
             .values("time", "sec", "bucket__bucket", "bucket__endpoint", "bucket__region")
@@ -617,19 +618,15 @@ class CloudVodView(View):
             bucket = oss2.Bucket(auth, endpoint, bucket_name)
             m3u8 = '{uid}/vod{channel}/{daytime}/{time}/{time}.m3u8'. \
                 format(uid=UID, channel=channel, daytime=daytime, time=vod['time'])
-            ts = '{uid}/vod{channel}/{daytime}/{time}/ts0.ts'.\
+            ts = '{uid}/vod{channel}/{daytime}/{time}/ts0.ts'. \
                 format(uid=UID, channel=channel, daytime=daytime, time=vod['time'])
             url = bucket.sign_url('GET', m3u8, 3600, params={'x-oss-process': 'hls/sign'})
             urllst = url.split('?')
             url_start = urllib.parse.unquote(urllst[0])
             url_end = urllst[1]
-            vod_play_url = '{url_start}?{url_end}'.\
+            vod_play_url = '{url_start}?{url_end}'. \
                 format(url_start=url_start, url_end=url_end)
             thumb = bucket.sign_url('GET', ts, 3600,
                                     params={'x-oss-process': 'video/snapshot,t_10000,m_fast,w_300'})
             vod_play_list.append({'name': vod['time'], 'sign_url': vod_play_url, 'thumb': thumb, 'sec': vod['sec']})
-        return response.json(0, vod_play_list)
-
-    def do_filter_playlist(self,request_dict,userID,response):
-
-        return
+        return response.json(0, vod_play_list)

+ 1 - 1
Controller/EquipmentManager.py

@@ -204,7 +204,7 @@ def queryUserEquipmentInterface(request, *callback_args,
                 if p['fields']['UID'] == dm['uid']:
                     p['fields']['vod'].append(dm)
             res.append(p)
-        print(res)
+        # print(res)
         return response.json(0, {'datas': res})
     else:
         return response.json(309)