สารบัญ:
- เสบียง
- ขั้นตอนที่ 1: เลือกอุปกรณ์ที่ถูกต้อง ENC28J60 หรือ W5100 Series
- ขั้นตอนที่ 2: ส่งอีเมลอย่างง่าย
- ขั้นตอนที่ 3: เชื่อมต่อ SD Cart เพื่อจัดการไฟล์แนบ
- ขั้นตอนที่ 4: ส่งอีเมลพร้อมไฟล์แนบ
- ขั้นตอนที่ 5: ผลลัพธ์
- ขั้นตอนที่ 6: ห้องสมุด
วีดีโอ: วิธีส่งอีเมลพร้อมไฟล์แนบด้วย Arduino, Esp32 และ Esp8266: 6 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
ที่นี่ ฉันต้องการอธิบายเวอร์ชัน 2 ของไลบรารี EMailSender ของฉัน ซึ่งเป็นวิวัฒนาการครั้งใหญ่เมื่อเทียบกับเวอร์ชัน 1 โดยรองรับ Arduino ที่มีอีเธอร์เน็ตชิลด์ w5100, w5200 และ w5500 และอุปกรณ์โคลน enc28J60 และรองรับ esp32 และ esp8266
ตอนนี้คุณสามารถเพิ่มไฟล์แนบได้ด้วย โดยโหลดจากอุปกรณ์จัดเก็บข้อมูลอย่าง SD หรือ SPIFFS การใช้งาน Arduino อีเธอร์เน็ตที่นี่
เสบียง
- Arduino Mega
- enc28J60
- การ์ด SD
ขั้นตอนที่ 1: เลือกอุปกรณ์ที่ถูกต้อง ENC28J60 หรือ W5100 Series
โดยปกติ Arduino จะจัดการเครือข่ายด้วยอุปกรณ์ภายนอก อุปกรณ์มาตรฐานเช่น w5100 ใช้ไลบรารีอีเทอร์เน็ต โคลน ENC28J60 มีบางไลบรารีให้เลือก
ในการเลือกอุปกรณ์ของคุณ คุณต้องไปที่ไฟล์ไลบรารี EMailSenderKey.h และตั้งค่าให้ถูกต้อง
#define DEFAULT_EMAIL_NETWORK_TYPE_ARDUINO NETWORK_ENC28J60 // ค่าเริ่มต้น
ไลบรารีที่โหลดเพื่อจัดการอุปกรณ์ประเภทนี้คือ UIPEthernet คุณสามารถค้นหาไลบรารีบนตัวจัดการไลบรารีของ Arduino IDE
หรือคุณสามารถเปลี่ยนประเภทเครือข่ายเริ่มต้นได้
#define DEFAULT_EMAIL_NETWORK_TYPE_ARDUINO NETWORK_W5100
นี่คือการใช้งานมาตรฐานและใช้ไลบรารีอีเทอร์เน็ต
สิ่งสำคัญที่ต้องพิจารณาคือ อีเทอร์เน็ตชิลด์นี้ไม่รองรับ SSL หรือ TLS ดังนั้นคุณต้องค้นหาผู้ให้บริการ SMTP ที่เสนอการเชื่อมต่อ SMTP โดยไม่มีการเข้ารหัสประเภทนี้
ฉันสร้างหัวข้อในฟอรัมที่คุณสามารถเพิ่มผู้ให้บริการที่คุณใช้ซึ่งคุณสามารถหาของฉันได้
ขั้นตอนที่ 2: ส่งอีเมลอย่างง่าย
ในการส่งอีเมลกับ Arduino คุณต้องค้นหาผู้ให้บริการที่ทำงานโดยไม่มี SSL หรือ TLS สำหรับโซลูชันของฉัน ฉันใช้กับผู้ให้บริการ SendGrid
ฉันคิดว่าการใช้งานนั้นง่ายมาก
ดังนั้นคุณต้องตั้งค่าผู้ให้บริการ
EMailSender emailSend("YOUR-SENDGRID-API-KEY", "YOUR-SENDGRID-PASSWD", "FROM-EMAIL", "smtp.sendgrid.net", 25);
กว่าที่คุณต้องสร้างข้อความและส่งมัน
EMailSender::EMailMessage ข้อความ; message.subject = "Soggetto"; message.message = "Ciao มา staiio bene
EMailSender::Response resp = emailSend.send("[email protected]", ข้อความ);
Serial.println("สถานะการส่ง: ");
Serial.println (สถานะตอบกลับ);
Serial.println (รหัสตอบกลับ); Serial.println(resp.desc);
ขั้นตอนที่ 3: เชื่อมต่อ SD Cart เพื่อจัดการไฟล์แนบ
กว่าจะส่งไฟล์แนบ คุณต้องเชื่อมต่อการ์ด 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 แนบ = {1, fileDescriptor};
EMailSender::Response resp = emailSend.send("[email protected]", ข้อความ, ไฟล์แนบ);
ขั้นตอนที่ 5: ผลลัพธ์
นี่คืออีเมลที่ส่งโดยผู้ให้บริการ esp8266 และ GMail (หากต้องการใช้ GMail คุณต้องเข้ารหัสโปรแกรมภายนอก)
ขั้นตอนที่ 6: ห้องสมุด
คุณสามารถค้นหาห้องสมุดได้ที่ GitHub
และคุณต้องถามคุณสมบัติหรือรายงานจุดบกพร่องในฟอรัม
เอกสารเพิ่มเติมที่นี่
แนะนำ:
ติดตาม: ศูนย์สื่อขั้นสูงพร้อม Odroid N2 และ Kodi (รองรับ 4k และ HEVC): 3 ขั้นตอน
ติดตาม: Advanced Media Center พร้อม Odroid N2 และ Kodi (รองรับ 4k และ HEVC): บทความนี้เป็นบทความต่อจากบทความก่อนหน้าของฉันที่ประสบความสำเร็จค่อนข้างมากเกี่ยวกับการสร้างศูนย์สื่ออเนกประสงค์ โดยอ้างอิงจาก Raspberry PI ที่ได้รับความนิยมมากในตอนแรก แต่ ในภายหลัง เนื่องจากไม่มีเอาต์พุตที่สอดคล้องกับ HEVC, H.265 และ HDMI 2.2 จึงมีสวิตช์
Blinds Control ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: 5 ขั้นตอน (พร้อมรูปภาพ)
การควบคุมมู่ลี่ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นว่าฉันเพิ่มระบบอัตโนมัติให้กับมู่ลี่ของฉันอย่างไร ฉันต้องการเพิ่มและลบระบบอัตโนมัติได้ ดังนั้นการติดตั้งทั้งหมดจึงเป็นแบบหนีบ ส่วนหลักคือ: สเต็ปเปอร์มอเตอร์ ตัวขับสเต็ปควบคุม bij ESP-01 เกียร์และการติดตั้ง
DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: 3 ขั้นตอน
DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: Story A beacon จะส่งสัญญาณอย่างต่อเนื่องเพื่อให้อุปกรณ์บลูทู ธ อื่น ๆ รู้ว่ามีอยู่ และฉันอยากได้บีคอนบลูทูธเพื่อติดตามกุญแจมาตลอด เพราะฉันลืมเอามันมาเหมือน 10 ครั้งในปีที่แล้ว และฉันก็เกิดขึ้น
RuuviTag และ PiZero W และ Blinkt! เทอร์โมมิเตอร์แบบ Bluetooth Beacon: 3 ขั้นตอน (พร้อมรูปภาพ)
RuuviTag และ PiZero W และ Blinkt! เครื่องวัดอุณหภูมิที่ใช้ Bluetooth Beacon: คำแนะนำนี้อธิบายวิธีการอ่านข้อมูลอุณหภูมิและความชื้นจาก RuuviTag โดยใช้ Bluetooth กับ Raspberry Pi Zero W และเพื่อแสดงค่าเป็นเลขฐานสองบน Pimoroni กะพริบตา! pHAT.หรือเรียกสั้นๆ ว่า จะสร้างสถานะอย่างไร
วิธีการสร้าง Quadcoptor (NTM 28-30S 800kV 300W และ Arducopter APM 2.6 & 6H GPS 3DR Radio และ FlySky TH9X): 25 ขั้นตอน (พร้อมรูปภาพ)
วิธีการสร้าง Quadcoptor (NTM 28-30S 800kV 300W และ Arducopter APM 2.6 & 6H GPS 3DR Radio และ FlySky TH9X): นี่คือบทแนะนำเกี่ยวกับวิธีการสร้าง Quadcopter โดยใช้มอเตอร์ NTM 28-30S 800kV 300W และ Arducopter APM 2.6 & 6H GPS & วิทยุ 3DR ฉันพยายามอธิบายแต่ละขั้นตอนด้วยรูปภาพจำนวนหนึ่ง หากคุณมีคำถามหรือความคิดเห็นใด ๆ โปรดตอบกลับ