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

Added 86sw2, properties & group_id

git-svn-id: https://redmine.imt-atlantique.fr/svn/xaal/code/Python/trunk@2041 b32b6428-25c9-4566-ad07-03861ab6144f
parent 795e2199
No related branches found
No related tags found
No related merge requests found
......@@ -15,6 +15,7 @@ class AqaraDev(object):
self.devices = []
logger.info('New AqaraDevice %s %s' % (model,sid))
self.setup()
self.init_properties()
def setup(self):
logger.warning('Please overide setup()')
......@@ -25,6 +26,8 @@ class AqaraDev(object):
dev.product_id = self.model
dev.hw_id = self.sid
dev.info = 'Aqara device: %s' % self.sid
if len(self.devices) > 1:
dev.group_id = self.base_addr + 'ff'
def parse(self,pkt):
cmd = pkt.get('cmd',None)
......@@ -56,6 +59,24 @@ class Switch(AqaraDev):
self.devices[0].send_notification(status)
class Switch86(AqaraDev):
def setup(self):
btn1 = Device('button.basic',self.base_addr+'00')
btn2 = Device('button.basic',self.base_addr+'01')
btn3 = Device('button.basic',self.base_addr+'02')
self.devices = self.devices + [btn1,btn2,btn3]
def report(self,data):
chans = ['channel_0','channel_1','dual_channel']
idx = 0
for k in chans:
r = data.get(k,None)
if r:
self.devices[idx].send_notification(r)
idx = idx + 1
class Gateway(AqaraDev):
def setup(self):
pass
......
......@@ -13,8 +13,10 @@ logger = tools.get_logger(PACKAGE_NAME,'DEBUG')
def find_device_class(model):
if model in ['sensor_switch.aq3','sensor_switch.aq2','switch']:
if model in ['sensor_switch.aq3','sensor_switch.aq2','switch',]:
return devices.Switch
if model == '86sw2':
return devices.Switch86
if model == 'gateway':
return devices.Gateway
if model == 'weather.v1':
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment