جدول المحتويات:
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-13 06:56
هنا أود أن أشرح الإصدار 2 من مكتبتي EMailSender ، وهو تطور كبير فيما يتعلق بالإصدار 1 ، مع دعم Arduino مع درع إيثرنت w5100 و w5200 و w5500 وأجهزة استنساخ enc28J60 ودعم esp32 و esp8266.
يمكنك الآن إضافة المرفقات أيضًا ، محملة من جهاز تخزين مثل SD أو SPIFFS. هنا استخدام اردوينو إيثرنت.
اللوازم
- اردوينو ميجا
- enc28J60
- بطاقة الذاكرة
الخطوة 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 بدون هذا النوع من التوحيد.
أقوم بإنشاء موضوع على المنتدى حيث يمكنك إضافة المزود الذي تستخدمه ، والذي يمكنك العثور عليه أيضًا.
الخطوة الثانية: إرسال بريد إلكتروني بسيط
لإرسال بريد إلكتروني باستخدام Arduino ، يجب أن تجد مزودًا يعمل بدون SSL أو TLS ، بالنسبة للحل الذي أستخدمه مع مزود SendGrid.
أعتقد أن الاستخدام بسيط للغاية.
لذلك يجب عليك تعيين المزود
إرسال بريد إلكتروني للمرسل ("YOUR-SENDGRID-API-KEY" ، "YOUR-SENDGRID-PASSWD" ، "FROM-EMAIL" ، "smtp.sendgrid.net" ، 25) ؛
مما يجب عليك إنشاء رسالة وإرسالها
إرسال بريد إلكتروني:: رسالة بريد إلكتروني ؛ message.subject = "Soggetto" ؛ message.message = "Ciao تعال ستايو بيني.
EMailSender:: Response resp = emailSend.send ("[email protected]" ، رسالة) ؛
Serial.println ("حالة الإرسال:") ؛
Serial.println (resp.status) ؛
Serial.println (Resp.code) ؛ Serial.println (resp.desc) ؛
الخطوة 3: قم بتوصيل عربة SD لإدارة المرفقات
بدلاً من إرسال المرفقات ، يجب عليك توصيل بطاقة SD كما هو الحال في المخطط ، إذا كنت بحاجة إلى مزيد من المعلومات حول الاتصال ، فراجع هذه المقالة "كيفية استخدام بطاقة SD مع esp8266 و esp32 و Arduino".
الخطوة 4: إرسال بريد إلكتروني مع المرفقات
لإرسال بريد إلكتروني يحتوي على مرفقات ، يجب أن تجد مزودًا يدعم هذه الوظيفة ، ومزود sendgrid الخاص بي لا يدعم ذلك ولا يدعم GMX المزود الذي استخدمته للاختبار المزيد من الدعم.
ولكن إذا وجدت مزودًا جديدًا ، يمكنك استخدام هذا الرمز لإرفاق الملفات.
إرسال بريد إلكتروني:: FileDescriptior fileDescriptor [1]؛ fileDescriptor [0].filename = F ("test.txt") ؛ fileDescriptor [0].url = F ("/ test.txt") ؛ fileDescriptor [0].mime = MIME_TEXT_PLAIN ، fileDescriptor [0].encode64 = خطأ ؛ fileDescriptor [0].storageType = مرسل البريد الإلكتروني:: EMAIL_STORAGE_TYPE_SD؛
EMailSender:: Attachments attachments = {1، fileDescriptor}؛
EMailSender:: Response resp = emailSend.send ("[email protected]" ، رسالة ، المرفقات) ؛
الخطوة 5: النتيجة
هنا يتم إرسال البريد الإلكتروني مع موفر esp8266 و GMail (لاستخدام GMail ، يجب أن تقوم بتثبيت برنامج خارجي).
الخطوة 6: المكتبة
يمكنك العثور على المكتبة على GitHub
ويجب عليك طرح ميزات أو الإبلاغ عن الأخطاء في المنتدى
وثائق إضافية هنا.