Cara Ambil Data Covid-19 Indonesia Menggunakan ESP32 dan ESP8266



Semoga bermanfaat, admin nggak mau bertele-tele jelasin programnya, langsung aja copas dan pelajari sendiri, insyallah langsung bisa.

#include <WiFi.h> 
//#include <ESP8266WiFi.h> uncoment jika menggunakan ESP8266 dan hapus library -- #include <WiFi.h> -- 
#include <HTTPClient.h>
const char* ssid     = "ssid wifi anda";
const char* password = "password wifi anda";
String payload, positif, mati, sembuh, hari, tanggal, bulan, tahun, waktu;

String dt[10];
int i;

void setup() {
 Serial.begin(115200);
    
    Serial.print("Connecting to ");
    Serial.println(ssid);
    WiFi.begin(ssid, password);
    while (WiFi.status() != WL_CONNECTED) {
        delay(500);
        Serial.print(".");
    }
    Serial.println("");
    Serial.println("WiFi connected with IP address: ");
    Serial.println(WiFi.localIP());
}

void loop() {
  getmethod();
  delay(2000);
  parsingData();
}

void parsingData()
{
      int j=0;
      dt[j]="";
      //proses parsing data
      for(i=1;i<payload.length();i++)
      {
             if ((payload[i] == '#') || (payload[i] == ','))
             {
                   j++;
                  dt[j]=""; //inisialisasi variabel array dt[j]
             }
             else
             {
                  dt[j] = dt[j] + payload[i];
             }
      }

     positif = dt[0];
     mati = dt[1];
     sembuh = dt[2];
     hari = dt[3];
     tanggal = dt[4];
     bulan = dt[5];
     tahun = dt[6];
     waktu = dt[7];

      
      //Tampilkan data hasil parsing
      Serial.print("Positif Corona : ");
      Serial.print(positif);
      Serial.print("\n");
      Serial.print("Kasus Meninggal : ");
      Serial.print(mati);
      Serial.print("\n");
      Serial.print("Sembuh : ");
      Serial.print(sembuh);
      Serial.print("\n");
      Serial.print("Data Update : ");
      Serial.print(hari);
      Serial.print(", ");
      Serial.print(tanggal);
      Serial.print(" ");
      Serial.print(bulan);
      Serial.print(" ");
      Serial.print(tahun);
      Serial.print("\n");
      Serial.print("Pukul : ");
      Serial.print(waktu);
      Serial.print("\n\n");
}

void getmethod(){
  if ((WiFi.status() == WL_CONNECTED)) { 
 
    HTTPClient http;
    String urlgo = "http://alicestech.com/covid19/corona.php";

    const char* sendurl = urlgo.c_str();
    Serial.println(sendurl);
    
    http.begin(sendurl); 
    int httpCode = http.GET();                                      
 
    if (httpCode > 0) { 
 
        payload = http.getString();
        Serial.println();
      }
 
    else {
      Serial.println("Error on HTTP request");
    }
 
    http.end(); 
  }
 
}

Post a Comment

0 Comments