|
@@ -13,15 +13,17 @@ class Record(object):
|
|
|
def topic(self, key):
|
|
|
array = key.split('/')
|
|
|
slen = len(array)
|
|
|
- if len >= 4:
|
|
|
+ if slen >= 4:
|
|
|
return {'method':array[0], 'type':array[1], 'parent':array[2], 'child':array[3]}
|
|
|
else:
|
|
|
return {'method':array[0], 'type':array[1], 'parent':array[2], 'child':array[2]}
|
|
|
|
|
|
def push(self, key, value):
|
|
|
+ value = value.replace("b'", '')
|
|
|
+ value = value.replace("'", '')
|
|
|
config = self.topic(key)
|
|
|
method = 'record_' + config['method']
|
|
|
- cls = Demeter.getClass(method, 'service.')
|
|
|
+ cls = Demeter.service(method, 'mqtt')
|
|
|
state = False
|
|
|
if config['method'] != 'pic':
|
|
|
if '{' in value:
|
|
@@ -30,9 +32,9 @@ class Record(object):
|
|
|
state = True
|
|
|
for k,v in value.items():
|
|
|
config['child'] = k
|
|
|
- cls().handle(self, config, v)
|
|
|
+ cls.handle(self, config, v)
|
|
|
if state == False:
|
|
|
- cls().handle(self, config, value)
|
|
|
+ cls.handle(self, config, value)
|
|
|
|
|
|
def save(self, config, value, name='', device_type=None):
|
|
|
Demeter.service('device').save(config,value, name, device_type)
|