Spisu treści:

Jak wysyłać e-maile z załącznikami za pomocą Arduino, Esp32 i Esp8266: 6 kroków
Jak wysyłać e-maile z załącznikami za pomocą Arduino, Esp32 i Esp8266: 6 kroków

Wideo: Jak wysyłać e-maile z załącznikami za pomocą Arduino, Esp32 i Esp8266: 6 kroków

Wideo: Jak wysyłać e-maile z załącznikami za pomocą Arduino, Esp32 i Esp8266: 6 kroków
Wideo: Jak usunąć maila ze SPAM'u ? Na przykładach różnych programów pocztowych. Jak dodać do białej listy? 2024, Listopad
Anonim
Jak wysyłać e-maile z załącznikami za pomocą Arduino, Esp32 i Esp8266?
Jak wysyłać e-maile z załącznikami za pomocą Arduino, Esp32 i Esp8266?

Tutaj chciałbym wyjaśnić wersję 2 mojej biblioteki EMailSender, duży szacunek ewolucyjny do wersji 1, z obsługą Arduino z tarczą ethernetową w5100, w5200 i w5500 oraz urządzeniami do klonowania enc28J60, a także obsługą esp32 i esp8266.

Teraz możesz również dodawać załączniki ładowane z urządzenia pamięci masowej, takiego jak SD lub SPIFFS. Tutaj wykorzystanie Arduino Ethernet.

Kieszonkowe dzieci

  • Arduino Mega
  • enc28J60
  • karta SD

Krok 1: Wybierz prawidłowe urządzenie serii ENC28J60 lub W5100

Wybierz prawidłowe urządzenie serii ENC28J60 lub W5100
Wybierz prawidłowe urządzenie serii ENC28J60 lub W5100

Arduino zwykle zarządza siecią za pomocą urządzenia zewnętrznego, standardowe urządzenie, takie jak w5100, korzysta z biblioteki Ethernet, klony ENC28J60 mają kilka bibliotek do wyboru.

Aby wybrać urządzenie, musisz przejść do pliku biblioteki EMailSenderKey.h i ustawić poprawny

#define DEFAULT_EMAIL_NETWORK_TYPE_ARDUINO NETWORK_ENC28J60 // Domyślnie

Biblioteka załadowana do zarządzania tego typu urządzeniem to UIPEthernet, bibliotekę można znaleźć w menedżerze bibliotek Arduino IDE

lub możesz zmienić domyślny typ sieci

#define DEFAULT_EMAIL_NETWORK_TYPE_ARDUINO NETWORK_W5100

Jest to standardowa implementacja i wykorzystanie biblioteki Ethernet.

Ważnym do rozważenia jest to, że ta osłona Ethernet nie obsługuje SSL ani TLS, więc musisz znaleźć dostawcę SMTP, który oferuje połączenie SMTP bez tego typu szyfrowania.

Tworzę wątek na forum, na którym możesz dodać dostawcę, którego używasz, a także mojego.

Krok 2: Wyślij prosty e-mail

Wyślij prosty e-mail
Wyślij prosty e-mail

Aby wysłać wiadomość e-mail za pomocą Arduino, musisz znaleźć dostawcę, który działa bez SSL lub TLS. Do mojego rozwiązania używam dostawcy SendGrid.

Myślę, że użycie jest bardzo proste.

Więc musisz ustawić dostawcę

EMailSender emailSend("TWÓJ-KLUCZ-API-SENDGRID", "TWÓJ-SENDGRID-PASSWD", "FROM-EMAIL", "smtp.sendgrid.net", 25);

Następnie musisz stworzyć wiadomość i wysłać ją

EMailSender::wiadomość EMailMessage; message.subject = "Soggetto"; message.message = "Ciao come bene bene.

EMailSender::Response resp = emailSend.send("[email protected]", wiadomość);

Serial.println("Stan wysyłania: ");

Serial.println(odp.stan);

Serial.println(odp.kod); Serial.println(odp.desc);

Krok 3: Podłącz koszyk SD, aby zarządzać załącznikami

Podłącz koszyk SD, aby zarządzać załącznikami
Podłącz koszyk SD, aby zarządzać załącznikami

Aby wysłać załączniki, musisz podłączyć kartę SD jak w schemacie, jeśli potrzebujesz więcej informacji na temat połączenia, zapoznaj się z tym artykułem "Jak używać karty SD z esp8266, esp32 i Arduino".

Krok 4: Wyślij e-mail z załącznikami

Aby wysłać e-mail z załącznikami, musisz znaleźć dostawcę, który obsługuje tę funkcjonalność, mój dostawca sendgrid nie obsługuje tej funkcji, a dostawca GMX, którego użyłem do testu, nie ma już wsparcia.

Ale jeśli znajdziesz nowego dostawcę, możesz użyć tego kodu, aby załączyć pliki.

EMailSender::FileDescriptior fileDescriptor[1]; fileDescriptor[0].nazwapliku = F("test.txt"); fileDescriptor[0].url = F("/test.txt"); fileDescriptor[0].mime = MIME_TEXT_PLAIN; fileDescriptor[0].encode64 = false; fileDescriptor[0].storageType = EMailSender::EMAIL_STORAGE_TYPE_SD;

EMailSender::Attachments Attachments = {1, fileDescriptor};

EMailSender::Response resp = emailSend.send("[email protected]", wiadomość, załączniki);

Krok 5: Wynik

Wynik
Wynik

Tutaj e-mail wysłany z esp8266 i dostawcą Gmaila (aby korzystać z Gmaila, musisz włączyć zewnętrzny program).

Krok 6: Biblioteka

Bibliotekę znajdziesz na GitHub

I musisz pytać o funkcje lub zgłaszać błędy na forum

Dodatkowa dokumentacja tutaj.

Zalecana: