Bonjour
Je souhaite envoyer un mail sur activation d'un contact connecté sur un ESP32 et cela via IFTTT et Webhooks tel que décrit dans ce tuto:
https://randomnerdtutorials.com/esp32-door-status-monitor-email/
Quand je teste l'envoi du mail à partir d'IFTTT, c'est OK.
Par compte, à partir de l'ESP32, je n'y parviens pas.
Voilà le soft que j'utilise (que j'ai adapté de l'original) pour tenter de comprendre ce qui bloque:
#include <Arduino.h>
#include <WiFi.h>
const char*ssid = "XXX";
const char*password = "YYY";
const char* host = "maker.ifttt.com";
const char* apiKey = "ZZZ";
int flag = true;
void setup()
{
Serial.begin(115200);
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
}
void loop()
{
if (flag)
{
Serial.print("Connecting to ");
Serial.println(host);
WiFiClient client;
const int httpPort = 80;
if (!client.connect(host, httpPort))
{
Serial.println("Connection failed");
return;
}
if (WiFi.status() == WL_CONNECTED)
{
Serial.print("[*] Network information for ");
Serial.println(ssid);
Serial.println("[+] BSSID : " + WiFi.BSSIDstr());
Serial.print("[+] Gateway IP : ");
Serial.println(WiFi.gatewayIP());
Serial.print("[+] Subnet Mask : ");
Serial.println(WiFi.subnetMask());
Serial.println((String)"[+] RSSI : " + WiFi.RSSI() + " dB");
Serial.print("[+] ESP32 IP : ");
Serial.println(WiFi.localIP());
}
String url = "/trigger/ESP32/with/key/";
url += apiKey;
Serial.print("Requesting URL: ");
Serial.println(url);
Serial.println(String("POST ") + url + "\r\n" + "HTTP/1.1\r\n" +
"Host: " + host + "\r\n" +
"Content-Type: application/x-www-form-urlencoded\r\n" +
"Content-Length: 13\r\n\r\n");
client.println(String("POST ") + url + "\r\n" + "HTTP/1.1\r\n" +
"Host: " + host + "\r\n" +
"Content-Type: application/x-www-form-urlencoded\r\n" +
"Content-Length: 13\r\n\r\n");
flag = false;
}
}
Dans mon cas, mon trigger est "ESP32".
Ci dessous, le retour que j'ai dans la console(j'ai masqué par XXX les données "sensibles"
Requesting URL: /trigger/ESP32/with/key/XXX
POST /trigger/ESP32/with/key/XXX
HTTP/1.1
Host: maker.ifttt.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 13
Merci pour vos commentaires