Otwartoźródłowe API Ruby do sprawdzania śledzenia e‑maili i statusu dostawy
Postal to w pełni funkcjonalne API poczty i platforma dostarczania zaprojektowana do obsługi zarówno przychodzących, jak i wychodzących e‑maili dla stron internetowych, aplikacji oraz sprawdzania śledzenia e‑maili i statusu dostawy.
Czym jest Biblioteka Postal?
W dzisiejszym cyfrowym krajobrazie skuteczna komunikacja e‑mailowa jest ważniejsza niż kiedykolwiek. Niezależnie od tego, czy wysyłasz e‑maile transakcyjne, kampanie marketingowe, czy rutynowe powiadomienia, niezbędna jest niezawodna i skalowalna platforma dostarczania e‑maili. Choć własnościowe usługi takie jak SendGrid i Mailgun dominują rynek, potężna alternatywa open‑source zdobywa popularność: Postal. Gem Postal Ruby to utrzymana przez społeczność biblioteka kliencka Ruby, która zapewnia interfejs do korzystania z platformy dostarczania e‑maili Postal. Umożliwia aplikacjom Ruby (i Rails) integrację z Postal poprzez jego API HTTP. Została zaprojektowana z myślą o programistach Ruby. Nie tylko opakowuje endpointy API; oferuje obiektowo‑oriented interfejs, który naturalnie wpisuje się w kontekst Ruby.
Postal jest kompletną, w pełni funkcjonalną, otwarto‑źródłową platformą dostarczania poczty dla stron internetowych i serwerów WWW. Można ją porównać do własnego prywatnego SendGrid lub Mailgun, działającego na własnych serwerach. Daje to pełną kontrolę nad wysyłką e‑maili, danymi i reputacją. Opracowany w Ruby i wspierany przez solidny zestaw technologii, Postal został zaprojektowany pod kątem wydajności, skalowalności i łatwości użycia. Oferuje kompleksowy interfejs webowy do zarządzania serwerami poczty, przeglądania logów i monitorowania wydajności, a także potężne API umożliwiające płynną integrację z aplikacjami.
Rozpoczęcie pracy z Postal
Najłatwiejszy sposób instalacji biblioteki Postal to RubyGems. Proszę użyć następującego polecenia, aby łatwo zainstalować.
Zainstaluj Postal przez Rubygems
gem install 'postal-ruby'Wysyłanie podstawowego e‑maila za pomocą Ruby API
Open source'owe API Postal zawierają pełne wsparcie dla wysyłania wiadomości e-mail na różne sposoby. Programiści Ruby mogą wysyłać e-maile na wiele sposobów, dostosowując się do różnych poziomów złożoności. Simple Hash jest idealny do szybkich wysyłek z podstawowymi parametrami. Tekst zwykły i HTML mogą być używane do wysyłania wieloczęściowych e-maili. Obsługuje także łatwe dołączanie plików do wiadomości e-mail i tak dalej. Poniższy przykład demonstruje najprostszy sposób wysłania e-maila.
Jak wysłać prostą wiadomość e‑mail przy użyciu Ruby API?
# Create a client instance
client = Postal::Client.new
# Send a message using a hash of parameters
message = client.send_message(
from: 'noreply@yourdomain.com',
to: 'customer@example.com',
subject: 'Welcome to Our Service!',
body: 'Thank you for signing up. We are excited to have you on board.'
)
# The response contains the message ID, which you can use for tracking
puts "Message sent! ID: #{message.message_id}"
Sprawdź śledzenie e‑maili i status dostawy
Monitoruj otwarcia i kliknięcia e-maili, aby ocenić skuteczność swoich kampanii. API Postal zapewnia pełną funkcjonalność śledzenia wiadomości e-mail w aplikacjach Ruby. Po wysłaniu e-maila możesz użyć zwróconego message_id, aby sprawdzić jego aktualny status. Monitoruj otwarcia i kliknięcia e-maili, aby ocenić skuteczność swoich kampanii. Poniższy przykład pokazuje, jak sprawdzić status dostarczenia wiadomości e-mail przy użyciu poleceń Ruby.
Jak sprawdzić status dostarczenia wiadomości e‑mail za pomocą Ruby API?
# Assume you've stored the message_id from the send operation
stored_message_id = '01G5XYZABCDEF1234567890'
# Get the message details from Postal
message_details = client.get_message(stored_message_id)
# Check the delivery status
puts "Message Status: #{message_details.status}"
# Inspect the raw message (as received by the destination server)
puts "Raw Message: #{message_details.raw_message}"
# Check if the email has been opened
if message_details.opens.any?
puts "The email was opened #{message_details.opens.count} time(s)."
end
Wysyłanie bogatego e‑maila HTML z załącznikiem
Nowoczesne e-maile często wymagają formatowania HTML i załączników. Otwarta platforma Postal email API ułatwia programistom tworzenie i wysyłanie bogatych wiadomości HTML z ich aplikacji Ruby. Zaleca się zawsze dołączać wersję tekstową dla klientów poczty, które nie obsługują HTML. Można przekazać tablicę obiektów File, aby dołączyć dokumenty, obrazy itp. Oto bardzo przydatny przykład kodu, który pokazuje, jak programiści mogą tworzyć i wysyłać wiadomości e-mail w formacie HTML z załącznikami przy użyciu Ruby API.
Jak wysłać bogaty e‑mail HTML z załącznikiem przy użyciu Ruby API?
client = Postal::Client.new
message = client.send_message(
from: 'orders@yourdomain.com',
to: 'customer@example.com',
subject: 'Your Order Confirmation #12345',
html_body: File.read('path/to/order_confirmation.html'), # Load HTML from a file
plain_body: 'Thank you for your order. Your order number is #12345.', # Fallback text
attachments: [
File.open('/path/to/invoice_12345.pdf') # Attach a file
]
)
puts "Rich email sent with attachment! ID: #{message.message_id}"