API Ruby de código abierto para verificar el seguimiento de correos electrónicos y el estado de entrega
Postal es una API de correo y plataforma de entrega con todas las funciones, diseñada para gestionar tanto correos entrantes como salientes para sitios web, aplicaciones y verificar el seguimiento de correos electrónicos y el estado de entrega.
¿Qué es Postal Library?
En el panorama digital actual, la comunicación por correo electrónico eficaz es más crucial que nunca. Ya sea que estés enviando correos electrónicos transaccionales, campañas de marketing o notificaciones rutinarias, una plataforma de entrega de correo fiable y escalable es esencial. Mientras servicios propietarios como SendGrid y Mailgun dominan el mercado, una poderosa alternativa de código abierto está ganando terreno: Postal. La gema Postal Ruby es una biblioteca cliente de Ruby mantenida por la comunidad que proporciona una interfaz para usar la plataforma de entrega de correo Postal. Permite que aplicaciones Ruby (y Rails) se integren con Postal a través de su API HTTP. Está diseñada pensando en los desarrolladores Ruby. No solo envuelve los puntos finales de la API; ofrece una interfaz orientada a objetos que se siente natural dentro del contexto Ruby.
Postal es una plataforma de entrega de correo completa, con todas las funciones, de código abierto para sitios web y servidores web. Piénsalo como tu propio SendGrid o Mailgun privado, ejecutándose en tus propios servidores. Esto te brinda control total sobre el envío de correos electrónicos, los datos y la reputación. Desarrollado con Ruby y respaldado por un conjunto robusto de tecnologías, Postal está diseñado para el rendimiento, la escalabilidad y la facilidad de uso. Proporciona una interfaz web integral para gestionar tus servidores de correo, ver registros y seguir el rendimiento, al mismo tiempo que ofrece una API potente para una integración fluida con tus aplicaciones.
Primeros pasos con Postal
La forma más fácil de instalar la biblioteca Postal es a través de RubyGems. Por favor, utiliza el siguiente comando para una instalación sencilla.
Instalar Postal vía Rubygems
gem install 'postal-ruby'Enviando un correo electrónico básico mediante la API de Ruby
Las API de Postal de código abierto han incluido soporte completo para enviar mensajes de correo electrónico de diversas maneras. Los desarrolladores Ruby pueden enviar correos electrónicos de múltiples formas, adaptándose a diferentes niveles de complejidad. Simple Hash es perfecto para envíos rápidos con parámetros básicos. Texto plano y HTML pueden usarse para enviar correos electrónicos multipartes. También admite adjuntar archivos sin esfuerzo a tus mensajes de correo y demás. El siguiente ejemplo muestra la forma más sencilla de enviar un correo electrónico.
¿Cómo enviar un correo electrónico simple usando la API de 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}"
Verificar el seguimiento de correos y el estado de entrega
Monitorea las aperturas y clics de correos electrónicos para medir la efectividad de tus campañas. Las API de Postal proporcionan funcionalidad completa para rastrear tus mensajes de correo dentro de aplicaciones Ruby. Después de enviar un correo, puedes usar el message_id devuelto para comprobar su estado actual. Monitorea las aperturas y clics de correos electrónicos para medir la efectividad de tus campañas. El siguiente ejemplo muestra cómo verificar el estado de entrega de los mensajes de correo electrónico usando comandos Ruby.
¿Cómo verificar el estado de entrega de un mensaje de correo electrónico mediante la API de 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
Enviando un correo HTML enriquecido con un archivo adjunto
Los correos electrónicos modernos a menudo requieren formato HTML y archivos adjuntos. La API de correo Postal de código abierto facilita a los desarrolladores de software crear y enviar mensajes de correo electrónico HTML enriquecido desde sus aplicaciones Ruby. Es una buena práctica incluir siempre una versión de texto plano para los clientes de correo que no admiten HTML. Puedes pasar una matriz de objetos File para adjuntar documentos, imágenes, etc. Aquí tienes un ejemplo de código muy útil que muestra cómo los desarrolladores de software pueden crear y enviar mensajes de correo electrónico HTML con archivos adjuntos usando la API de Ruby.
¿Cómo enviar un correo electrónico HTML enriquecido con un archivo adjunto mediante la API de 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}"