Skip to content
Snippets Groups Projects
Commit 95ff3a89 authored by jkerdreu's avatar jkerdreu
Browse files

UUID() + 1

git-svn-id: https://redmine.imt-atlantique.fr/svn/xaal/code/Python/branches/0.7@2315 b32b6428-25c9-4566-ad07-03861ab6144f
parent 743654c5
No related branches found
No related tags found
No related merge requests found
......@@ -34,8 +34,8 @@ class AqaraDev(object):
dev.product_id = self.model
dev.hw_id = self.sid
dev.info = 'Aqara device: %s / %s' % (self.model,self.sid)
#if len(self.devices) > 1:
# dev.group_id = tools.get_address(self.base_addr + 'ff')
if len(self.devices) > 1:
dev.group_id = self.base_addr + 0xff
def parse(self,pkt):
cmd = pkt.get('cmd',None)
......@@ -64,7 +64,7 @@ class AqaraDev(object):
class Switch(AqaraDev):
def setup(self):
dev = Device('button.basic',tools.get_address(self.base_addr+'00'))
dev = Device('button.basic',self.base_addr)
self.devices.append(dev)
def on_report(self,data):
......@@ -75,9 +75,9 @@ class Switch(AqaraDev):
class Switch86sw2(AqaraDev):
def setup(self):
btn1 = Device('button.basic',tools.get_address(self.base_addr+'00'))
btn2 = Device('button.basic',tools.get_address(self.base_addr+'01'))
btn3 = Device('button.basic',tools.get_address(self.base_addr+'02'))
btn1 = Device('button.basic',self.base_addr)
btn2 = Device('button.basic',self.base_addr+1)
btn3 = Device('button.basic',self.base_addr+2)
self.devices = self.devices + [btn1,btn2,btn3]
def on_report(self,data):
......@@ -93,9 +93,9 @@ class Switch86sw2(AqaraDev):
class Weather(AqaraDev):
def setup(self):
self.devices.append(devices.thermometer(tools.get_address(self.base_addr+'00')))
self.devices.append(devices.hygrometer(tools.get_address(self.base_addr+'01')))
self.devices.append(devices.barometer(tools.get_address(self.base_addr+'02')))
self.devices.append(devices.thermometer(self.base_addr))
self.devices.append(devices.hygrometer(self.base_addr+1))
self.devices.append(devices.barometer(self.base_addr+2))
def on_report(self,data):
val = data.get('temperature',None)
......@@ -108,8 +108,8 @@ class Weather(AqaraDev):
# MC 24/09/2019
class SensorHT(AqaraDev):
def setup(self):
self.devices.append(devices.thermometer(tools.get_address(self.base_addr+'00')))
self.devices.append(devices.hygrometer(tools.get_address(self.base_addr+'01')))
self.devices.append(devices.thermometer(self.base_addr))
self.devices.append(devices.hygrometer(self.base_addr+1))
def on_report(self,data):
val = data.get('temperature',None)
......@@ -120,7 +120,7 @@ class SensorHT(AqaraDev):
class Motion(AqaraDev):
def setup(self):
self.devices.append(devices.motion(tools.get_address(self.base_addr+'00')))
self.devices.append(devices.motion(self.base_addr))
def on_report(self,data):
val = data.get('status',None)
......@@ -133,7 +133,7 @@ class Motion(AqaraDev):
class Magnet(AqaraDev):
def setup(self):
dev = devices.door(tools.get_address(self.base_addr+'00'))
dev = devices.door(self.base_addr)
dev.unsupported_methods = ['open','close']
self.devices.append(dev)
......@@ -174,14 +174,14 @@ class Gateway(AqaraDev):
self._secret = None
self._blink_color = 0
self.connect()
lamp = devices.lamp_rgbw(tools.get_address(self.base_addr+'00'))
lamp = devices.lamp_rgbw(self.base_addr)
lamp.methods['on'] = self.lamp_on
lamp.methods['off'] = self.lamp_off
lamp.methods['rand'] = self.lamp_rand
lamp.methods['blink'] = self.lamp_blink
self.devices.append(lamp)
siren = Device('siren.sound',tools.get_address(self.base_addr+'01'))
siren = Device('siren.sound',self.base_addr + 1)
siren.methods['play'] = self.siren_play
siren.methods['stop'] = self.siren_stop
#siren.methods['debug'] = self.debug
......
......@@ -75,7 +75,8 @@ class GW(gevent.Greenlet):
elif sid in self.cfg['devices'].keys():
cfg = self.cfg['devices'][sid]
model_old = cfg.get('model',None)
base_addr = cfg.get('base_addr',None)
tmp = cfg.get('base_addr',None)
base_addr = tools.parse_uuid(tmp)
dev = None
if model != model_old:
logger.warn("Device %s wrong model" % sid)
......@@ -86,10 +87,10 @@ class GW(gevent.Greenlet):
return dev
# Still not found ? => new device
else:
base_addr = tools.get_random_uuid()[:-2]
base_addr = tools.get_random_uuid()
dev = self.add_device(sid,model,base_addr)
if dev:
cfg = {'base_addr' : base_addr,'model':model}
cfg = {'base_addr' : base_addr.str,'model':model}
self.cfg['devices'].update({sid:cfg})
return dev
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment