Open source Ruby API om e-mailtracking en bezorgstatus te controleren
Postal is een volledig uitgeruste mail-API en bezorgplatform ontworpen om zowel inkomende als uitgaande e-mails voor websites, apps en het controleren van e-mailtracking en bezorgstatus af te handelen.
Wat is Postal Library?
In het digitale landschap van vandaag is effectieve e-mailcommunicatie belangrijker dan ooit. Of je nu transactionele e-mails, marketingcampagnes of routinematige meldingen verstuurt, een betrouwbaar en schaalbaar e-mailleveringsplatform is essentieel. Terwijl propriëtaire diensten zoals SendGrid en Mailgun de markt domineren, maakt een krachtig open‑source‑alternatief furore: Postal. De Postal Ruby‑gem is een door de gemeenschap onderhouden Ruby‑clientbibliotheek die een interface biedt voor het gebruik van het Postal e-mailleveringsplatform. Het stelt Ruby‑ (en Rails‑)toepassingen in staat om via de HTTP‑API met Postal te integreren. Het is ontworpen met Ruby‑ontwikkelaars in gedachten. Het wikkelt niet alleen de API‑eindpunten in; het biedt een objectgeoriënteerde interface die natuurlijk aanvoelt binnen een Ruby‑context.
Postal is een compleet, volledig uitgerust, open-source e-mailbezorgplatform voor websites en webservers. Beschouw het als uw eigen private SendGrid of Mailgun, draaiend op uw eigen servers. Dit geeft u volledige controle over het verzenden van e-mails, gegevens en reputatie. Ontwikkeld met Ruby en ondersteund door een robuuste reeks technologieën, is Postal ontworpen voor prestaties, schaalbaarheid en gebruiksgemak. Het biedt een uitgebreide webinterface om uw mailservers te beheren, logboeken te bekijken en de prestaties te volgen, terwijl het een krachtige API biedt voor naadloze integratie met uw applicaties.
Aan de slag met Postal
De eenvoudigste manier om de Postal-bibliotheek te installeren is via RubyGems. Gebruik alstublieft het volgende commando voor een eenvoudige installatie.
Installeer Postal via Rubygems
gem install 'postal-ruby'Een basis-e-mail verzenden via Ruby API
De open source Postal API's hebben volledige ondersteuning voor het verzenden van e-mailberichten op verschillende manieren. Ruby-ontwikkelaars kunnen e-mails op meerdere manieren verzenden, afgestemd op verschillende complexiteitsniveaus. Simple Hash is perfect voor snelle verzendingen met basisparameters. Platte tekst en HTML kunnen worden gebruikt om multipart-e-mails te verzenden. Het ondersteunt ook het moeiteloos bijvoegen van bestanden aan uw e-mailberichten en meer. Het volgende voorbeeld toont de eenvoudigste manier om een e-mail te verzenden.
Hoe stuur je een eenvoudige e-mail met de 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}"
E-mailtracking en afleverstatus controleren
Monitor e-mailopeningen en klikken om de effectiviteit van uw campagnes te meten. De Postal API's bieden volledige functionaliteit voor het bijhouden van uw e-mailberichten binnen Ruby-toepassingen. Na het verzenden van een e-mail kunt u de geretourneerde message_id gebruiken om de huidige status te controleren. Monitor e-mailopeningen en klikken om de effectiviteit van uw campagnes te meten. Het volgende voorbeeld laat zien hoe u de leveringsstatus van e-mailberichten kunt controleren met Ruby-commando's.
Hoe controleer je de afleverstatus van e-mailberichten via de 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
Een rijke HTML-e-mail verzenden met een bijlage
Moderne e-mails vereisen vaak HTML-opmaak en bijlagen. De open‑source Postal e‑mail‑API maakt het eenvoudig voor softwareontwikkelaars om rijke HTML‑e‑mailberichten vanuit hun Ruby‑toepassingen te maken en te verzenden. Het is een best practice om altijd een platte‑tekstversie op te nemen voor e‑mailclients die geen HTML ondersteunen. Je kunt een array van File‑objecten doorgeven om documenten, afbeeldingen, enz. bij te voegen. Hier is een zeer nuttig code‑voorbeeld dat laat zien hoe softwareontwikkelaars HTML‑e‑mailberichten met bijlagen kunnen maken en verzenden met de Ruby‑API.
Hoe stuur je een rijke HTML-e-mail met een bijlage via de 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}"