Refactored MQTT payload handling into separate classes

This commit is contained in:
Gunnar Skjold
2021-01-17 20:11:04 +01:00
parent 53573184f3
commit 33070af111
23 changed files with 803 additions and 502 deletions

26
src/mqtt/AmsMqttHandler.h Normal file
View File

@@ -0,0 +1,26 @@
#ifndef _AMSMQTTHANDLER_H
#define _AMSMQTTHANDLER_H
#include "Arduino.h"
#include <MQTT.h>
#include "AmsData.h"
#include "AmsConfiguration.h"
#include "HwTools.h"
#include "entsoe/EntsoeApi.h"
class AmsMqttHandler {
public:
AmsMqttHandler(MQTTClient* mqtt) {
this->mqtt = mqtt;
};
virtual bool publish(AmsData* data, AmsData* previousState);
virtual bool publishTemperatures(AmsConfiguration*, HwTools*);
virtual bool publishPrices(EntsoeApi* eapi);
virtual bool publishSystem(HwTools*);
protected:
MQTTClient* mqtt;
};
#endif