1. Produkter
  2.   E-post
  3.   Ruby
  4.   Postal
 
  

Öppen källkod Ruby-API för att kontrollera e-postspårning och leveransstatus

Postal är ett fullutrustat e-post-API och leveransplattform som är utformad för att hantera både inkommande och utgående e-post för webbplatser, appar och kontrollera e-postspårning och leveransstatus.

Vad är Postal Library?

I dagens digitala landskap är effektiv e‑postkommunikation viktigare än någonsin. Oavsett om du skickar transaktionsmail, marknadsföringskampanjer eller rutinmässiga aviseringar, är en pålitlig och skalbar e‑postleveransplattform avgörande. Medan proprietära tjänster som SendGrid och Mailgun dominerar marknaden, gör ett kraftfullt open‑source‑alternativ vågor: Postal. Postal Ruby‑gemet är ett gemenskapsunderhållet Ruby‑klientbibliotek som erbjuder ett gränssnitt för att använda Postal‑plattformen för e‑postleverans. Det låter Ruby‑ (och Rails‑)applikationer integrera med Postal via dess HTTP‑API. Det är designat med Ruby‑utvecklare i åtanke. Det omsluter inte bara API‑endpunkterna; det tillhandahåller ett objektorienterat gränssnitt som känns naturligt i en Ruby‑kontext.

Postal är en komplett, fullt utrustad, öppen källkod e-postleveransplattform för webbplatser och webbservrar. Tänk på den som din egen privata SendGrid eller Mailgun, som körs på dina egna servrar. Detta ger dig full kontroll över din e-postutskick, data och rykte. Utvecklad med Ruby och stödd av en robust uppsättning teknologier, är Postal designad för prestanda, skalbarhet och användarvänlighet. Den erbjuder ett omfattande webbgränssnitt för att hantera dina e-postservrar, visa loggar och spåra prestanda, samtidigt som den tillhandahåller ett kraftfullt API för sömlös integration med dina applikationer.

Previous Next

Komma igång med Postal

Det enklaste sättet att installera Postal-biblioteket är via RubyGems. Använd följande kommando för enkel installation.

Installera Postal via Rubygems

 gem install 'postal-ruby'

Skicka ett grundläggande e‑postmeddelande via Ruby API

De öppna källkodens Postal API:er har inkluderat fullständigt stöd för att skicka e‑postmeddelanden på olika sätt. Ruby‑utvecklare kan skicka e‑post på flera sätt, anpassade för olika komplexitetsnivåer. Simple Hash är perfekt för snabba utskick med grundläggande parametrar. Vanlig text och HTML kan användas för att skicka multipart‑e‑post. Det stöder också att bifoga filer utan ansträngning till dina e‑postmeddelanden och så vidare. Följande exempel visar det enklaste sättet att skicka ett e‑postmeddelande.

Hur skickar du ett enkelt e‑postmeddelande med 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}"

Kontrollera e‑postspårning och leveransstatus

Övervaka e‑postöppningar och klick för att bedöma effektiviteten i dina kampanjer. Postal API:erna har tillhandahållit fullständig funktionalitet för att spåra dina e‑postmeddelanden i Ruby‑applikationer. Efter att ha skickat ett e‑postmeddelande kan du använda det returnerade message_id för att kontrollera dess aktuella status. Övervaka e‑postöppningar och klick för att bedöma effektiviteten i dina kampanjer. Följande exempel visar hur du kontrollerar leveransstatus för e‑postmeddelanden med Ruby‑kommandon.

Hur kontrollerar du leveransstatus för e‑postmeddelanden via 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

Skicka ett rikt HTML‑e‑postmeddelande med en bilaga

Moderna e‑postmeddelanden kräver ofta HTML‑formattering och bilagor. Den öppna källkods‑Postal e‑post‑API:n gör det enkelt för mjukvaruutvecklare att skapa och skicka Rich HTML Email‑meddelanden från sina Ruby‑applikationer. Det är en bästa praxis att alltid inkludera en ren textversion för e‑postklienter som inte stöder HTML. Du kan skicka en array av File‑objekt för att bifoga dokument, bilder osv. Här är ett mycket användbart kodexempel som visar hur mjukvaruutvecklare kan skapa och skicka HTML‑e‑postmeddelanden med bilagor med hjälp av Ruby API.

Hur skickar du ett rikt HTML‑e‑postmeddelande med en bilaga via 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}"
 Svenska