Adafruit_MTT_Clientmqtt(&client,server,port,user,key);Adafruit_MTT_Subscribetoggle=Adafruit_MTT_Subscribe(&mqtt,user"/feeds/led");voidmqtt_connect(){if(mqtt.connected()){return;}Serial.println("Connecting to MQTT...");intretries=3,status;while((status=mqtt.connect())!=0){Serial.println(mqtt.connectErrorString(status));Serial.println("Retrying after 5sec");delay(5000);retries--;if(retries==0){while(1);// reset NodeMCU}}Serial.println("MQTT connected");mqtt.subscribe(&toggle);}voidsetup(){Serial.begin(9600);pinMode(D2,OUTPUT);Serial.println("Connecting to WiFi...");WiFi.begin(ssid,pass);while(WiFi.status()!=WL_CONNECTED){Serial.print(".");delay(1000);}Serial.println("WiFi connected!")}voidloop(){mqtt_connect();Adafruit_MTT_Subscribe*subscription;while(subscription=mqtt.readSubscription(5000)){if(subscription==&toggle){char*data=(char*)toggle.lastread;Serial.println(data);}}}
Adafruit_MTT_Clientmqtt(&client,server,port,user,key);Adafruit_MTT_Publishgauge=Adafruit_MTT_Publish(&mqtt,user"/feeds/sensor");intdata;voidmqtt_connect(){if(mqtt.connected()){return;}Serial.println("Connecting to MQTT...");intretries=3,status;while((status=mqtt.connect())!=0){Serial.println(mqtt.connectErrorString(status));Serial.println("Retrying after 5sec");delay(5000);retries--;if(retries==0){while(1);// reset NodeMCU}}Serial.println("MQTT connected");}voidsetup(){Serial.begin(9600);Serial.println("Connecting to WiFi...");WiFi.begin(ssid,pass);while(WiFi.status()!=WL_CONNECTED){Serial.print(".");delay(1000);}Serial.println("WiFi connected!")}voidloop(){mqtt_connect();data=100;if(gauge.publish(data)){Serial.println("Published successful: "+String(data));}else{Serial.println("Published failed: "+String(data));}delay(5000);}