API Ruby متنباز برای بررسی ردیابی ایمیل و وضعیت تحویل
Postal یک API ایمیل کامل و پلتفرم تحویل است که برای مدیریت ایمیلهای ورودی و خروجی وبسایتها، برنامهها و بررسی ردیابی ایمیل و وضعیت تحویل طراحی شده است.
کتابخانه Postal چیست؟
در فضای دیجیتال امروز، ارتباط مؤثر ایمیل بیش از هر زمان دیگری حیاتی است. چه ایمیلهای تراکنشی، کمپینهای بازاریابی یا اعلانهای روتین ارسال کنید، یک پلتفرم تحویل ایمیل قابل اعتماد و مقیاسپذیر ضروری است. در حالی که سرویسهای تجاری مانند SendGrid و Mailgun بازار را تسلط دارند، یک جایگزین منبع باز قدرتمند در حال جلب توجه است: Postal. جواهر Ruby Postal یک کتابخانه مشتری Ruby است که توسط جامعه نگهداری میشود و رابطی برای استفاده از پلتفرم تحویل ایمیل Postal فراهم میکند. این امکان را به برنامههای Ruby (و Rails) میدهد تا از طریق API HTTP آن با Postal یکپارچه شوند. این کتابخانه با در نظر گرفتن توسعهدهندگان Ruby طراحی شده است. این فقط یک لایهٔ ساده برای فراخوانی نقاط انتهایی API نیست؛ بلکه یک رابط شیءگرا ارائه میدهد که در زمینهٔ Ruby طبیعی به نظر میرسد.
Postal یک پلتفرم کامل، کاملاً مجهز و منبع باز برای تحویل ایمیل برای وبسایتها و سرورهای وب است. آن را بهعنوان SendGrid یا Mailgun خصوصی خود تصور کنید که بر روی سرورهای خودتان اجرا میشود. این به شما کنترل کامل بر ارسال ایمیل، دادهها و اعتبار شما میدهد. Postal با Ruby توسعه یافته و توسط مجموعهای قوی از فناوریها پشتیبانی میشود و برای عملکرد، مقیاسپذیری و سهولت استفاده طراحی شده است. این پلتفرم یک رابط وب جامع برای مدیریت سرورهای ایمیل، مشاهده لاگها و ردیابی عملکرد ارائه میدهد، در حالی که یک API قدرتمند برای یکپارچهسازی بدون مشکل با برنامههای شما فراهم میکند.
شروع کار با Postal
آسانترین روش برای نصب کتابخانه Postal از طریق RubyGems است. لطفاً برای نصب آسان از فرمان زیر استفاده کنید.
نصب Postal از طریق Rubygems
gem install 'postal-ruby'ارسال ایمیل ساده از طریق API روبی
APIهای متن باز Postal پشتیبانی کامل برای ارسال پیامهای ایمیل به روشهای مختلف را فراهم کردهاند. توسعهدهندگان Ruby میتوانند ایمیلها را به روشهای متعدد ارسال کنند و به سطوح مختلف پیچیدگی پاسخ دهند. Simple Hash برای ارسال سریع با پارامترهای پایه ایدهآل است. میتوان از متن ساده و HTML برای ارسال ایمیلهای چندبخشی استفاده کرد. همچنین امکان پیوست کردن فایلها به پیامهای ایمیل شما بهراحتی فراهم میشود و غیره. مثال زیر سادهترین روش برای ارسال یک ایمیل را نشان میدهد.
چگونه یک ایمیل ساده با استفاده از 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}"
بررسی ردیابی ایمیل و وضعیت تحویل
باز کردنها و کلیکهای ایمیل را نظارت کنید تا اثربخشی کمپینهای خود را ارزیابی کنید. APIهای Postal عملکرد کامل برای ردیابی پیامهای ایمیل شما در برنامههای Ruby فراهم میکنند. پس از ارسال یک ایمیل، میتوانید از message_id بازگرداندهشده برای بررسی وضعیت فعلی آن استفاده کنید. باز کردنها و کلیکهای ایمیل را نظارت کنید تا اثربخشی کمپینهای خود را ارزیابی کنید. مثال زیر نشان میدهد چگونه وضعیت تحویل پیام ایمیل را با استفاده از دستورات Ruby بررسی کنید.
چگونه وضعیت تحویل پیام ایمیل را از طریق 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
ارسال ایمیل HTML غنی با پیوست
ایمیلهای مدرن اغلب به قالببندی HTML و پیوستها نیاز دارند. API ایمیل منبع باز Postal ایجاد و ارسال پیامهای Rich HTML Email را از برنامههای Ruby برای توسعهدهندگان نرمافزار آسان میکند. بهترین روش این است که همیشه یک نسخه متن ساده برای مشتریان ایمیلی که از HTML پشتیبانی نمیکنند، گنجانده شود. میتوانید یک آرایه از اشیاء File را برای پیوست کردن اسناد، تصاویر و غیره پاس دهید. در اینجا یک نمونه کد بسیار مفید آورده شده است که نشان میدهد چگونه توسعهدهندگان نرمافزار میتوانند با استفاده از Ruby API، پیامهای ایمیل HTML را با پیوستها ایجاد و ارسال کنند.
چگونه یک ایمیل HTML غنی با پیوست را از طریق 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}"