|
@@ -435,9 +435,10 @@ class oa2DiscoveryDevice(TemplateView):
|
|
|
|
|
|
user = user_qs[0]
|
|
|
userID = user.userID
|
|
|
- logger.info('userID: {}'.format(userID))
|
|
|
+ region_code = user.region_code
|
|
|
+ logger.info('搜索设备的用户id:{},地区:{}'.format(userID, region_code))
|
|
|
|
|
|
- # 更新事件网关接口
|
|
|
+ # AlexaAuthModel表数据
|
|
|
alexAuth = AlexaAuthModel.objects.filter(token=access_token, skill_name=skill_name).order_by('-addTime')
|
|
|
if alexAuth.exists():
|
|
|
auth_res = alexAuth.values()
|
|
@@ -450,8 +451,7 @@ class oa2DiscoveryDevice(TemplateView):
|
|
|
event_alexa_region = auth_res[0]['alexa_region']
|
|
|
AlexaAuthModel.objects.filter(userID=userID).delete()
|
|
|
alexAuth.delete()
|
|
|
- logger.info('update_event_access_token')
|
|
|
- logger.info(event_token)
|
|
|
+
|
|
|
AlexaAuthModel.objects.create(
|
|
|
userID=userID,
|
|
|
access_token=event_access_token,
|
|
@@ -464,25 +464,19 @@ class oa2DiscoveryDevice(TemplateView):
|
|
|
skill_name=skill_name,
|
|
|
)
|
|
|
|
|
|
- auth_request_url = '{}/oalexa/discoveryuid'.format(SERVER_PREFIX)
|
|
|
+ # 请求搜索设备
|
|
|
+ domain_name = SERVER_PREFIX_EU if region_code == 'EU' else SERVER_PREFIX
|
|
|
+ auth_request_url = '{}/oalexa/discoveryuid'.format(domain_name)
|
|
|
requests_data = {'sid': 'admin', 'sst': 'admin', 'alexa_user_id': userID}
|
|
|
res = requests.post(url=auth_request_url, data=requests_data)
|
|
|
- res_json = res.json()
|
|
|
- logger.info('正式服务器响应: {}'.format(res_json))
|
|
|
-
|
|
|
- test_flag = False # 用来区分测试服务器,后面删掉
|
|
|
- # 添加测试服务器测试
|
|
|
- if res_json['result_code'] != 0:
|
|
|
- auth_request_url = '{}/oalexa/discoveryuid'.format(SERVER_PREFIX_TEST)
|
|
|
- res = requests.post(url=auth_request_url, data=requests_data)
|
|
|
- res_json = res.json()
|
|
|
- test_flag = True
|
|
|
+ if res.status_code != 200:
|
|
|
+ return response.json(500, res={'msg': 'discover device error'})
|
|
|
|
|
|
- logger.info('请求服务器url: {}'.format(auth_request_url))
|
|
|
- logger.info('服务器响应: {}'.format(res_json))
|
|
|
+ res_json = res.json()
|
|
|
+ logger.info('{}服务器搜索设备响应:{}'.format(region_code, res_json))
|
|
|
|
|
|
if res_json['result_code'] != 0:
|
|
|
- return response.json(500, res={'msg': '请求业务服务器接口result_code不为0'})
|
|
|
+ return response.json(500, res={'msg': 'discover device error'})
|
|
|
|
|
|
uid_arr = res_json['result']['uid_arr']
|
|
|
rtko = tkObject(rank=1)
|
|
@@ -493,30 +487,23 @@ class oa2DiscoveryDevice(TemplateView):
|
|
|
for uid_a in uid_arr:
|
|
|
uid = uid_a['uid']
|
|
|
nick = uid_a['nick']
|
|
|
-
|
|
|
rtsp_url = rtko.encrypt(data=uid)
|
|
|
- region = 'EU' if uid_a['region'] == 'EU' else 'US'
|
|
|
-
|
|
|
- if test_flag:
|
|
|
- multi_channel = uid_a['multi_channel']
|
|
|
- if multi_channel:
|
|
|
- # 多通道设备: uid_通道号
|
|
|
- uid += '_' + str(uid_a['channel'])
|
|
|
|
|
|
try:
|
|
|
uid_rtsp_qs = UidRtspModel.objects.get(uid=uid)
|
|
|
except UidRtspModel.DoesNotExist:
|
|
|
- uid_rtsp_qs = UidRtspModel.objects.create(user_id=userID, uid=uid, nick=nick, region=region,
|
|
|
+ uid_rtsp_qs = UidRtspModel.objects.create(user_id=userID, uid=uid, nick=nick, region=region_code,
|
|
|
password=uid_a['password'],
|
|
|
rtsp_url=rtsp_url, addTime=now_time, updTime=now_time)
|
|
|
else:
|
|
|
uid_rtsp_qs.nick = nick
|
|
|
- uid_rtsp_qs.region = region
|
|
|
+ uid_rtsp_qs.region = region_code
|
|
|
uid_rtsp_qs.password = uid_a['password']
|
|
|
uid_rtsp_qs.save()
|
|
|
uid_rtsp_id_list.append(uid_rtsp_qs.id)
|
|
|
- RESP_SERVER_DOMAIN = RESP_SERVER_DOMAIN_DATA[region]
|
|
|
- rtsp_uri = '{}://{}:443/{}'.format(RTSP_PREFIX, RESP_SERVER_DOMAIN, rtsp_url)
|
|
|
+
|
|
|
+ rtsp_domain = RESP_SERVER_DOMAIN_DATA[region_code]
|
|
|
+ rtsp_uri = '{}://{}:443/{}'.format(RTSP_PREFIX, rtsp_domain, rtsp_url)
|
|
|
ur_data = {
|
|
|
'uri': rtsp_uri,
|
|
|
'endpointId': uid,
|