|
@@ -17,6 +17,7 @@ from Service.CommonService import CommonService
|
|
|
from Service.EquipmentInfoService import EquipmentInfoService
|
|
|
from Service.HuaweiPushService.HuaweiPushService import HuaweiPushObject
|
|
|
from Service.PushService import PushObject
|
|
|
+
|
|
|
LOGGER = logging.getLogger('info')
|
|
|
|
|
|
|
|
@@ -37,7 +38,7 @@ class GatewayView(View):
|
|
|
return self.gateway_push(request_dict, response)
|
|
|
elif operation == 'sceneLogPush': # 场景日志推送
|
|
|
return self.scene_log_push(request_dict, response)
|
|
|
- elif operation == 'socket-push': # 插座推送
|
|
|
+ elif operation == 'socketPush': # 插座推送
|
|
|
return self.socket_msg_push(request_dict, response)
|
|
|
else:
|
|
|
return response.json(414)
|
|
@@ -299,7 +300,27 @@ class GatewayView(View):
|
|
|
|
|
|
@classmethod
|
|
|
def socket_msg_push(cls, request_dict, response):
|
|
|
- event_type = request_dict.get('type', None)
|
|
|
- status = request_dict.get('status', None)
|
|
|
- LOGGER.info('已订阅成功接收:事件类型{},状态:{}'.format(event_type, status))
|
|
|
- return response.json(0)
|
|
|
+ """
|
|
|
+ 智能插座开关状态推送
|
|
|
+ """
|
|
|
+ logger = logging.getLogger('info')
|
|
|
+ try:
|
|
|
+ serial_number = request_dict.get('serialNumber', None)
|
|
|
+ status = request_dict.get('status', None)
|
|
|
+ if not all([serial_number, status]):
|
|
|
+ return response.json(444)
|
|
|
+ SceneLog.objects.create()
|
|
|
+ now_time = int(time.time())
|
|
|
+ LOGGER.info('已订阅成功接收:事件类型{},状态:{}'.format(serial_number, status))
|
|
|
+ # 获取主用户设备id
|
|
|
+ device_qs = Device_Info.objects.filter(serial_number=serial_number, isShare=False).values('id')
|
|
|
+ log_dict = {
|
|
|
+ 'status': int(status),
|
|
|
+ 'device_id': device_qs[0]['id'],
|
|
|
+ 'created_time': now_time,
|
|
|
+ }
|
|
|
+ SceneLog.objects.create(**log_dict)
|
|
|
+ return response.json(0)
|
|
|
+ except Exception as e:
|
|
|
+ logger.info('---插座开关日志推送接口异常--- {}'.format(repr(e)))
|
|
|
+ return response.json(500, repr(e))
|