API Ruby open source per controllare il tracciamento delle email e lo stato di consegna
Postal è un'API mail completa e una piattaforma di consegna progettata per gestire sia le email in entrata che in uscita per siti web, app e per controllare il tracciamento delle email e lo stato di consegna.
Che cos'è la Libreria Postal?
Nell'odierno panorama digitale, una comunicazione email efficace è più cruciale che mai. Che tu stia inviando email transazionali, campagne di marketing o notifiche di routine, una piattaforma di consegna email affidabile e scalabile è essenziale. Mentre servizi proprietari come SendGrid e Mailgun dominano il mercato, un'alternativa open source potente sta facendo parlare di sé: Postal. Il gem Postal Ruby è una libreria client Ruby mantenuta dalla comunità che fornisce un'interfaccia per utilizzare la piattaforma di consegna email Postal. Consente alle applicazioni Ruby (e Rails) di integrarsi con Postal tramite la sua API HTTP. È progettato pensando agli sviluppatori Ruby. Non si limita a incapsulare gli endpoint dell'API; fornisce un'interfaccia orientata agli oggetti che risulta naturale nel contesto Ruby.
Postal è una piattaforma completa, ricca di funzionalità, open-source per la consegna di posta per siti web e server web. Pensala come il tuo SendGrid o Mailgun privato, in esecuzione sui tuoi server. Questo ti dà il controllo totale sull'invio delle email, sui dati e sulla reputazione. Sviluppato con Ruby e supportato da un solido insieme di tecnologie, Postal è progettato per prestazioni, scalabilità e facilità d'uso. Fornisce un'interfaccia web completa per gestire i tuoi server di posta, visualizzare i log e monitorare le prestazioni, offrendo al contempo un'API potente per un'integrazione fluida con le tue applicazioni.
Iniziare con Postal
Il modo più semplice per installare la libreria Postal è tramite RubyGems. Per favore utilizza il comando seguente per un'installazione facile.
Installa Postal tramite Rubygems
gem install 'postal-ruby'Inviare un'email di base tramite l'API Ruby
Le API Postal open source hanno incluso il supporto completo per l'invio di messaggi email in vari modi. Gli sviluppatori Ruby possono inviare email in diversi modi, adattandosi a diversi livelli di complessità. Simple Hash è perfetto per invii rapidi con parametri di base. Il testo semplice e l'HTML possono essere usati per inviare email multipart. Supporta anche l'allegato di file senza sforzo ai tuoi messaggi email e così via. Il seguente esempio dimostra il modo più semplice per inviare un'email.
Come inviare un'email semplice usando l'API Ruby?
# 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}"
Controllare il tracciamento delle email e lo stato di consegna
Monitora le aperture e i click delle email per valutare l'efficacia delle tue campagne. Le API Postal forniscono funzionalità complete per tracciare i tuoi messaggi email all'interno delle applicazioni Ruby. Dopo aver inviato un'email, puoi utilizzare il message_id restituito per verificare il suo stato attuale. Monitora le aperture e i click delle email per valutare l'efficacia delle tue campagne. Il seguente esempio mostra come verificare lo stato di consegna dei messaggi email usando comandi Ruby.
Come verificare lo stato di consegna del messaggio email tramite l'API Ruby?
# 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
Inviare un'email HTML avanzata con un allegato
Le email moderne spesso richiedono formattazione HTML e allegati. L'API email open source Postal semplifica per gli sviluppatori software la creazione e l'invio di messaggi email HTML ricchi dalle loro applicazioni Ruby. È una buona pratica includere sempre una versione in testo semplice per i client email che non supportano l'HTML. È possibile passare un array di oggetti File per allegare documenti, immagini, ecc. Ecco un esempio di codice molto utile che mostra come gli sviluppatori software possano creare e inviare messaggi email HTML con allegati utilizzando l'API Ruby.
Come inviare un'email HTML ricca con allegato tramite l'API Ruby?
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}"