メール追跡と配信ステータスを確認するオープンソースRuby API
Postalは、ウェブサイトやアプリの受信・送信メールを処理するよう設計された、フル機能のメールAPIおよび配信プラットフォームで、メール追跡と配信ステータスの確認が可能です。
Postal ライブラリとは何ですか?
今日のデジタル環境では、効果的なメールコミュニケーションがこれまで以上に重要です。トランザクションメール、マーケティングキャンペーン、日常的な通知のいずれを送信する場合でも、信頼性が高くスケーラブルなメール配信プラットフォームは不可欠です。SendGrid や Mailgun といった商用サービスが市場を支配する中、注目を集めている強力なオープンソース代替として Postal があります。Postal Ruby gem は、コミュニティがメンテナンスする Ruby クライアントライブラリで、Postal メール配信プラットフォームを利用するためのインターフェースを提供します。Ruby(および Rails)アプリケーションが Postal の HTTP API を通じて統合できるようにします。Ruby 開発者を念頭に置いて設計されており、単に API エンドポイントをラップするだけでなく、Ruby の文脈で自然に感じられるオブジェクト指向インターフェースを提供します。
Postal は、ウェブサイトやウェブサーバー向けの完全な機能を備えたオープンソースのメール配信プラットフォームです。自分専用の SendGrid や Mailgun が自サーバー上で動作していると考えてください。これにより、メール送信、データ、レピュテーションを完全にコントロールできます。Ruby で開発され、堅牢な技術群に支えられた Postal は、パフォーマンス、スケーラビリティ、使いやすさを重視して設計されています。メールサーバーの管理、ログの閲覧、パフォーマンスの追跡を行う包括的なウェブインターフェースを提供し、アプリケーションとのシームレスな統合のための強力な API も備えています。
Postal の開始方法
Postal ライブラリをインストールする最も簡単な方法は RubyGems を使用することです。簡単なインストールのために、以下のコマンドをご利用ください。
Rubygems で Postal をインストールする
gem install 'postal-ruby'Ruby API を使用した基本的なメールの送信
オープンソースの Postal API は、さまざまな方法でメールメッセージを送信するための完全なサポートを含んでいます。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}"
メールのトラッキングと配信ステータスを確認する
キャンペーンの効果を測るために、メールの開封とクリックをモニタリングします。Postal API は、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形式と添付ファイルを必要とします。オープンソースのPostalメールAPIは、ソフトウェア開発者がRubyアプリケーションからリッチなHTMLメールメッセージを簡単に作成・送信できるようにします。HTMLをサポートしないメールクライアント向けに、常にプレーンテキスト版を含めることがベストプラクティスです。Fileオブジェクトの配列を渡して、ドキュメントや画像などを添付できます。以下は、Ruby API を使用して添付ファイル付きのHTMLメールメッセージを作成・送信する方法を示す非常に有用なコードサンプルです。
Ruby API を使用してリッチ HTML メールを添付ファイル付きで送信する方法は?
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}"