Advertisement
Hanafi112

iot

Jun 23rd, 2023
709
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.76 KB | Source Code | 0 0
  1. #include <WiFi.h>
  2. #include <UniversalTelegramBot.h>
  3.  
  4. // Konfigurasi WiFi
  5. const char* ssid = "nama_wifi";
  6. const char* password = "kata_sandi_wifi";
  7.  
  8. // Konfigurasi bot Telegram
  9. #define BOT_TOKEN "token_bot_anda"
  10. #define CHAT_ID "chat_id_anda"
  11.  
  12. // Pin sensor status tempat sampah
  13. const int trashStatusPin = 2;
  14.  
  15. // Variabel penanda status tempat sampah
  16. bool trashFull = false;
  17.  
  18. // Objek untuk koneksi WiFi
  19. WiFiClientSecure client;
  20.  
  21. // Objek bot Telegram
  22. UniversalTelegramBot bot(BOT_TOKEN, client);
  23.  
  24. void setup() {
  25.   // Menginisialisasi pin sensor tempat sampah sebagai input
  26.   pinMode(trashStatusPin, INPUT);
  27.  
  28.   // Menghubungkan ke jaringan WiFi
  29.   WiFi.begin(ssid, password);
  30.   while (WiFi.status() != WL_CONNECTED) {
  31.     delay(1000);
  32.     Serial.println("Connecting to WiFi...");
  33.   }
  34.   Serial.println("Connected to WiFi");
  35.  
  36.   // Memulai koneksi Telegram
  37.   client.setInsecure();
  38. }
  39.  
  40. void loop() {
  41.   // Membaca status tempat sampah
  42.   bool currentTrashStatus = digitalRead(trashStatusPin);
  43.  
  44.   // Memeriksa apakah tempat sampah penuh
  45.   if (currentTrashStatus && !trashFull) {
  46.     trashFull = true;
  47.     sendTelegramMessage("Tempat sampah sudah penuh!");
  48.   } else if (!currentTrashStatus && trashFull) {
  49.     trashFull = false;
  50.     sendTelegramMessage("Tempat sampah sudah dikosongkan.");
  51.   }
  52.  
  53.   delay(1000); // Jeda 1 detik antara setiap pembacaan status tempat sampah
  54. }
  55.  
  56. // Fungsi untuk mengirim pesan ke bot Telegram
  57. void sendTelegramMessage(String message) {
  58.   String chatId = CHAT_ID;
  59.   if (chatId.length() > 0) {
  60.     if (bot.sendMessage(chatId, message, "Markdown")) {
  61.       Serial.println("Message sent successfully");
  62.     } else {
  63.       Serial.println("Failed to send message");
  64.     }
  65.   } else {
  66.     Serial.println("Chat ID not set");
  67.   }
  68. }
  69.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement