ไลบรารีการสร้างและประมวลผลอีเมล Ruby โอเพ่นซอร์ส

Free Ruby API ที่อนุญาตให้แอป Ruby เข้าถึงและจัดการบัญชี Gmail ผ่าน IMAP. เขียน, ส่ง, เก็บถาวร, ย้ายและลบข้อความอีเมลผ่านไลบรารี Ruby.

Ruby-Gmail Library คืออะไร?

ในยุคที่อีเมลยังคงมีบทบาทสำคัญในกระบวนการสื่อสาร นักพัฒนาซอฟต์แวร์มักต้องโต้ตอบกับ Gmail อย่างโปรแกรมเมติก ไม่ว่าจะเป็นการดึงรายงาน, ส่งการแจ้งเตือนอัตโนมัติ, หรือการตรวจสอบกล่องขาเข้า การมีเครื่องมือที่เหมาะสมสามารถประหยัดเวลาหลายชั่วโมงได้ Ruby-Gmail เป็นเจ็ม Ruby แบบโอเพ่นซอร์สที่ให้ส่วนต่อประสานแบบง่ายและคล้าย Ruby กับ Gmail ผ่านโปรโตคอล IMAP สร้างโดยนักพัฒนา dcparker ไลบรารีนี้ทำให้ซับซ้อนของการจัดการคำสั่ง IMAP ดิบหายไปและให้เมธอดที่อ่านง่ายและแสดงออกได้เพื่อทำงานกับกล่องขาเข้า Gmail, อีเมล, ป้ายกำกับ, ไฟล์แนบและอื่น ๆ อีกมาก ด้วยเพียงไม่กี่บรรทัดของโค้ด Ruby นักพัฒนาซอฟต์แวร์สามารถสร้างและส่งข้อความอีเมลแบบหลายส่วนในรูปแบบข้อความธรรมดาและ/หรือ HTML พร้อมภาพในบรรทัดและไฟล์แนบได้

Ruby-Gmail เป็นอัญมณีที่ซ่อนอยู่สำหรับ Rubyist ที่ต้องการอินเทอร์เฟซที่เรียบง่ายและสง่างามเพื่อทำงานอัตโนมัติกับ Gmail ไลบรารีนี้มีคุณสมบัติต่าง ๆ สำหรับการทำงานกับอีเมลของ Gmail เช่น การยืนยันตัวตนกับ Gmail, อ่าน, ค้นหา หรือกรองอีเมล, ร่างและส่งข้อความ, ลบหรือเอาอีเมลออก, เก็บถาวรข้อความ, เข้าถึงไฟล์แนบของอีเมล, จัดระเบียบอีเมลด้วยป้ายกำกับ ฯลฯ การพัฒนาอย่างต่อเนื่องและลักษณะโอเพ่นซอร์สของไลบรารีหมายความว่ามันจะปรับปรุงและปรับตัวตามการเปลี่ยนแปลงของ API ของ Gmail อย่างต่อเนื่อง นอกจากคุณสมบัติที่ยอดเยี่ยมแล้ว ยังมีข้อจำกัดบางอย่าง เช่น OAuth2 ยังไม่รองรับและพึ่งพา IMAP ซึ่งอาจไม่เปิดเผยคุณลักษณะเฉพาะของ Gmail ทั้งหมด มันเหมาะอย่างยิ่งสำหรับงานสคริปต์หรือการรวม Gmail เข้ากับแอปพลิเคชัน Ruby ที่มีน้ำหนักเบา

Previous Next

เริ่มต้นใช้งาน Mail

วิธีที่ง่ายที่สุดในการติดตั้งไลบรารี Ruby-Gmail คือผ่าน RubyGems โปรดใช้คำสั่งต่อไปนี้สำหรับการติดตั้งอย่างง่าย

ติดตั้ง Ruby-Gmail ผ่าน Rubygems

gem install gmail

การตรวจสอบความถูกต้องของอีเมลในแอป Ruby

ไลบรารี Ruby-Gmail แบบโอเพ่นซอร์สรองรับหลายวิธีการตรวจสอบสิทธิ์รวมถึง OAuth2 และชื่อผู้ใช้/รหัสผ่านแบบธรรมดา มันอนุญาตให้เข้าสู่ระบบอย่างง่ายโดยใช้ที่อยู่อีเมล Gmail และรหัสผ่านหรือรหัสผ่านเฉพาะแอป (แนะนำสำหรับบัญชีที่เปิดใช้การยืนยันสองขั้นตอน) อีกทางเลือกหนึ่ง หากคุณต้องการใช้ OAuth หรือจัดการการเข้าสู่ระบบนอกสคริปต์ Ruby-Gmail รองรับการเชื่อมต่อแบบบล็อก โปรดทราบเพื่อความปลอดภัย ควรหลีกเลี่ยงการฝังรหัสผ่านโดยตรง; ใช้ตัวแปรสภาพแวดล้อมหรือการจัดการความลับ ตัวอย่างโค้ดต่อไปนี้แสดงวิธีทั้งสองสำหรับการจัดการการตรวจสอบสิทธิ์อีเมลผ่าน Ruby API.

วิธีทำการตรวจสอบอีเมลแบบพื้นฐานและ OAuth2 ภายในแอป Ruby?

require 'gmail'

# Basic authentication (less secure)
gmail = Gmail.connect(username, password)

# OAuth2 authentication (recommended)
gmail = Gmail.connect(:oauth2, username, access_token)

ค้นหาและกรองอีเมลผ่าน Ruby API

ไลบรารี Ruby-Gmail ได้ให้ฟังก์ชันครบถ้วนสำหรับการอ่านและค้นหาข้อความอีเมลภายในแอปพลิเคชัน Ruby อย่างง่ายดาย นักพัฒนาสามารถเข้าถึงกล่องขาเข้า, ข้อความที่ยังไม่ได้อ่าน, หรือค้นหาตามหัวเรื่อง, ผู้ส่ง, หรือวันที่ได้อย่างสะดวก ไลบรารีมอบอินเทอร์เฟซการค้นหาที่แข็งแรงซึ่งจำลองการทำงานของตัวดำเนินการค้นหาของ Gmail ตัวอย่างต่อไปนี้แสดงให้เห็นว่านักพัฒนาซอฟต์แวร์สามารถใช้วิธีต่าง ๆ ในการค้นหาข้อความอีเมลภายในแอป Ruby ได้อย่างไร

วิธีค้นหาข้อความอีเมลใน Gmail ผ่าน Ruby API?

# Search for unread emails from a specific sender
emails = gmail.inbox.emails(:unread, from: 'notifications@example.com')

# Search by subject
emails = gmail.inbox.emails(subject: 'Your monthly report')

# Complex searches
emails = gmail.inbox.emails(after: Date.parse('2023-01-01'), 
                           before: Date.parse('2023-01-31'),
                           has: 'attachment')

การเขียนและส่งอีเมลผ่าน Ruby

ไลบรารี Ruby-Gmail แบบโอเพ่นซอร์สได้ให้การสนับสนุนเต็มรูปแบบสำหรับการสร้างและส่งข้อความอีเมลด้วยเพียงไม่กี่บรรทัดของโค้ด Ruby ไลบรารีทำให้การเขียนและส่งอีเมลเป็นเรื่องง่ายโดยอนุญาตให้เพิ่มเนื้อหา HTML ไฟล์และรูปภาพเป็นไฟล์แนบ ส่งอีเมลจำนวนมาก ใช้สไตล์และการจัดรูปแบบ ฯลฯ ตัวอย่างต่อไปนี้แสดงว่าผู้พัฒนาซอฟต์แวร์สามารถเพิ่มเนื้อหา HTML และไฟล์แนบไปยังข้อความอีเมลภายในแอป Ruby ได้อย่างไร

วิธีเพิ่มเนื้อหา HTML และไฟล์แนบลงในข้อความอีเมลผ่านแอป Ruby?

gmail.deliver do
  to "recipient@example.com"
  subject "Hello from Ruby-Gmail"
  text_part do
    body "This is a test email sent using Ruby-Gmail."
  end
end

# add HTML content and attachments
gmail.deliver do
  to "recipient@example.com"
  subject "Invoice Attached"
  text_part do
    body "Please see the attached invoice."
  end
  add_file "/path/to/invoice.pdf"
end

จัดเก็บ, ลบ, และย้ายอีเมลผ่าน Ruby API

ไลบรารี Ruby-Gmail มีคุณสมบัติมากมายและสามารถจัดการการดำเนินการวงจรชีวิตของอีเมลได้อย่างราบรื่นภายในแอปพลิเคชัน Ruby ผู้พัฒนาซอฟต์แวร์สามารถจัดการอีเมลได้ง่ายโดยการย้าย, ใส่ป้ายกำกับ, ทำเครื่องหมายว่าอ่าน/ยังไม่ได้อ่าน ฯลฯ พวกเขายังสามารถทำเครื่องหมายอีเมลว่าเป็นดาว, ยังไม่ได้อ่าน หรือแม้กระทั่งย้ายไปยังโฟลเดอร์ต่างๆ ตัวอย่างโค้ด Ruby ด้านล่างแสดงวิธีทำเครื่องหมายอีเมล, เพิ่มป้ายกำกับและย้ายไปยังโฟลเดอร์ภายในแอป Ruby

วิธีทำเครื่องหมายอีเมล, เพิ่มป้ายกำกับและย้ายไปยังโฟลเดอร์เฉพาะผ่านไลบรารี Ruby?

email = gmail.inbox.emails.first

# Mark as read/unread
email.read!
email.unread!

# Add/remove labels
email.label('Important')
email.remove_label('Important')

# Move to folder
email.move_to('Archive')
 ไทย