MqttDispatcherPy/ModbusParser.py
Wolfgang Hottgenroth c445edf5c2 config
2017-11-13 14:13:53 +00:00

29 lines
1.0 KiB
Python

import json
from logger import Logger
from AbstractParser import AbstractParser
from AbstractNextStage import AbstractNextStage
from TemperatureDatabasePreparer import TemperatureDatabasePreparer
class ModbusParser(AbstractParser, AbstractNextStage):
def __init__(self):
super(ModbusParser, self).__init__()
self.topic = "IoT/Measurement/ModbusHub"
def execute(self, data):
#Logger.log("ModbusParser %s %s" % (type(data), str(data)))
try:
j = json.loads(data['payload'])
if j['metadata']['Slave'] == 'Thermometer':
vv = []
v = TemperatureDatabasePreparer('Fridge', data['timestamp'],
{'temperature':j['data']['t1']})
vv.append(v)
v = TemperatureDatabasePreparer('Freezer', data['timestamp'],
{'temperature':j['data']['t2']})
vv.append(v)
self.executeNextStage(vv)
except Exception, e:
Logger.log("Exception in ModbusParser, %s" % (str(e)))