|
@@ -202,6 +202,7 @@ class GatewayDeviceView(View):
|
|
|
ieee_addr_list = gateway_qs.values_list('ieee_addr', flat=True)
|
|
|
topic_name = SUB_DEVICE_TOPIC.format(serial_number)
|
|
|
for ieee_addr in ieee_addr_list:
|
|
|
+ # 删除设备
|
|
|
msg = {
|
|
|
'zigbee': 'delete',
|
|
|
'ieee': ieee_addr
|
|
@@ -212,6 +213,16 @@ class GatewayDeviceView(View):
|
|
|
except AssertionError:
|
|
|
return response.json(10044)
|
|
|
time.sleep(0.3)
|
|
|
+ # 重置设备
|
|
|
+ msg = {
|
|
|
+ 'zigbee': 'recover',
|
|
|
+ }
|
|
|
+ success = CommonService.req_publish_mqtt_msg(serial_number, topic_name, msg)
|
|
|
+ try:
|
|
|
+ assert success
|
|
|
+ except AssertionError:
|
|
|
+ return response.json(10044)
|
|
|
+ time.sleep(0.3)
|
|
|
|
|
|
else:
|
|
|
smart_scene_qs = SmartScene.objects.filter(device_id=device_id)
|
|
@@ -250,6 +261,7 @@ class GatewayDeviceView(View):
|
|
|
ieee_addr_list = gateway_sub_device_qs.values_list('ieee_addr', flat=True)
|
|
|
topic_name = SUB_DEVICE_TOPIC.format(serial_number)
|
|
|
for ieee_addr in ieee_addr_list:
|
|
|
+ # 删除设备
|
|
|
msg = {
|
|
|
'zigbee': 'delete',
|
|
|
'ieee': ieee_addr
|
|
@@ -260,7 +272,16 @@ class GatewayDeviceView(View):
|
|
|
except AssertionError:
|
|
|
return response.json(10044)
|
|
|
time.sleep(0.3)
|
|
|
-
|
|
|
+ # 重置设备
|
|
|
+ msg = {
|
|
|
+ 'zigbee': 'recover',
|
|
|
+ }
|
|
|
+ success = CommonService.req_publish_mqtt_msg(serial_number, topic_name, msg)
|
|
|
+ try:
|
|
|
+ assert success
|
|
|
+ except AssertionError:
|
|
|
+ return response.json(10044)
|
|
|
+ time.sleep(0.3)
|
|
|
# 删除场景,下发MQTT通知设备
|
|
|
smart_scene_qs = SmartScene.objects.filter(sub_device_id__in=sub_id_list)
|
|
|
if smart_scene_qs.exists():
|