Оглавление:
- Запасы
- Шаг 1. Выберите правильное устройство серии ENC28J60 или W5100
- Шаг 2. Отправьте простое электронное письмо
- Шаг 3. Подключите тележку SD для управления вложениями
- Шаг 4. Отправьте электронное письмо с вложениями
- Шаг 5: результат
- Шаг 6: Библиотека
Видео: Как отправлять электронные письма с вложениями с помощью Arduino, Esp32 и Esp8266: 6 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:48
Здесь я хотел бы объяснить версию 2 моей библиотеки EMailSender, большую эволюцию по сравнению с версией 1, с поддержкой Arduino с w5100, w5200 и w5500 ethernet Shield и устройствами клонирования enc28J60, а также поддержкой esp32 и esp8266.
Теперь вы также можете добавлять вложения, загруженные с устройства хранения, такого как SD или SPIFFS. Здесь использование Ethernet Arduino.
Запасы
- Ардуино Мега
- enc28J60
- SD Card
Шаг 1. Выберите правильное устройство серии ENC28J60 или W5100
Arduino, как правило, управляет сетью с помощью внешнего устройства, стандартное устройство, такое как w5100, использует библиотеку Ethernet, у клонов ENC28J60 есть несколько библиотек на выбор.
Чтобы выбрать свое устройство, вы должны перейти в файл библиотеки EMailSenderKey.h и установить правильный
#define DEFAULT_EMAIL_NETWORK_TYPE_ARDUINO NETWORK_ENC28J60 // По умолчанию
Библиотека, загруженная для управления этим типом устройств, - это UIPEthernet, вы можете найти библиотеку в диспетчере библиотек в Arduino IDE.
или вы можете изменить тип сети по умолчанию
#define DEFAULT_EMAIL_NETWORK_TYPE_ARDUINO NETWORK_W5100
Это стандартная реализация и использование библиотеки Ethernet.
Важно учитывать, что этот экран Ethernet не поддерживает SSL или TLS, поэтому вы должны найти поставщика SMTP, который предлагает SMTP-соединение без этого типа шифрования.
Я создаю тему на форуме, где вы можете добавить провайдера, которого используете, вы также можете найти моего.
Шаг 2. Отправьте простое электронное письмо
Чтобы отправить электронное письмо с помощью Arduino, вы должны найти поставщика, который работает без SSL или TLS. В моем решении я использую поставщика SendGrid.
Я думаю, что использование очень простое.
Итак, вы должны установить поставщика
EMailSender emailSend ("ВАШ-SENDGRID-API-KEY", "ВАШ-SENDGRID-PASSWD", "FROM-EMAIL", "smtp.sendgrid.net", 25);
Затем вы должны создать сообщение и отправить его
EMailSender:: сообщение EMailMessage; message.subject = "Soggetto"; message.message = "Ciao come staiio bene.
EMailSender:: Response resp = emailSend.send ("[email protected]", сообщение);
Serial.println ("Статус отправки:");
Serial.println (соответственно статус);
Serial.println (соотв. Код); Serial.println (соотв. Desc);
Шаг 3. Подключите тележку SD для управления вложениями
Вместо того, чтобы отправлять вложения, вы должны подключить SD-карту, как на схеме, если вам нужна дополнительная информация о подключении, обратитесь к этой статье «Как использовать SD-карту с esp8266, esp32 и Arduino».
Шаг 4. Отправьте электронное письмо с вложениями
Чтобы отправить электронное письмо с вложениями, вы должны найти поставщика, который поддерживает эту функцию, мой поставщик sendgrid не поддерживает это, а поставщик GMX, которого я использовал для теста, больше не поддерживает.
Но если вы найдете нового поставщика, вы можете использовать этот код для прикрепления файлов.
EMailSender:: FileDescriptior fileDescriptor [1]; fileDescriptor [0].filename = 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 attachs = {1, fileDescriptor};
EMailSender:: Response resp = emailSend.send ("[email protected]", сообщение, вложения);
Шаг 5: результат
Здесь электронное письмо, отправленное с помощью esp8266 и провайдера GMail (для использования GMail необходимо использовать внешнюю программу).
Шаг 6: Библиотека
Вы можете найти библиотеку на GitHub
И вы должны спрашивать функции или сообщать об ошибках на форуме
Дополнительная документация здесь.
Рекомендуемые:
FeatherQuill - 34+ часов письма без отвлекающих факторов: 8 шагов (с изображениями)
FeatherQuill - 34+ часа письма, не отвлекаясь: я пишу, зарабатывая на жизнь, и большую часть рабочего дня провожу, сидя перед настольным компьютером, печатая статьи. Я создал FeatherQuill, потому что хотел, чтобы набор текста был удовлетворительным, даже когда я в пути. Это посвященный отвлекающий
Пишущая машина формата письма: 5 шагов
Пишущая машина в формате письма: эта машина для письма в формате может помочь любому, особенно студентам, решить их проблему, связанную с незнанием формата электронной почты. На этой машине пользователь мог легко «набрать»; из формата электронной почты, все, что им нужно сделать, это заполнить
Как отправлять текстовые SMS-сообщения из вашего проекта Arduino ESP: 6 шагов
Как отправлять текстовые SMS-сообщения из вашего проекта Arduino ESP: в этом руководстве показано, как отправлять текстовые SMS-сообщения из вашего проекта Arduino с помощью устройства ESP8266 и Wi-Fi. Зачем использовать SMS? * SMS-сообщения намного быстрее и надежнее, чем уведомления приложений Сообщения. * SMS-сообщения могут также
Соединение TCP / IP через GPRS: как отправлять данные на сервер с помощью модуля SIM900A: 4 шага
Соединение TCP / IP через GPRS: Как отправлять данные на сервер с помощью модуля SIM900A: В этом руководстве я расскажу вам о том, как отправлять данные на сервер TCP с помощью модуля sim900. Также мы увидим, как мы можем получать данные от сервера к клиенту (модуль GSM)
Создание светодиодного стилуса для сенсорного экрана и поверхности для письма, реагирующей на УФ-излучение: 5 шагов
Создание светодиодного сенсорного пера и поверхности для письма, реагирующей на ультрафиолетовые лучи: Создайте светодиодное перо, чувствительное к сенсорному переключению! В этом руководстве используются детали, которые, вероятно, лежат у большинства любителей дома, для изготовления ручки, излучающей свет от светодиода. Я использовал ультрафиолетовый светодиод для «фантомной записи»; можно покрыть белую поверхность