Posted at

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

More than 3 years have passed since last update.

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はこれからもっと活用していきたいなと思います。

ありがとうございました。


参考