|
@@ -380,15 +380,17 @@ class SmartSceneView(View):
|
|
|
if scene_data:
|
|
|
smart_scene_qs.scene_data = json.dumps(scene_data)
|
|
|
smart_scene_qs.save()
|
|
|
- # 发布MQTT消息通知网关设备
|
|
|
- thing_name = serial_number
|
|
|
- topic_name = SMART_SCENE_TOPIC.format(serial_number)
|
|
|
|
|
|
- success = CommonService.req_publish_mqtt_msg(thing_name, topic_name, msg)
|
|
|
- try:
|
|
|
- assert success
|
|
|
- except AssertionError:
|
|
|
- return response.json(10044)
|
|
|
+ # 设备任务列表不为空,发布MQTT消息通知网关设备
|
|
|
+ if msg['task']:
|
|
|
+ thing_name = serial_number
|
|
|
+ topic_name = SMART_SCENE_TOPIC.format(serial_number)
|
|
|
+
|
|
|
+ success = CommonService.req_publish_mqtt_msg(thing_name, topic_name, msg)
|
|
|
+ try:
|
|
|
+ assert success
|
|
|
+ except AssertionError:
|
|
|
+ return response.json(10044)
|
|
|
|
|
|
return response.json(0)
|
|
|
except Exception as e:
|
|
@@ -751,14 +753,15 @@ class SmartSceneView(View):
|
|
|
}
|
|
|
msg['time'] = time_dict
|
|
|
|
|
|
- # 通过mqtt发送设备数据
|
|
|
- thing_name = serial_number
|
|
|
- topic_name = SMART_SCENE_TOPIC.format(serial_number)
|
|
|
- success = CommonService.req_publish_mqtt_msg(thing_name, topic_name, msg)
|
|
|
- try:
|
|
|
- assert success
|
|
|
- except AssertionError:
|
|
|
- return response.json(10044)
|
|
|
+ # 设备任务列表不为空,发布MQTT消息通知网关设备
|
|
|
+ if msg['task']:
|
|
|
+ thing_name = serial_number
|
|
|
+ topic_name = SMART_SCENE_TOPIC.format(serial_number)
|
|
|
+ success = CommonService.req_publish_mqtt_msg(thing_name, topic_name, msg)
|
|
|
+ try:
|
|
|
+ assert success
|
|
|
+ except AssertionError:
|
|
|
+ return response.json(10044)
|
|
|
|
|
|
res['effectiveTime'] = effective_time
|
|
|
return response.json(0, res)
|
|
@@ -1175,7 +1178,7 @@ class SmartSceneView(View):
|
|
|
condition['time_dict'] = time_dict
|
|
|
else:
|
|
|
device_type = conditions_dict['sensor']['device_type']
|
|
|
- event_type = conditions_dict['sensor']['eventValues']['event_type']
|
|
|
+ event_type = conditions_dict['sensor']['eventValues'][0]['event_type']
|
|
|
condition['event_type'] = event_type
|
|
|
# 温湿度传感器,取值
|
|
|
if device_type == SENSOR_TYPE['tem_hum_sensor']:
|