/**
   ESP32 + DHT22 Example for Wokwi
   
   https://wokwi.com/arduino/projects/322410731508073042
*/
#include <DHTesp.h>
#include <WiFi.h>
#include <HTTPClient.h>
const int DHT_PIN = 15;
DHTesp dhtSensor; // Classe de leitura sensor DHT
String HOST_NAME = "http://127.0.0.1:8080/esp32io"; // change to your PC's IP address
String PATH_NAME   = "/insert_temp.php";
String queryString = "?temperature=30.5";
String url = HOST_NAME + PATH_NAME + queryString;
void setup() {
  Serial.begin(115200);
  wifi();
  dhtSensor.setup(DHT_PIN, DHTesp::DHT22);
  Serial.println("URL: " + url);
  HTTPClient http;
  http.begin(url); //HTTP
  int httpCode = http.GET();
  // httpCode will be negative on error
  if(httpCode > 0) {
    // file found at server
    if(httpCode == HTTP_CODE_OK) {
      String payload = http.getString();
      Serial.println(payload);
    } else {
      // HTTP header has been send and Server response header has been handled
      Serial.printf("[HTTP] GET... code: %d\n", httpCode);
    }
  } else {
    Serial.printf("[HTTP] GET... failed, error: %s\n", http.errorToString(httpCode).c_str());
  }
  http.end();
}
 void loop() {
     sensorData();
 }
// 01 - Conectar ao Wifi
void wifi(){
  Serial.print("Conectando-se ao Wi-Fi");
  WiFi.begin("Wokwi-GUEST", "", 6);
  while (WiFi.status() != WL_CONNECTED) {
    delay(100);
    Serial.print(".");
  }
  Serial.println(" Conectado!");
}
// 02 - Capturar Temperatura e Humidade
void sensorData(){
  TempAndHumidity  data = dhtSensor.getTempAndHumidity();
  Serial.println("Temp: " + String(data.temperature, 2) + "°C");
  Serial.println("Humidity: " + String(data.humidity, 1) + "%");
  Serial.println("---");
  delay(1000);
}