#include <DHT.h>
#include <WiFi.h>
#include <HTTPClient.h>
#include <ArduinoJson.h>

// กำหนดพอร์ตและประเภทของเซ็นเซอร์ DHT
#define DHTPIN1 15
#define DHTPIN2 14
#define DHTTYPE DHT22
DHT dht1(DHTPIN1, DHTTYPE);
DHT dht2(DHTPIN2, DHTTYPE);

// กำหนดข้อมูล Wi-Fi
const char* ssid = "Wokwi-GUEST";
const char* password = "";

// Google Sheets Web App URL (ใช้ URL ที่ได้จากการสร้าง Web App ใน Google Script)
const String googleScriptURL = "https://script.google.com/macros/s/AKfycbz6M9esJ3_OBrRmWkI3OrPavI2TwrcW5ANZflCGwsEuwVB3p7zOR_nDlRFjSCQk8omb/exec";

void setup() {
  // เปิด Serial Monitor
  Serial.begin(115200);
  Serial.println("Connecting to WiFi...");
  
  // เชื่อมต่อ Wi-Fi
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(1000);
    Serial.println("Connecting to WiFi...");
  }
  Serial.println("Connected to WiFi!");

  // เริ่มเซ็นเซอร์ DHT
  dht1.begin();
  dht2.begin();
}

void loop() {
  // ดึงข้อมูลจาก DHT1 และ DHT2
  float t1 = dht1.readTemperature();
  float t2 = dht2.readTemperature();
  
  // เช็คว่าอ่านข้อมูลได้หรือไม่
  if (isnan(t1) || isnan(t2) ) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }

  // แสดงข้อมูลใน Serial Monitor
  Serial.print("DHT1: ");
  Serial.print(t1);
  Serial.print(" °C, ");

  Serial.print("DHT2: ");
  Serial.print(t2);
  Serial.print(" °C, ");

  // สร้าง URL ที่จะส่งข้อมูล
  String url = googleScriptURL;
  url += "?temperature1=" + String(t1);
  url += "&temperature2=" + String(t2);

  // ส่งข้อมูลผ่าน HTTP GET request
  HTTPClient http;
  http.begin(url);  // เริ่มการเชื่อมต่อ
  int httpCode = http.GET();  // ส่งคำขอ GET

  // เช็คสถานะการตอบรับจาก Google Script
  if (httpCode > 0) {
    Serial.println("Data sent successfully!");
  } else {
    Serial.println("Error in sending data!");
  }
  http.end();  // ปิดการเชื่อมต่อ

  // รอ 10 วินาทีก่อนส่งข้อมูลใหม่
  delay(10000);
}