#include <WiFi.h>
#include <HTTPClient.h>
#define WIFI_SSID "Wokwi-GUEST"
#define WIFI_PASSWORD ""


// URL de l'API
const char* apiURL = "https://api-commerce.edf.fr/commerce/activet/v1/calendrier-jours-effacement?option=EJP&dateApplicationBorneInf=2024-11-21&dateApplicationBorneSup=2024-11-22&identifiantConsommateur=src";

void setup() {
  // Initialisation du port série
  Serial.begin(115200);
  delay(1000);

  // Connexion au Wi-Fi
  Serial.println(WIFI_SSID);
  WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
 
  Serial.print("Connexion au Wi-Fi");
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("\nConnecté au Wi-Fi !");
  Serial.println(WiFi.localIP());

  // Récupération des données
  fetchData();
}

void fetchData() {
  if (WiFi.status() == WL_CONNECTED) {
    HTTPClient http;
    
    // Configuration de la requête HTTP
    http.begin(apiURL);
    http.addHeader("Accept", "application/json");
    http.addHeader("Content-Type", "application/json");
    http.addHeader("Origin", "https://particulier.edf.fr");
    http.addHeader("Referer", "https://particulier.edf.fr/");
    http.addHeader("application-origine-controlee", "site_RC");
    http.addHeader("situation-usage", "Jours Effacement");
    
    // Envoi de la requête GET
    int httpResponseCode = http.GET();

    if (httpResponseCode > 0) {
      Serial.println("Réponse de l'API reçue !");
      String payload = http.getString(); // Contenu de la réponse
      Serial.println("Réponse JSON :");
      Serial.println(payload);
    } else {
      Serial.print("Erreur dans la requête HTTP : ");
      Serial.println(httpResponseCode);
    }
    http.end(); // Fin de la requête
  } else {
    Serial.println("Wi-Fi non connecté !");
  }
}

void loop() {
  // Rien ici pour l'instant
}