Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Commuのメールで 困ったこととその対応
Search
株式会社Curious Vehicle
February 14, 2025
0
21
Commuのメールで 困ったこととその対応
株式会社Curious Vehicle
February 14, 2025
Tweet
Share
More Decks by 株式会社Curious Vehicle
See All by 株式会社Curious Vehicle
ElasticsearchのHA構成について
curicle
0
2
機械学習で絶対音感になりたかった
curicle
0
5
BQにおけるSQLアンチパターンとslot消費削減策
curicle
0
10
VibeKanbanについて
curicle
0
5
"バーチャル宮本さん"を作ってみた
curicle
0
5
"バーチャル宮本さん” 本番デプロイ編
curicle
0
7
最近課金しているAIサービスについて
curicle
0
11
Pub_Sub
curicle
0
4
音声認識について
curicle
0
7
Featured
See All Featured
How GitHub (no longer) Works
holman
316
140k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Unsuck your backbone
ammeep
671
58k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
1
93
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Speed Design
sergeychernyshev
33
1.4k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
4 Signs Your Business is Dying
shpigford
186
22k
Building an army of robots
kneath
306
46k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.7k
Transcript
Commuのメールで 困ったこととその対応 第44回勉強会
目次 • 招待メールのテストできない問題 • HTMLメール崩れる問題 • Gmailの迷惑メールに入っちゃう問題
招待メールのテストできない問題 • Commuのサインアップシーケンス ◦ TOP画面でメールアドレスを入力して登録ボタンを押す ◦ 招待メールを受け取る ◦ メールの中に記載されているURLをクリック ◦
登録情報を入力 ◦ 登録完了 ここがテストできない
どう対応したか • 開発効率的に実際にメールを投げるわけにもいかない • できれば自動テストにも対応させたい Pythonのsmtpdモジュールを使う
どう対応したか • Pythonのsmtpd.SMTPServerクラスを利用 ◦ SMTPServerを継承したクラスを実装 ◦ デーモンプロセスとして起動させて指定のポートで待ち受ける ◦ 受け取ったメールの情報を指定のパスのファイルに書き出す ◦
指定のパスのファイルにメールが書かれているのでそのURLをコピペ してサインアップを継続可能 ◦ メールアドレスを渡したら指定のパスからファイルを読み取り、本文を 返却するAPIを実装(開発でのみ動作)
開発サーバー どう対応したか commuプロセス SMTPServerプロセス APIで本文を みれるようにする メールを投げる 受け取ったメールを ファイル出力
HTMLメール崩れる問題 • 休眠ユーザーにカムバックメールを投げたい ◦ テキストだとアレなのでHTMLメールを投げる ◦ 対象はOutlookとGmail ◦ 今風に書いてもMacのOutlookとGmailでは問題ない ◦
WindowsのOutlookだとダダ崩れ _人人人人人人人人人人人人人人人人_ > WindowsのOutlookだとダダ崩れ <  ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄
どう対応したか • HTML4ベースで書く ◦ 昔ながらのテーブルレイアウト ◦ CSSはすべてインライン ◦ imgの幅は属性で決める •
デバッグはVBAマクロを使う ◦ ここからマクロを持ってきて登録 ◦ 実行するとメモ帳でHTMLを編集可能 ◦ セーブするとプレビューできる
どう対応したか デモ
Gmailの迷惑メールに入っちゃう問題 • 登録メールがGmailの迷惑メールフォルダに入ってしまう ◦ サービス開始から特段対策は取っていなかった ◦ 先のHTMLメール等の施策を打つにあたり対策が必要に
どう対応したか • Amazon SESを利用する ◦ 無料でそこそこ(ひと月5万通まで)利用できる ◦ SPF、DKIMの設定が楽(Route53との連携が秀逸) ◦ そこまで効果があったかというと謎
• ドメインにSPF、DKIMレコードを追記する ◦ SESのドメイン検証でSPF、DKIMを設定する
どう対応したか • メールの内容も吟味する ◦ 登録用URLがcuricle.xyzだと迷惑メールに入ってしまう ◦ 複数ドメインのURLを混ぜない方が良いかも • 別サービスも検討する ◦
今回実装した対策がハマらない場合は別サービスも検討する ◦ SendGridというサービスがよさそう
まとめ • 全般的に地味かつ面倒な対応(特にHTMLメール) • HTMLメールのデバッグ方法は知っておくと便利 • SESはちょっと失敗したかも(SendGridにしとけば)
ご清聴ありがとうございました