LoginSignup
15
16

More than 5 years have passed since last update.

Mandrill使えるようになるまで大変だったお話

Posted at

mandrill-opengraph.png
サーバーの状態をメールで受け取ったりできたら良いな
って言ってたら友人が教えてくれたMandrillを使えるまでのお話

0.環境

  • Ubuntu 14.04 LTS
  • お名前.com(ドメイン登録サービス)

1.アカウント取得

2.Sending Domainsの設定

  • 次に送信元ドメインを設定する
  • これが地味に大変だった
  • 項目は3つ

一、Verified Domain

  • ドメインの認証です
  • 実は独自ドメインでメールを受信できる状態じゃなかったので
  • 友人が独自ドメインでメールを受信できる環境を貸してくれて
  • そこで認証させました
     
  • 本来は!!!
  • ドメイン登録サービスでMXとかTXTとかレコード設定して
  • メール受信できるようにして
  • Verified Domainでメールを送って
  • 届いたメールのURLをクリックして認証させる
  • という手順が必要です

余談ですが、独自ドメインを登録できるメールサービスって
以前はGoogle appsとかOutlook.comとか無料でできたのに
今はinbox.com
というサービスが有名らしいですね
見た目が古代のYahooっぽくてとても独特ですが。

二、DKIM Settings

  • メールサービスの認証では一般的?らしいです
  • 初めてだったから戸惑った
  • 要は指定の内容をDNSレコードに設定しといて!
  • ってことらしいです
  • View DKIM/SPF Setup Instructions
  • ってボタン押すと設定するテキストが出てきます
  • mandrill._domainkey.<yourdomain.com> レコードに入力
  • ここはわかりやすかった

三、SPF Settings

  • これも一般的な認証だそうです
  • TXTレコードに追加するんですが、
  • 使ったのがお名前.comだったので ?all ではなく ~all
  • ちゃんと入力したら問題なく認証されました

3.APIキーの取得

  • SMTP & API Credentials
  • アクセスし + New API Key ボタンを押す
  • Create API Keyで簡単に作れます

4.API叩くスクリプトを書く

  • 今回はRubyがちょうど入っていたので手軽にRubyで
  • Ruby用のライブラリをMandrillが公開してる
  • Mandrill API Documentation - Ruby
  • gem install mandrill-api
  • でサクッと入れた
mandrill_sample.rb
require 'mandrill'
m = Mandrill::API.new '<API_Key>'
message = {
 :subject=> "Hello from the Mandrill API",
 :from_name=> "Your name",
 :text=>"Hi message, how are you?",
 :to=>[
   {
     :email=> "<MAIL_TO>",
     :name=> "Recipient1"
   }
 ],
 :html=>"<html><h1>Hi <strong>message</strong>, how are you?</h1></html>",
 :from_email=>"hoge@<yourdmain.com>"
}

こんな感じのサンプルを改変した内容で

$ ruby mandrill_sample.rb

実行させる
status = sent が返ってくれば完了

 おつかれさまでした

今回メールサーバ関係のこと
契約中のプロバイダがメールサーバーを建てれないようにしていた
など、色んなことが勉強できました
Mandrillはこれからもっと活用していきたいなと思います。
ありがとうございました。

参考

15
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
16