質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Postfix

Postfixは、電子メールサーバソフトウェアで、 メールを配送するシステムMTAの一種です。

Q&A

解決済

2回答

2873閲覧

railsでメールサーバ側の送信失敗を検知する方法が知りたい

shyamahira

総合スコア19

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Postfix

Postfixは、電子メールサーバソフトウェアで、 メールを配送するシステムMTAの一種です。

0グッド

0クリップ

投稿2018/03/09 04:03

RailsのWheneverを使って、複数の宛先にメール一斉配信JOBをつくりましたが、相手側が本当に受信できたかどうかをアプリのWEB画面で確認したいという要望がでてきました。

メールはRailsのAction Mailerを使っており、reply_to:を指定して、相手側がメールを受け取れなかった(受け取らなかった)際のエラーメールを任意の宛先に送付する程度のことはやっているのですが、これをWEB画面で一元管理したいとのことです。

メールサーバのログを見て泥臭くやるしか方法がないものか? となやんでおりますが、これを手数を少なくするruby gemなどありましたらご教示いただけますと幸いです。

私の環境は以下

  • OS: CentOS7
  • Mail Server: Postfix
  • Rails: Rails5.1

メールサーバをWEBアプリは同一サーバ上にあります。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

メールというシステム上、宛先に届いた、と言うのは検知できません

せいぜい送信にエラーはないか、エラーメールが帰ってこないかをチェックするしか無いですが、
それでもメールが届いたという証明にはなりませんね

投稿2018/03/09 04:06

y_waiwai

総合スコア87719

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

メールの配送を確実に判断する方法はないので、できるとしたら...

定期的にログやエラーメールをチェックして、ステータスを反映させる。

配送するメールの中にWeb ビーコンを入れておいて、ユーザーが開いたらWebビーコンのアクセスを拾って反映させる。

ぐらいでしょうか。
どちらも100% の配信結果を得られる訳ではありません。

また、メールの配信に外部メール配信サービスを使うのも1つの方法でしょう。
メール配信サービスでは、配信結果レポートを用意しているところもありますので、これらのレポートから結果を取り込むほうが、生ログを処理するよりは、取り込みやすいと思います。

投稿2018/03/09 04:23

CHERRY

総合スコア25171

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問