diff --git a/src/MqttProcessor.py b/src/MqttProcessor.py index 2b27bd2..7e9bbaf 100644 --- a/src/MqttProcessor.py +++ b/src/MqttProcessor.py @@ -34,7 +34,7 @@ class MqttProcessor(threading.Thread, AbstractNotificationReceiver): def __processUpdatedRegisters(self, force=False): self.logger.debug("MqttProcessor.__updateSubscriptions") - subscribeTopics = [ r.subscribeTopic for r in self.registers if r.subscribeTopic] + subscribeTopics = [ r.subscribeTopic for r in self.registers if hasattr(r,'subscribeTopic') and r.subscribeTopic] self.logger.debug("Topics: {0!s}".format(subscribeTopics)) for subscribeTopic in subscribeTopics: @@ -49,7 +49,7 @@ class MqttProcessor(threading.Thread, AbstractNotificationReceiver): self.client.unsubscribe(subscription) self.subscriptions.remove(subscription) - self.topicRegisterMap = { r.subscribeTopic: r for r in self.registers if r.subscribeTopic } + self.topicRegisterMap = { r.subscribeTopic: r for r in self.registers if hasattr(r,'subscribeTopic') and r.subscribeTopic } def receiveNotification(self, arg): self.logger.info("MqttProcessor:registersChanged") diff --git a/src/registers.pkl b/src/registers.pkl index af220a5..4e159cb 100644 Binary files a/src/registers.pkl and b/src/registers.pkl differ diff --git a/src/updateRegisterFile.py b/src/updateRegisterFile.py index 8ad9eef..2c4b7e8 100644 --- a/src/updateRegisterFile.py +++ b/src/updateRegisterFile.py @@ -13,7 +13,8 @@ newDatapoints = [] for dp in datapoints: ndp = type(dp)() for k,v in dp.__dict__.items(): - ndp.__dict__[k] = v + if k != 'logger': + ndp.__dict__[k] = v newDatapoints.append(ndp) RegisterDatapoint.checkRegisterList(newDatapoints, reset=True)