#include #include #include #include #include const char* ssid = "ESP8266"; const char* password = "password"; const char* host = "192.168.4.3"; ESP8266WebServer server(80); const int Led = 14; void setup() { pinMode(Led, OUTPUT); Serial.begin(115200); WiFi.begin(ssid, password); Serial.println(""); digitalWrite(Led, LOW); // Wait for connection while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.print("Connected to "); Serial.println(ssid); Serial.print("IP address: "); Serial.println(WiFi.localIP()); digitalWrite(Led, HIGH); if (MDNS.begin("esp8266")) { Serial.println("MDNS responder started"); } } void loop() { if(WiFi.status() != WL_CONNECTED){ digitalWrite(Led, LOW); Serial.println("Trying to reconnect !"); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.println("Connected !"); }else{ if(digitalRead(Led)==LOW){ digitalWrite(Led, HIGH); } WiFiClient client; const int httpPort = 80; if (!client.connect(host, httpPort)) { Serial.println("connection failed"); digitalWrite(Led, LOW); return; } String urlTemp = "/temp"; Serial.print("Requesting URL: "); client.print(String("GET ") + urlTemp + " HTTP/1.1\r\n" + "Host: " + host + "\r\n" + "Connection: close\r\n\r\n"); String json = ""; boolean httpBody = false; while (client.available()) { String line = client.readStringUntil('\r'); Serial.print(line); if (!httpBody && line.charAt(1) == '{') { httpBody = true; } if (httpBody) { json += line; } } StaticJsonBuffer<200> jsonBuffer; Serial.println("Got data:"); Serial.println(json); JsonObject& root = jsonBuffer.parseObject(json); String temp = root["temperature"]; String hum = root["humidity"]; Serial.println("Temperature :"+temp); Serial.println("Humidity :"+hum); delay(5000); } }