ESP8266 ผู้ส่ง GMail: 3 ขั้นตอน (พร้อมรูปภาพ)
ESP8266 ผู้ส่ง GMail: 3 ขั้นตอน (พร้อมรูปภาพ)
Anonim
ESP8266 ผู้ส่ง GMail
ESP8266 ผู้ส่ง GMail

สวัสดีและยินดีต้อนรับสู่ Instructable แรกของฉัน

ฉันจะแสดงวิธีส่งอีเมลจากโมดูล wifi ของ ESP8266 โดยใช้เซิร์ฟเวอร์ Gmail

คำแนะนำนี้อาศัยแกน Arduino สำหรับชิป ESP8266 WiFi

ซึ่งทำให้ไมโครคอนโทรลเลอร์ที่มีอยู่ในตัวเอง (ไม่จำเป็นต้องใช้คำสั่ง AT และอุปกรณ์หลัก)

คุณสามารถเชื่อมต่อเซ็นเซอร์และรับการแจ้งเตือนทางอีเมลเกี่ยวกับการเปลี่ยนแปลง

อัปเดต 2018:

นี่คือรหัสที่ใหม่กว่าที่เขียนเป็น arduino lib รองรับผู้รับหลายคน นอกจากนี้ยังไม่จำเป็นต้องเข้ารหัสการเข้าสู่ระบบและรหัสผ่านไปยัง base64 ตอนนี้ใช้ ESP core base64 lib github

อัปเดต 2019:

  • รหัสนี้ใช้ไม่ได้กับแกน ESP8266 สำหรับ Arduino เวอร์ชัน 2.5.0!
  • โซลูชันชั่วคราวใช้เวอร์ชันหลัก 2.4.2

ก่อนที่เราจะเริ่มต้น

ฮาร์ดแวร์ที่จำเป็น:

  1. ESP8266 ใด ๆ (ฉันใช้ลิงก์อีเบย์ ESP8266-07)
  2. ในกรณีของฉัน USB UART Board (ฉันใช้ FT232RL FTDI Serials Adapter Module ebay) ไม่จำเป็นหากบอร์ดของคุณมีพอร์ต usb
  3. สายจัมเปอร์บางสาย
  4. เราเตอร์ไร้สายแน่นอน

รายการอาจไม่สมบูรณ์

ซอฟต์แวร์ที่จำเป็น:

  1. ซอฟต์แวร์ Arduino
  2. แกน Arduino สำหรับชิป WiFi ESP8266
  3. ร่างด้วยโครงการและรหัสทดสอบ (ESP8266_Gmail_Sender.zip)

ขั้นตอนที่ 1: การตั้งค่าบัญชี Gmail

การตั้งค่าบัญชี Gmail
การตั้งค่าบัญชี Gmail

เราจะใช้ SMTP เพื่อส่งข้อความ

การใช้การตรวจสอบสิทธิ์ SMTP เราให้เฉพาะอีเมลและรหัสผ่าน

โดยค่าเริ่มต้น Google ใช้วิธีการยืนยันที่ซับซ้อนมากขึ้น เราจึงต้องเปลี่ยนการตั้งค่า

ไปที่การตั้งค่าบัญชี Google ของคุณและเปิดใช้งาน "อนุญาตแอปที่มีความปลอดภัยน้อย" ที่ด้านล่างของหน้า

ซึ่งหมายความว่าแอปต้องการอีเมลและรหัสผ่านของคุณเมื่อลงชื่อเข้าใช้บัญชี Gmail ของคุณเท่านั้น

หากคุณกังวลเกี่ยวกับความปลอดภัย เพียงใช้บัญชีอื่น

ขั้นตอนที่ 2: แก้ไข Sketch

แก้ไขภาพร่าง
แก้ไขภาพร่าง
แก้ไขภาพร่าง
แก้ไขภาพร่าง

ฉันเขียนร่างเล็ก ๆ ที่ส่งข้อความทดสอบหนึ่งข้อความเพื่อตรวจสอบว่าทุกอย่างทำงานได้ดีหรือไม่

เมื่อดาวน์โหลดและติดตั้งซอฟต์แวร์ทั้งหมด:

  • เปิดเครื่องรูด ESP8266_Gmail_Sender.zip
  • ค้นหาและเปิด ESP8266_Gmail_Sender.ino
  • ตั้งชื่อจุดเชื่อมต่อ wifi (SSID) และรหัสผ่าน ควรเป็นดังนี้:

const char* ssid = "MyWiFi";

รหัสผ่าน const char* = "12345678";

ในฟังก์ชัน setup() find

if(gsender->Subject(subject)->Send("[email protected]", "การทดสอบการตั้งค่า"))

พารามิเตอร์แรกของฟังก์ชัน Send() คืออีเมลผู้รับ ข้อความข้อความที่สอง

เปลี่ยนผู้รับจาก [email protected] เป็นอีเมลของคุณซึ่งจะได้รับข้อความ

ฉันได้รับอีเมลมากมายทุกวันเพราะพวกคุณบางคนไม่ใส่ใจ โปรดอย่าลืมเปลี่ยนอีเมลผู้รับ

ฟังก์ชันหัวเรื่องเป็นตัวเลือก! วัตถุตั้งค่าครั้งเดียวและเก็บไว้จนกว่าคุณจะเปลี่ยน

คุณสามารถส่งอีเมลโดยไม่มีหัวเรื่องหรือหากตั้งไว้แล้ว

gsender->ส่ง(ถึง, ข้อความ);

ตอนนี้เปิดแท็บ Gsender.h

เราต้องการที่อยู่อีเมลและรหัสผ่านที่เข้ารหัส Base64 ของบัญชี Gmail ซึ่งจะใช้ในการส่งอีเมล

คุณสามารถใช้ base64encode.org ในการเข้ารหัสได้ ผลลัพธ์จะต้องเป็นดังนี้:

อักขระ const* EMAILBASE64_LOGIN = "Y29zbWkxMTExMUBnbWFpbC5jb20=";

อักขระ const* EMAILBASE64_PASSWORD = "TGFzZGFzZDEyMzI=";

ตอนนี้ตั้งค่าฟิลด์ FROM

const char* FROM = "[email protected]";

นั่นคือทั้งหมดสำหรับส่วนนี้

ขั้นตอนที่ 3: การอัปโหลดและทดสอบโค้ด

การอัพโหลดและทดสอบโค้ด
การอัพโหลดและทดสอบโค้ด
การอัพโหลดและทดสอบโค้ด
การอัพโหลดและทดสอบโค้ด

บันทึกการเปลี่ยนแปลง. อย่าลืมตั้งค่าบอร์ดของคุณในเมนูเครื่องมือ

อัปโหลดภาพร่างไปยังบอร์ด ESP8266 ของคุณ

เปิด Serial monitor บอร์ดจะพิมพ์ข้อความบันทึก

นั่นคือทั้งหมดที่ฉันหวังว่าคุณจะได้รับ "ส่งข้อความ" ขอบคุณ…