//* Make by BLK Surabaya *//

//Ganti Sesuai Template Pada Blynk
#define BLYNK_TEMPLATE_ID "TMPL6m9AsuOcX"
#define BLYNK_TEMPLATE_NAME "ledblink"
#define BLYNK_AUTH_TOKEN "PbX9X-SqgcmAJSnuNJAQ6X5_YG99ciqh"

#include <WiFi.h> //dari library wifi , kl mau pake wifi harus pake ini
#include <WiFiClient.h> //kek diatas
#include <BlynkSimpleEsp32.h> //library blynk

char auth[] = BLYNK_AUTH_TOKEN; //supaya manggil template token di atas
char ssid[] = "Wokwi-GUEST"; //ini wifinya wokwi buat simulasi
char pass[] = ""; //ga ada pass , kl diganti kenyataan ya diganti sesuai pass asli

//Mendefinisikan Timer pada Blynk
BlynkTimer timer;

#define LED 22
#define LED1 12
int SW_state = 0; //kondisi lampu mati

BLYNK_WRITE (V0)//Fungsi Callback BLYNK_WRITE:
{
  SW_state = param.asInt(); //kondisi saklar sw state, param asint itu dari blynk
  if(SW_state == 1){
    digitalWrite(LED, HIGH); digitalWrite(LED1, HIGH);
    Serial.println("Lampu telah dihidupkan");
    Blynk.virtualWrite(V0, HIGH);
  }else{
    digitalWrite(LED, LOW); digitalWrite(LED1, LOW);
    Serial.println("Lampu telah dimatikan");
    Blynk.virtualWrite(V0, LOW);
  }
}

void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  pinMode(LED, OUTPUT);
  Blynk.begin(auth, ssid, pass);
}

void loop() {
  // put your main code here, to run repeatedly:
  // Memproses event Blynk dan untuk menjalankan timer Blynk.
  Blynk.run();
  timer.run();
}