|
@@ -157,7 +157,7 @@ class oa2TokenView(TemplateView):
|
|
|
print(res_json)
|
|
|
return JsonResponse(res_json)
|
|
|
else:
|
|
|
- res_json={'msg': 'code not exists'}
|
|
|
+ res_json = {'msg': 'code not exists'}
|
|
|
print(res_json)
|
|
|
return JsonResponse(res_json)
|
|
|
|
|
@@ -195,3 +195,51 @@ class oa2RtspStartView(TemplateView):
|
|
|
print("back0----", back[0].decode()) # 注意需要进行解码操作,默认输出的是字节
|
|
|
print("back1----", back[1].decode()) # back是一个元祖,可以通过元祖取值的方式获取结果
|
|
|
return
|
|
|
+
|
|
|
+
|
|
|
+class oa2DiscoveryDevice(TemplateView):
|
|
|
+ def post(self, request, *args, **kwargs):
|
|
|
+ request.encoding = 'utf-8'
|
|
|
+ request_dict = request.POST
|
|
|
+ return self.validate(request_dict)
|
|
|
+
|
|
|
+ def get(self, request, *args, **kwargs):
|
|
|
+ request.encoding = 'utf-8'
|
|
|
+ request_dict = request.GET
|
|
|
+ return self.validate(request_dict)
|
|
|
+
|
|
|
+ def validate(self, request_dict):
|
|
|
+ # 增加对code和client_id的校验代码,返回access_token和refresh_token
|
|
|
+ access_token = request_dict.get("access_token", None)
|
|
|
+ user_qs = UserModel.objects.filter(access_token=access_token)
|
|
|
+ response = ResObject()
|
|
|
+ if user_qs.exists():
|
|
|
+ tko = tkObject(rank=3)
|
|
|
+ tko.parseUid(tk=access_token)
|
|
|
+ userID = tko.data
|
|
|
+ ur_qs = UidRtspModel.objects.filter(user_id=userID).values('uid', 'nick', 'rtsp_url', 'id')
|
|
|
+ if ur_qs.exists():
|
|
|
+ res_json = []
|
|
|
+ for ur in ur_qs:
|
|
|
+ ur_data = {
|
|
|
+ 'endpointId': ur['id'],
|
|
|
+ 'manufacturerName': 'Axis',
|
|
|
+ 'manufacturerId': 'axis-ACCC8E5E7513',
|
|
|
+ 'modelName': 'P1425-LE',
|
|
|
+ 'friendlyName': 'Camera {nick}'.format(nick=ur['nick']),
|
|
|
+ 'description': 'Camera {nick}'.format(nick=ur['nick']),
|
|
|
+ 'resolutions': [{'width': 1280, 'height': 720}],
|
|
|
+ 'videoCodecs': ['H264'],
|
|
|
+ 'audioCodecs': ['ACC'],
|
|
|
+ 'protocols': ['RTSP'],
|
|
|
+ 'authorizationTypes': ['NONE'],
|
|
|
+ 'uri': 'rtsp://www.zositech.org:443/{stream_name}'.format(stream_name=ur['rtsp_url'])
|
|
|
+ }
|
|
|
+ res_json.append(ur_data)
|
|
|
+ return JsonResponse(res_json,safe=False)
|
|
|
+ # return response.json(0, res_json)
|
|
|
+ else:
|
|
|
+ return response.json(0, 'data is none~')
|
|
|
+ else:
|
|
|
+ return JsonResponse({'res':'11'})
|
|
|
+ return response.json(0, 'error')
|