#include <WiFi.h>
#include <WiFiClientSecure.h>
#include <UniversalTelegramBot.h>
#include <DHTesp.h>
// Inisialisasi sensor DHT
DHTesp dhtSensor;
TempAndHumidity data;
const int DHT_PIN = 25;
// Konfigurasi WiFi dan Telegram
#define WIFI_SSID "Wokwi-GUEST"
#define WIFI_PASSWORD ""
#define BOT_TOKEN "7677854373:AAH102vk3j4EJa6vG9dSA_7U3-YQDuGGHvY"
#define CHAT_ID "7233629919"
// Inisialisasi koneksi Telegram
WiFiClientSecure client;
UniversalTelegramBot bot(BOT_TOKEN, client);
// Fungsi membaca suhu dan kelembapan
String getReadings() {
data = dhtSensor.getTempAndHumidity();
String message = "Suhu: " + String(data.temperature) + " °C\n";
message += "Kelembapan: " + String(data.humidity) + " %\n";
return message;
}
void setup() {
Serial.begin(115200);
dhtSensor.setup(DHT_PIN, DHTesp::DHT22);
// Koneksi ke Wi-Fi
WiFi.mode(WIFI_STA);
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print("Connecting to WiFi ");
Serial.println(WIFI_SSID);
while (WiFi.status() != WL_CONNECTED) {
delay(100);
Serial.print(".");
}
Serial.println("\nConnected!");
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
#ifdef ESP32
client.setCACert(TELEGRAM_CERTIFICATE_ROOT);
#endif
// Tampilkan IP lokal
Serial.println(WiFi.localIP());
}
void loop() {
String readings = getReadings();
bot.sendMessage(CHAT_ID, readings, "");
delay(6000);
}