*
Mailgun là một trong những khối hệ thống các API mạnh bạo, cung ứng câu hỏi gửi, dấn với quản lý những email từ hệ thống của chúng ta cho tới các email được gửi từ các hình thức tin nhắn không giống. Trong bài viết này, chúng ta sẽ xây dựng một tkhối hệ thống email nội cỗ dựa trên một số trong những tính năng nhưng Mailgun hỗ trợ.

Bạn đang xem: Mailgun là gì

Tạo thông tin tài khoản với cấu hình Mailgun

Chúng ta vào liên can của mailgun với đi cho đường truyền này nhằm tạo nên mình một thông tin tài khoản. Sau Lúc điền không thiếu các lên tiếng cần thiết, Mailgun vẫn gửi một gmail xác nhận. Việc tiếp theo tất nhiên sẽ là đánh giá email và làm theo lí giải để kích hoạt tài khoản Mailgun.

Sau khi sẽ kích hoạt tài khoản với singin thành công, bọn họ sẽ tiến hành gửi mang lại trang quản lí trị của Mailgun. Mặc định Mailgun hỗ trợ mang lại chúng ta một tên miền để hỗ trợ đến vấn đề test trong quá trình trở nên tân tiến. Nếu nhỏng đã bao gồm một hệ thống SMTPhường riêng, họ trọn vẹn có thể chế tác mới hoặc sửa chữa thay thế tên miền mặc định đó.

*

Hệ thống mail sẽ được xây đắp dựa vào ý tưởng giữ giàng toàn thể đầy đủ gmail gửi đi cũng như những email từ những khối hệ thống khác gửi về. Việc lưu giữ các email gửi đi từ khối hệ thống đơn giản và dễ dàng chỉ với việc tạo new một bản ghi vào bảng email. Vậy còn chiều trở lại, Lúc tất cả một tin nhắn trường đoản cú phía bên ngoài gửi về, làm cho giải pháp như thế nào chúng ta cũng có thể lưu giữ này lại trong khối hệ thống của mình? Với Routes của Mailgun, họ vẫn tất cả chiến thuật mang đến vấn đề đó. Mỗi một route vẫn giống hệt như một bộ thanh lọc, tính năng thiết yếu của nó là chuyển tiếp (Forward) các tin nhắn mà nó nhận thấy (Catch All) mang lại một thúc đẩy tin nhắn hay 1 url nào kia hoặc đơn giản dễ dàng là chẳng làm những gì cả nếu khách hàng coi đó là 1 trong những tin nhắn rác rưởi.

*

Chúng ta vào đường truyền này nhằm chế tạo ra mới một route. Trong screen chế tạo ra mới route có 3 trường quan trọng đặc biệt độc nhất vô nhị cơ mà họ buộc phải giữ ý:

Expression Type: Là bộ thanh lọc khẳng định một tin nhắn là hòa hợp lệ hay không.Actions: Hành đụng sẽ được tiến hành khi một gmail gửi mang lại là cân xứng cùng với cỗ lọc ở trên. Mặc định, tin nhắn sẽ tiến hành nối tiếp vào url nhưng bọn họ hướng đẫn vào trường Forward.Priority: Trong ngôi trường hợp chúng ta có nhiều route và một tin nhắn hoàn toàn có thể là đúng theo lệ với khá nhiều route trong số kia thì đấy là ở trong tính nhằm xác định coi email đó sẽ tiến hành ưu tiên xử lý làm việc route làm sao trước.

vì thế họ sẽ dứt xong Việc cấu hình Mailgun, việc còn lại là chế tạo hệ thống gmail của riêng biệt mình

Xây dựng khối hệ thống email

Trong phần này, họ sẽ áp dụng framework Ruby on Rails nhằm minch họa đến việc triển khai.

Xem thêm: Multimedia Là Gì - Định Nghĩa Chính Xác Của Multimedia &Raquo Cmay

1. Lưu trữ email

Tạo bảng gmail bao gồm các ngôi trường lớn, cc, bcc, subject...Các trường của bảng này là tùy thuộc vào mục đích của hệ thống đào bới dẫu vậy đề xuất luôn bảo đảm được xem bảo mật thông tin và thuận tiện khẳng định được fan gửi, fan dìm vào loại gmail tương ứng.

Người cần sử dụng trong hệ thống sẽ sở hữu một gmail riêng rẽ tất cả dạng . Phải chắc chắn là là chúng ta vẫn đăng ký domain name của chính bản thân mình trong phần Domain trên Maingun.

2. Gửi mail qua Mailgun

Mặc định ActionMailer của Rails sử dụng deliver_method là :smpt, để thực hiện với Mailgun, bọn họ đề xuất sửa lại config nlỗi sau:

config.action_mailer.delivery_method = :mailgunconfig.action_mailer.mailgun_settings = api_key: ENV<"MAILGUN_API_KEY">, domain: ENV<"MAILGUN_DOMAIN">,Để dễ dàng mang đến câu hỏi gửi và lưu giữ email, chúng ta tạo nên một class để tiến hành các bước này:

class UserMailer ActionMailer::Base def send_mail tin nhắn mail to: gmail.khổng lồ, subject: email.subject email.save endendChúng ta tạo nên một object gmail tương ứng với các biết tin nhưng mà người dùng ước muốn, tin nhắn này sẽ tiến hành auto lưu giữ ngay sau thời điểm nó được gửi đi.

3. Nhận mail về hệ thống

lúc bao gồm một tin nhắn nào đó gửi mang lại một xúc tiến bao gồm dạng , Mailgun vẫn bắt được nó trải qua cỗ lọc cơ mà bọn họ đang thiết lập, tiếp nối nó sẽ chọn lọc những action tương xứng. Trong trường vừa lòng này, gmail sẽ được forward về một url trỏ cho một controller nhưng họ đã khẳng định từ bỏ trước. Tại trên đây tin nhắn sẽ tiến hành xử trí và giữ vào database.

Để có thể kiểm tra được vào quy trình cải tiến và phát triển, họ đang yêu cầu áp dụng ngrok nhằm public xúc tiến local ra phía bên ngoài, hệ trọng kia thông thường sẽ có dạng http://872f67bd.ngrok.io. Cùng với kia họ sẽ áp dụng domain mặc định mà Mailgun sẽ tạo thành sau khoản thời gian ĐK thông tin tài khoản. Domain này thông thường sẽ có dạng sandbox123xyz.mailgun.org. Đến phía trên, họ đang hoàn toàn có thể cần sử dụng tin nhắn cá thể để gửi một gmail vào ảnh hưởng ngẫu nhiên, giải sử đó là

Sau Lúc nhận thấy email, Mailgun sẽ tạo một request với method là POST tới url mà lại chúng ta đã quan niệm.

*

Trong trường phù hợp này chúng ta hy vọng Mailgun gửi request về đến EmailsController thì trong phần fowards liên hệ url đã là http://872f67bd.ngrok.io/emails

class EmailsController ApplicationController def create ReceiveEmailFromMailgun.new(params).perkhung endendService ReceiveEmailFromMailgun sẽ có nhiệm vụ dìm xử lý params được gửi tử Mailgun và giữ gmail vào vào hệ thống.

Xem thêm: Deferred Revenue Là Gì ? Định Nghĩa Và Giải Thích Ý Nghĩa Deferred Revenue Là Gì

class ReceiveEmailFromMailgun def initialize params
params = params kết thúc def persize ActiveRecord::Base.transaction vị users.each clone_tin nhắn user kết thúc true rescue false kết thúc private attr_reader :params def clone_gmail user email = user.emails.build email_params(user) if tin nhắn.valid? email.update_attribute :attachments, email_attachments else raise ActiveRecord::Invalid end over def users

Summary

do vậy bọn họ đang cùng cả nhà đi kiếm phát âm về kiểu cách áp dụng Mailgun để xây dừng hệ thống gửi nhận mail cho riêng rẽ mình. Tùy vào công dụng cùng thử khám phá của từng khối hệ thống mà lại cấu tạo cũng tương tự các phương thức được sử dụng rất có thể vẫn khác biệt. Bài viết trình làng một trong những vào không hề ít những tính năng trẻ trung và tràn đầy năng lượng mà Mailgun hỗ trợ. Hi vọng nó đang bổ ích khi chúng ta nên tạo một khối hệ thống email mà lại chúng ta cũng có thể dữ thế chủ động trong việc thống trị nó.


Chuyên mục: KHÁI NIỆM LÀ GÌ
Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *