Tartalomjegyzék:

E -mailek küldése mellékletekkel az Arduino, Esp32 és Esp8266 segítségével: 6 lépés
E -mailek küldése mellékletekkel az Arduino, Esp32 és Esp8266 segítségével: 6 lépés

Videó: E -mailek küldése mellékletekkel az Arduino, Esp32 és Esp8266 segítségével: 6 lépés

Videó: E -mailek küldése mellékletekkel az Arduino, Esp32 és Esp8266 segítségével: 6 lépés
Videó: LDmicro 14: ЖК-дисплей I2C и часы реального времени DS3231 (программирование лестничной схемы ПЛК микроконтроллера с помощью LDmicro) 2024, November
Anonim
E -mailek küldése mellékletekkel az Arduino, Esp32 és Esp8266 segítségével
E -mailek küldése mellékletekkel az Arduino, Esp32 és Esp8266 segítségével

Itt szeretném elmagyarázni az EMailSender könyvtárom 2 -es verzióját, ami nagy fejlődés az 1 -es verzióhoz képest, támogatva az Arduino -t w5100, w5200 és w5500 ethernet pajzzsal és enc28J60 klón eszközökkel, valamint az esp32 és esp8266 támogatást.

Mostantól a tárolóeszközről, például SD -ből vagy SPIFFS -ből betöltött mellékleteket is hozzáadhat. Itt az Arduino ethernet használata.

Kellékek

  • Arduino Mega
  • enc28J60
  • SD kártya

1. lépés: Válassza ki a helyes ENC28J60 vagy W5100 sorozatú eszközt

Válassza ki az ENC28J60 vagy W5100 sorozat megfelelő eszközét
Válassza ki az ENC28J60 vagy W5100 sorozat megfelelő eszközét

Az Arduino általában külső eszközzel kezeli a hálózatot, a szabványos eszközök, például a w5100 Ethernet -könyvtárat használnak, az ENC28J60 klónok közül néhány könyvtárat kell kiválasztani.

Az eszköz kiválasztásához lépjen az EMailSenderKey.h könyvtárfájlba, és állítsa be a megfelelőt

#define DEFAULT_EMAIL_NETWORK_TYPE_ARDUINO NETWORK_ENC28J60 // Alapértelmezett

Az ilyen típusú eszközök kezelésére betöltött könyvtár az UIPEthernet, a könyvtárat az Arduino IDE könyvtárkezelőjében találja

vagy módosíthatja az alapértelmezett hálózati típust

#define DEFAULT_EMAIL_NETWORK_TYPE_ARDUINO NETWORK_W5100

Ez a szabványos implementáció és az Ethernet könyvtár használata.

Fontos megfontolni, hogy ez az Ethernet -pajzs nem támogatja az SSL -t vagy a TLS -t, ezért meg kell találnia egy szolgáltató SMTP -t, amely SMTP -kapcsolatot kínál ilyen típusú feliratozás nélkül.

Létrehozok egy témát a fórumon, ahol felveheted az általad használt szolgáltatót, és megtalálhatod az enyémet is.

2. lépés: Egyszerű e -mail küldése

Egyszerű e -mail küldése
Egyszerű e -mail küldése

Ha e -mailt szeretne küldeni az Arduino -val, meg kell találnia egy szolgáltatót, amely SSL vagy TLS nélkül működik. A megoldásomhoz a SendGrid szolgáltatóval használom.

A használat szerintem nagyon egyszerű.

Tehát be kell állítania a szolgáltatót

EMailSender emailSend ("YOUR-SENDGRID-API-KEY", "YOUR-SENDGRID-PASSWD", "FROM-EMAIL", "smtp.sendgrid.net", 25);

Akkor létre kell hoznia egy üzenetet, és el kell küldenie

EMailSender:: EMailMessage üzenet; message.subject = "Soggetto"; message.message = "Ciao come staiio bene.

EMailSender:: Válasz resp = emailSend.send ("[email protected]", üzenet);

Serial.println ("Küldési állapot:");

Soros.println (ill. Állapot);

Serial.println (ill. Kód); Serial.println (ill. Desc);

3. lépés: Csatlakoztasson egy SD kosarat a mellékletek kezeléséhez

Csatlakoztasson egy SD kosarat a mellékletek kezeléséhez
Csatlakoztasson egy SD kosarat a mellékletek kezeléséhez

A mellékletek küldéséhez a sémához hasonlóan csatlakoztatnia kell egy SD -kártyát, ha további információra van szüksége a csatlakozási hivatkozással kapcsolatban ehhez a cikkhez "Az SD -kártya használata az esp8266, esp32 és Arduino használatával".

4. lépés: E -mail küldése mellékletekkel

Ahhoz, hogy e -mailt csatolmányokkal küldhessen, meg kell találnia egy szolgáltatót, amely támogatja ezt a funkciót, a sendgrid szolgáltatóm nem támogatja ezt, és a GMX a szolgáltatót, amelyet a teszthez használtam, már nem támogatja.

De ha új szolgáltatót talál, akkor ezzel a kóddal csatolhatja a fájlokat.

EMailSender:: FileDescriptior fileDescriptor [1]; fileDescriptor [0].fájlnév = F ("teszt.txt"); fileDescriptor [0].url = F ("/test.txt"); fileDescriptor [0].mime = MIME_TEXT_PLAIN; fileDescriptor [0].encode64 = hamis; fileDescriptor [0].storageType = EMailSender:: EMAIL_STORAGE_TYPE_SD;

EMailSender:: Mellékletek csatolmányok = {1, fileDescriptor};

EMailSender:: Válasz resp = emailSend.send ("[email protected]", üzenet, mellékletek);

5. lépés: Az eredmény

Az eredmény
Az eredmény

Itt az esp8266 és a GMail szolgáltatóval küldött e -mail (a GMail használatához külső programmal kell rendelkeznie).

6. lépés: Könyvtár

A könyvtárat a GitHubon találja:

És meg kell kérdeznie a Fórum funkcióit, vagy jelentenie kell a hibákat

További dokumentáció itt.

Ajánlott: