blastengineはエンジニアフレンドリーなメール配信サービスです。APIとSMTPリレーの両方をサポートしており、手軽に素早くメール配信ができるようになっています。
今回はRubyでblastengineのAPIを簡単に使えるSDKを開発しましたので、使い方を紹介します。現在はトランザクションメール(即時発信メール)のみサポートしています。
インストール
インストールはgemコマンドやbundlerで行ってください。
# Gemfile
gem 'blastengine'
または
gem install blastengine
インポート
SDKをインポートします。
require "blastengine"
初期化
Blastengineを初期化します。ユーザ名とAPIキーを使います。
# 初期化
Blastengine.initialize api_key: "API_KEY", user_name: "USER_NAME"
メールオブジェクトの用意
トランザクションメールは Transaction
を使います。件名やテキスト本文、宛先などを指定します。
transaction = Blastengine::Transaction.new
# nameはオプションです
transaction.from email: "info@example.com", name: "Administrator"
transaction.to << "user@example.jp"
transaction.subject = "テストの件名"
transaction.text_part = "メール本文です"
# オプション
transaction.html_part = "<h1>メール本文です</h1>"
添付ファイルの追加
添付ファイルは attachments
プロパティに、ファイルのパスを指定してください。
# 添付ファイルがある場合
transaction.attachments << './test.rb'
transaction.attachments << './image.png'
送信
送信は send
メソッドになります。返値はデリバリーIDになります。このデリバリーIDで、メールの送信状況や配信停止などを行います(トランザクションメールは即時配信されるので停止できません)。
begin
# 送信
delivery_id = transaction.send
puts delivery_id
rescue => e
# APIエラー
puts e
end
まとめ
Ruby SDKを使えばRuby on RailsやSinatraなどのWebアプリケーションはもちろん、コマンドラインを使った自動化ツールでもblastengineを活用してもらえます。
ぜひblastengineのRuby SDKを活用ください!