|
@@ -23,6 +23,8 @@ from model.models import AlexaAuthModel
|
|
|
from object.RedisObject import RedisObject
|
|
|
from django.utils.decorators import method_decorator
|
|
|
from django.views.decorators.csrf import csrf_exempt
|
|
|
+from azoauth.config import *
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
@@ -62,6 +64,7 @@ class deviceStatus(TemplateView):
|
|
|
access_token = request_dict.get("access_token", '')
|
|
|
refresh_token = request_dict.get("refresh_token", '')
|
|
|
token = request_dict.get("token", '')
|
|
|
+ alexa_region = request_dict.get("region", '')
|
|
|
logger = logging.getLogger('django')
|
|
|
logger.info('login-------------begin---token')
|
|
|
logger.info(access_token)
|
|
@@ -75,14 +78,17 @@ class deviceStatus(TemplateView):
|
|
|
token = token,
|
|
|
expiresTime = nowTime + 3200,
|
|
|
addTime=nowTime,
|
|
|
- updTime=nowTime)
|
|
|
+ updTime=nowTime,
|
|
|
+ alexa_region=alexa_region,
|
|
|
+ )
|
|
|
else:
|
|
|
alexAuth.update(
|
|
|
access_token = access_token,
|
|
|
refresh_token = refresh_token,
|
|
|
expiresTime = nowTime + 3200,
|
|
|
token = token,
|
|
|
- updTime=nowTime
|
|
|
+ updTime=nowTime,
|
|
|
+ alexa_region=alexa_region,
|
|
|
)
|
|
|
return JsonResponse({'code':200,'msg':'success'})
|
|
|
|
|
@@ -96,14 +102,11 @@ class deviceStatus(TemplateView):
|
|
|
uid_nick = request_dict.get("uid_nick", '')
|
|
|
encrypt_pwd = request_dict.get("password", '')
|
|
|
region = request_dict.get("region", 'EN')
|
|
|
-
|
|
|
-
|
|
|
if UID == '' or userID == '' or uid_nick == '' or encrypt_pwd == '':
|
|
|
return JsonResponse({'code':101,'msg':'fail'})
|
|
|
|
|
|
commonService = CommonService()
|
|
|
password = commonService.decode_pwd(encrypt_pwd)
|
|
|
-
|
|
|
alexAuth = AlexaAuthModel.objects.filter(userID=userID)
|
|
|
if not alexAuth.exists():
|
|
|
logger.info('not found user')
|
|
@@ -114,6 +117,7 @@ class deviceStatus(TemplateView):
|
|
|
now_time = int(time.time())
|
|
|
access_token = info[0]['access_token']
|
|
|
refresh_token = info[0]['refresh_token']
|
|
|
+ alexa_region = info[0]['alexa_region']
|
|
|
|
|
|
if now_time > expiresTime:
|
|
|
logger.info(refresh_token)
|
|
@@ -148,7 +152,7 @@ class deviceStatus(TemplateView):
|
|
|
uid_rtsp_qs.region = 'EN'
|
|
|
uid_rtsp_qs.save()
|
|
|
|
|
|
- api_uri = 'https://api.amazonalexa.com/v3/events'
|
|
|
+ api_uri = ALEXA_EVENT_API[alexa_region]
|
|
|
messageId = str(uuid.uuid4()).strip()
|
|
|
bearer_access_token = "Bearer {access_token}".format(access_token=access_token)
|
|
|
headers = {"content-type": "application/json", "Authorization": bearer_access_token}
|
|
@@ -223,6 +227,7 @@ class deviceStatus(TemplateView):
|
|
|
refresh_token = info[0]['refresh_token']
|
|
|
now_time = int(time.time())
|
|
|
access_token = info[0]['access_token']
|
|
|
+ alexa_region = info[0]['alexa_region']
|
|
|
|
|
|
if now_time > expiresTime:
|
|
|
res = self.getRefreshToken(refresh_token)
|
|
@@ -266,7 +271,7 @@ class deviceStatus(TemplateView):
|
|
|
}
|
|
|
# return JsonResponse({"res": headers})
|
|
|
|
|
|
- api_uri = 'https://api.amazonalexa.com/v3/events'
|
|
|
+ api_uri = ALEXA_EVENT_API[alexa_region]
|
|
|
response = requests.post(api_uri, json=payload, headers=headers)
|
|
|
logger.info('--------delete_response')
|
|
|
logger.info(response)
|