#ifndef DomoEspManagerDef #define DomoEspManagerDef 1 #include #ifndef ESP32_DEF #include #endif #ifdef ESP32_DEF #include #endif #include "utiles.h" #include "DomoEspApiConexion.h" class DomoEspConfig; class IDomoEspLisener { public: void inicia(); void loop(); virtual void OnMqtt(char* topic, char* payload); virtual bool SubscribeMqtt(char *topic); }; class DomoEspManager: public MqttReceiver, public IMqttManager, public ISensorManager { WifiManager wifi; DomoEspConfig* conf; WiFiClient espClient; PubSubClient clienteMqtt; MqttManager mqtt; #ifndef ESP32_DEF DomoEspApiConexion api; #endif DomoEspSensorReceiver* sensores[MAXSENS]; int n; int tiempo; bool suscrito; Ctimer timer; Ctimer tNoConexion; Ctimer tNomqtt; public: DomoEspManager(); //funcion inicial void SetTimeRefres(int seg); void inicia(DomoEspConfig* cnf); void loop(); //funciones auxiliares virtual void OnMqtt(char* topic, char* payload); virtual void SubscribeMqtt(PubSubClient *client_mqtt); virtual void MqttSend(char* topic, char* payload); virtual void MqttSubs(char* topic); virtual void Add(DomoEspSensorReceiver* sensor); }; #endif