[Tuto] Remontée des données d'un ESP vers Google sheet
Après quelques recherches il existe une librairie pour réaliser ce type de programme Arduino mais nous allons essayer de faire sans. Si vous souhaitez récupérer la librairie voici son adresse https://github.com/romkey/IFTTTWebhook/
Créer un applet IFTTT
Sur IFTTT, vous pouvez créer un Applet pour lier le Webhook IFTTT avec Google Sheet
Tips #1: IFTTT va créer le document Gsheet dans un dossier IFTTT s'il n'existe pas dans votre Google Drive.
Tips #2: Pensez à vérifier que votre IFTTT est bien connecté avec votre compte Google
Créer le Sketch Arduino
Le logiciel Arduino est basé sur les exemple de base httpsclient dédié à l'ESP32.
#include "WiFi.h"
#include "HTTPClient.h"
#define WIFI_SSID "Letmeknow"
#define WIFI_PASSWORD "AAAAAAA"
#define IFTTT_API_KEY "VOTREAPIKEY"
#define IFTTT_EVENT_NAME "VOTREEVENTNAME"
const char* _ifttt_root_certificate = "-----BEGIN CERTIFICATE-----n" "MIIE0DCCA7igAwIBAgIBBzANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMx" "EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoT" "EUdvRGFkZHkuY29tLCBJbmMuMTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRp" "ZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTExMDUwMzA3MDAwMFoXDTMxMDUwMzA3" "MDAwMFowgbQxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQH" "EwpTY290dHNkYWxlMRowGAYDVQQKExFHb0RhZGR5LmNvbSwgSW5jLjEtMCsGA1UE" "CxMkaHR0cDovL2NlcnRzLmdvZGFkZHkuY29tL3JlcG9zaXRvcnkvMTMwMQYDVQQD" "EypHbyBEYWRkeSBTZWN1cmUgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IC0gRzIwggEi" "MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC54MsQ1K92vdSTYuswZLiBCGzD" "BNliF44v/z5lz4/OYuY8UhzaFkVLVat4a2ODYpDOD2lsmcgaFItMzEUz6ojcnqOv" "K/6AYZ15V8TPLvQ/MDxdR/yaFrzDN5ZBUY4RS1T4KL7QjL7wMDge87Am+GZHY23e" "cSZHjzhHU9FGHbTj3ADqRay9vHHZqm8A29vNMDp5T19MR/gd71vCxJ1gO7GyQ5HY" "pDNO6rPWJ0+tJYqlxvTV0KaudAVkV4i1RFXULSo6Pvi4vekyCgKUZMQWOlDxSq7n" "eTOvDCAHf+jfBDnCaQJsY1L6d8EbyHSHyLmTGFBUNUtpTrw700kuH9zB0lL7AgMB" "AAGjggEaMIIBFjAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNV" "HQ4EFgQUQMK9J47MNIMwojPX+2yz8LQsgM4wHwYDVR0jBBgwFoAUOpqFBxBnKLbv" "9r0FQW4gwZTaD94wNAYIKwYBBQUHAQEEKDAmMCQGCCsGAQUFBzABhhhodHRwOi8v" "b2NzcC5nb2RhZGR5LmNvbS8wNQYDVR0fBC4wLDAqoCigJoYkaHR0cDovL2NybC5n" "b2RhZGR5LmNvbS9nZHJvb3QtZzIuY3JsMEYGA1UdIAQ/MD0wOwYEVR0gADAzMDEG" "CCsGAQUFBwIBFiVodHRwczovL2NlcnRzLmdvZGFkZHkuY29tL3JlcG9zaXRvcnkv" "MA0GCSqGSIb3DQEBCwUAA4IBAQAIfmyTEMg4uJapkEv/oV9PBO9sPpyIBslQj6Zz" "91cxG7685C/b+LrTW+C05+Z5Yg4MotdqY3MxtfWoSKQ7CC2iXZDXtHwlTxFWMMS2" "RJ17LJ3lXubvDGGqv+QqG+6EnriDfcFDzkSnE3ANkR/0yBOtg2DZ2HKocyQetawi" "DsoXiWJYRBuriSUBAA/NxBti21G00w9RKpv0vHP8ds42pM3Z2Czqrpv1KrKQ0U11" "GIo/ikGQI31bS/6kA1ibRrLDYGCD+H1QQc7CoZDDu+8CL9IVVO5EFdkKrqeKM+2x" "LXY2JtwE65/3YR8V3Idv7kaWKK2hJn0KCacuBKONvPi8BDAB" "-----END CERTIFICATE-----n";
String ifttt_base = "https://maker.ifttt.com/trigger";
void setup() {
Serial.begin(115200);
Serial.println("RUNNING");
/*** Connexion au Wifi ***/
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print("Connecting to ");
Serial.print(WIFI_SSID);
while (WiFi.status() != WL_CONNECTED) {
delay(100);
Serial.print(".");
}
Serial.print("Connected! IP address: ");
Serial.println(WiFi.localIP());
Serial.print("MAC: ");
Serial.println(WiFi.macAddress());
/*** Création de la requête IFTTT ***/
String donnee = String(random(100));
String Mac = WiFi.macAddress();
Mac.replace(":",""); // Supprime les :
String ifttt_url = ifttt_base + "/" + IFTTT_EVENT_NAME + "/with/key/" + IFTTT_API_KEY + "?value1="" + donnee + ""&value2="" + Mac + """;
Serial.println(ifttt_url);
HTTPClient http;
http.begin(ifttt_url, _ifttt_root_certificate);
/*** Vérification du bon déroullement ***/
int httpCode = http.GET();
if (httpCode > 0) {
Serial.printf("[HTTP] GET... code: %dn", httpCode);
if(httpCode == HTTP_CODE_OK) {
Serial.println(http.getString());
}
} else {
Serial.printf("[HTTP] GET... failed, error: %sn", http.errorToString(httpCode).c_str());
}
}
void loop() {
}
Tips #1 :Pensez bien à mettre votre SSID et mot de passe Wifi (AAAAAAA n'est pas notre mot de passe ????)
Tips #2 : Pour récupérer vos clés d'API VOTREAPIKEY, vous pouvez aller dans My services / Webhooks / Documentation
Tips #3 : Pour récupérer l'Event name, il est visible sur la première fenêtre lorsque vous créez ou modifiez l'applet
Enjoy
Et à chaque branchement de la carte, une data apparait dans le Google Sheet.
Tips: Vous pouvez ajouter des titres de colonne.
Connectez-vous pour commenter
Se connecter