rabin 8 年之前
父节点
当前提交
2373097aca
共有 1 个文件被更改,包括 9 次插入2 次删除
  1. 9 2
      service/device.py

+ 9 - 2
service/device.py

@@ -49,7 +49,8 @@ class Device(object):
 				switch = 0
 				switch = 0
 			for v in value['devices']:
 			for v in value['devices']:
 				self.switch(v, switch)
 				self.switch(v, switch)
-	# 处理开关
+
+	# 处理开关-向设备发送请求
 	def switch(self, device_id, switch=1):
 	def switch(self, device_id, switch=1):
 		model = Demeter.model('device_info')
 		model = Demeter.model('device_info')
 		model.id = device_id
 		model.id = device_id
@@ -75,4 +76,10 @@ class Device(object):
 					pub = Pub()
 					pub = Pub()
 					key = 'update/' + type_info['key'] + '/' + gateway_info['hardware_id']  + '/' + info['hardware_id']
 					key = 'update/' + type_info['key'] + '/' + gateway_info['hardware_id']  + '/' + info['hardware_id']
 					value = switch
 					value = switch
-					pub.push(key, value, 2)
+					pub.push(key, value, qos=2, callback=self.switchAction, param={'id':info['id'], 'switch':switch})
+
+	# 处理开关-响应
+	def switchAction(self, param, client, userdata, mid):
+		model = Demeter.model('device_info')
+		model.id = param['id']
+		model.update(value=param['switch'])