#ifndef SensorBuzzerDef #define SensorBuzzerDef 1 #include "Utiles.h" //sensor virtual class SensorBuzzer: public DomoEspSensorReceiver { int val; SonidoBuzzer buz; int pin; public: SensorBuzzer() { val=0; topic[0]=0; } void setMelodia(int i, char* melodia) { buz.Set(i, melodia); } void set(char* topic_id, int _pin) { val=0; strcpy(topic, topic_id); pin=_pin; } virtual float getVal() { return (float)val; } virtual void inicia() { pinMode(pin, OUTPUT); digitalWrite(pin, 1); } virtual void SubscribeMqtt(IMqttManager* man){ //char buffer_t[MAXTOPICVAR]; sprintf(buffer_t, "%s/set",topic); man->MqttSubs(buffer_t); sprintf(buffer_t, "%s/pul",topic); man->MqttSubs(buffer_t); } virtual void OnMqtt(IMqttManager * man, char* _topic, char* payload, int tipo) { if((tipo!=Topic::SET) && (tipo!=Topic::PUL)) return; if(!strcmp(_topic, topic)) { if(tipo==Topic::PUL) { //reproduce melodia val=atoi(payload); if(val>=0 && val=0 && val