|
@@ -17,11 +17,11 @@
|
|
|
# shadow.dvema.com
|
|
|
# 设备影子更新
|
|
|
import logging
|
|
|
-import threading
|
|
|
import time
|
|
|
-from ratelimit.decorators import ratelimit
|
|
|
+
|
|
|
import requests
|
|
|
from django.http import JsonResponse
|
|
|
+from ratelimit.decorators import ratelimit
|
|
|
|
|
|
from AnsjerPush.config import SERVER_TYPE
|
|
|
from Model.models import Device_Info, UidSetModel, UID_Preview, VoicePromptModel, UID_Bucket, UidChannelSetModel, \
|
|
@@ -61,32 +61,19 @@ def generate_utk(request):
|
|
|
@ratelimit(key='ip', rate='1/10m', block=True)
|
|
|
def update_device_shadow(request):
|
|
|
request.encoding = 'utf-8'
|
|
|
- response = ResponseObject()
|
|
|
if request.method == 'POST':
|
|
|
request_dict = request.POST
|
|
|
elif request.method == 'GET':
|
|
|
request_dict = request.GET
|
|
|
else:
|
|
|
- return response.json(444)
|
|
|
- logger = logging.getLogger('info')
|
|
|
- try:
|
|
|
- asy = threading.Thread(target=async_device_shadow,
|
|
|
- args=(request_dict, request))
|
|
|
- asy.start()
|
|
|
return JsonResponse(status=200, data={'code': 0, 'msg': 'success', 'data': {}})
|
|
|
- except Exception as e:
|
|
|
- logger.info('更新设备影子异常: {}'.format(repr(e)))
|
|
|
- return JsonResponse(status=200, data={'code': 0, 'update_shadow_error': repr(e)})
|
|
|
-
|
|
|
-
|
|
|
-def async_device_shadow(request_dict, request):
|
|
|
+ logger = logging.getLogger('info')
|
|
|
try:
|
|
|
- logger = logging.getLogger('info')
|
|
|
etk = request_dict.get('etk', None)
|
|
|
eto = ETkObject(etk)
|
|
|
uid = eto.uid
|
|
|
if not uid:
|
|
|
- return False
|
|
|
+ return JsonResponse(status=200, data={'code': 0, 'msg': 'success', 'data': {}})
|
|
|
logger.info('使用配置: {}'.format(SERVER_TYPE))
|
|
|
logger.info('data: {}'.format(request_dict.dict()))
|
|
|
|
|
@@ -201,6 +188,8 @@ def async_device_shadow(request_dict, request):
|
|
|
qs_dict['addTime'] = nowTime
|
|
|
UidSetModel.objects.create(**qs_dict)
|
|
|
logger.info('***设备影子保存成功{}'.format(uid))
|
|
|
+ return JsonResponse(status=200, data={'code': 0, 'msg': 'success', 'data': {}})
|
|
|
except Exception as e:
|
|
|
- print(repr(e))
|
|
|
print('异步保存设备影子信息报错,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
|
|
|
+ logger.info('更新设备影子异常: {}'.format(repr(e)))
|
|
|
+ return JsonResponse(status=200, data={'code': 0, 'update_shadow_error': repr(e)})
|