HEATHER M STACK SEND CONSULTANT, HM STACK CONSULTING MARCH 2014 Personal Budgets - SEND.
Send grid softlayer_nagoya
-
Upload
shuichi-yukimoto -
Category
Engineering
-
view
1.487 -
download
3
Transcript of Send grid softlayer_nagoya
雪本 修一Shuichi Yukimoto
株式会社MNU 代表取締役社長 電気通信大学の認定ベンチャーとして起業。 好きな言語はJavaScript,Scheme,Lisp,Python アプリケーションエンジニアです。 最近はクラウド関係の仕事がメインです。 SoftLayerユーザ会の運営委員もやってます
twitter:@nsas454 facebook:shuichi.yukimoto
SendGridってなあに?• クラウドメールサービス
• SMTPサーバを用意しなくてもメールが配信できます。
• フリープランで、25,000通/月までが利用可能
• SoftLayerのポータルから申込できる!
使い方• SMTPサーバと同じようにメールを配信
• API経由でメール配信することも可能
TLS connections では 25, 587, 2525 SSL encryption では 465.
いろんなアプリと連携可能!!
# -*- coding: utf-8 -*- import smtplib from email.mime.text import MIMEText from email.header import Header
con = smtplib.SMTP('smtp.sendgrid.net', 587) con.esmtp_features['auth'] = 'LOGIN' con.login('登録したアカウント', 'パスワード')
con.set_debuglevel(True)
cset = 'utf-8'
message = MIMEText(u'日本語のメール送ってみました', 'plain', cset)
message['Subject'] = Header(u'送信テスト', cset)
message['From'] = '[email protected]' message['To'] = '[email protected]'
con.sendmail('[email protected]', ['[email protected]'], message.as_string())
con.close()
SendGridでメール送信(python)
どういった場面でつかうの?• アプリを作っているとメールを配信したい場面は多々出てきます。
• ログイン時のパスワードを忘れた場合、なんらかの通知を送る場合など
• sendmailもインストールして設定するの面倒くさい
• Gmailのアカウントを使ってメールを配信したりしていたけど、、
• こういった悩みから一気に解消されます!
• さらに単純にメールを送信だけなら無料!
メール送信ではまったこと• 改行が削除されてしまう!
• HTMLへ自動的に変換される際に改行が削除されてしまう。
• mail settingのDon’t convert plain text emails to HTMLの項目を有効にする
もうちょっとSendGrid• Parse Webhookを使ったメールの受信
• Parse Webhook(有料プラン)を使うとメールの受信ができる。
• 設定したドメインに届いたすべてのアカウントのメールは指定のURLにポストされる
例えば..usa-mimi.jpのドメインを登録すればusa-mimi.jpあてのメールはすべて受信してくれる!
今回つくったアプリの事例
WEB/AP 受信ログ 配信ログ
mail server
メールサーバの構築でかなりの工数がかかってしまう! セキュリティ対策もしないと駄目だし、やること多い
いままでの場合
• Hostname
• SendGridユーザ名.bymail.in
• Url
• POST先のURL
お手軽に利用する
独自ドメインで利用する
Hostname に指定したドメインのDNS上のMXレコードを mx.sendgrid.net に設定
• POSTされるパラメータは次の通り
• charsets …それぞれのパラメータの文字コード • to … 送信先 • subject … タイトル • from …送信元 • text/html … 本文 • headers … ヘッダ • attachments … 添付ファイル • envelope … エンベロープ • sender_ip … 送信元IPアドレス • dkim … 認証結果 • SPF … 認証結果