#include <WiFi.h>
#include <WiFiClientSecure.h>
#include <UniversalTelegramBot.h>
#include <DHTesp.h>
DHTesp dhtSensor;
TempAndHumidity data;
const int DHT_PIN=25;
#define WIFI_SSID "Wokwi-GUEST"
#define WIFI_PASSWORD ""
//
#define BOTtoken "6614026079:AAGXX160a9k98CYInN_EZgq9oJLcEXOYf64"
//#define BOTtoken "950788494:AAH4VZFifS0oPGbhsIT0tiirSjEIgSlV1y0"
// your Bot Token (Get from Botfather)
#define CHAT_ID "7224603446"
#define CHAT_ID2 "7224603446"
WiFiClientSecure client;
UniversalTelegramBot bot(BOTtoken, client);
// Checks for new messages every 1 second.
//int botRequestDelay = 1000;
//unsigned long lastTimeBotRan;
String getReadings(){
data=dhtSensor.getTempAndHumidity();
String message = "Suhu: " + String(data.temperature) + " ºC \n";
message += "Kelembapan: " + String (data.humidity) + " % \n";
return message;
}
void setup(void) {
Serial.begin(115200);
dhtSensor.setup(DHT_PIN,DHTesp::DHT22);
// Connect to Wi-Fi
WiFi.mode(WIFI_STA);
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print("Connecting to WiFi ");
Serial.print(WIFI_SSID);
// Wait for connection
while (WiFi.status() != WL_CONNECTED) {
delay(100);
Serial.print(".");
}
Serial.println(" Connected!");
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
#ifdef ESP32
client.setCACert(TELEGRAM_CERTIFICATE_ROOT); // Add root certificate for api.telegram.org
#endif
// Print ESP32 Local IP Address
Serial.println(WiFi.localIP());
}
void loop()
{
String readings = getReadings();
bot.sendMessage(CHAT_ID2, readings, "");
bot.sendMessage(CHAT_ID, readings, "");
delay(6000); // every 5 seconds sends
}