【Rails/mail開封率】Railsでメールを送って、開封されたかどうかを判定する
メールを送信して、そのメールが開封されたか見たい場合があると思います。 めっちゃ簡単です。
方法は単純で - メールの末尾に1ピクセルの画像を設置 - この画像が読み込まれたら、開封されたとみなす - 画像読み込み時に、サーバーにIDつきで送ることで、処理を追加できる というからくり
メールの末尾に1ピクセルの画像を設置
app/views/support_mailer/hogehoge.haml
= image_tag(tracking_hogehoge_url(id: @hogehoge.id),:size => "1x1", :alt => "logo")
controllerに取得部分設置
app/controllers/hogehoges_controller.rb
def tracking HogeHoge.find(params[:id]).update(opened: true) send_file Rails.root.join('app', 'pdfs', "hogehoge.png"), :type => 'image/gif', :disposition => 'inline' end