ゴルフ松庵

メンバーライフを満喫しシングルプレーヤーを目指す!ブログ

SendGridを初めて使用、テキストにしたいのに...余計なHTMLメールを消す方法

   

とあるシステム開発において、システムからメールを送信する機能が必要となり色々検討した結果、SendGridのAPIを使うことにしました。

スポンサーリンク

SendGridとは

メール配信サービスで、メールサーバの構築は不要です。

システムはAWSのEC2にWEBサーバを構築してます。
色々調べてみると「Amazon EC2 Eメール上限緩和申請」、「逆引き(rDNS)設定申請」などの手続きが必要なため、もっと楽な方法で実現したい。

お金もあまりかけたくない。
メール送信数は12,000通/月を超えなければ無料のプランを利用可能。

あとは一番大事なのが業務システムなのでメールが届かないといったことが無いようにしないといけない。
送り先には、携帯キャリアメールも存在するので弾かれないようしなければならない。

SendGridは弾かれたことを解析できることが出来ます。

メール到達率を向上させるための仕組みも色々用意されていて、説明が丁寧にされています。

あとはタイミング良くセミナーが開催されているのと、メールでの問い合わせに丁寧に対応いただけました。
セミナー後にはわからないことをしつこく聞いても付き合ってくれました。

 

SendGridでメール送信

システムの開発言語はPHPでLaravelフレームワークを使用してます。
まずは、Laravelで使えるようにします。

composer.jsonのrequireに”sendgrid/sendgrid”: “6.0”の行を追加します。

「composer update」コマンドを実行して追加します。

APIキーが必要なのでAPIキーを取得します。
SendGrid正式ページのAPI Keysを見て取得します。

あとは以下のサンプルコードを実行。(↓これもSendGrid正式ページから取得)

 

ここからが余計なHTMLメールを消す方法

“text/plain”を指定しているのに、余計なHTMLメールが付いてきてします。

↓の赤枠

HTML付きメール

これを無くすにはどうするかです。

SendGridログイン→SendGirdダッシュボード→Setting→Mail Settingと遷移。

MailSetting画面

Plain Contentを「ACTIVE」にします。

そうすると余計なHTMLメールが添付されなくなります。

 - システム開発