別の Discourse サーバーからのメール転送通知ができない

再現手順

  • 「最初の投稿を監視」しているカテゴリを介して、Discourse サイト A から便利なメール通知を受け取る。
  • そのメール通知を、既存のグループに新しいメッセージを作成するためのメールアドレスを介して、Discourse サイト B に転送する。

期待される結果

コンテンツが正しく処理され、プライベートメッセージが生成される。

実際の結果

メールが処理されず、メッセージが作成されない。さらに、転送元へのバウンス通知メールが届く。

お詫び申し上げます。discourse-site-b@example.org 宛てのメール(件名:Fw: [Discourse Site A] [Announcements] Big News)は正常に送信されませんでした。メールの処理中に認識できないエラーが発生し、投稿されませんでした。再度お試しください、またはスタッフに連絡してください。

「いいね!」 2

まず、自動生成メールのブロック の設定を確認することをお勧めします。

ご意見ありがとうございます。手動でメールクライアントから転送したため、そのヘッダーは送信していませんでしたが、あなたのコメントをきっかけに、エラーログに同様のものが記録されていないか確認してみました。

エラーは /admin/email/rejected で発生しました。

undefined method 'lines' for nil:NilClass

私よりも詳しい方にとって、これが役立つ情報かどうかはわかりません。


更新: 別のデータポイントです。別の人物のメールを転送しようとした際も、上記と同じ拒否メールとエラーログが発生しました。これは、Microsoft Outlook/Exchange クライアントが転送メッセージを処理する仕組みに起因する可能性が高いことを示唆しています。引き続き調査を進めます。

「いいね!」 4

確かに修正すべきバグのようですが、それが修正された後も、転送しているメールには何らかのバルクメール送信者であることを示唆するヘッダーが含まれているため、何らかの方法でその送信者をホワイトリストに登録する必要があります。

@zogstrip、lines の nil クラスの問題を割り当てるべきでしょうか?

「いいね!」 3

仮にこのバグが解決すれば、メールがブロックされる理由についてさらに詳しい情報を得られるでしょうか?

私のサーバーが追加している可能性のあるヘッダーをより詳しく確認します。また、他の方が詳しく確認したい場合は、個別に共有することも喜んで行います。ただし、まだ時期尚早かもしれません。

「いいね!」 3

ああ、そのバグはおそらく真の問題を隠している要因でしょう。それを解決すれば、問題を少し前進させることができます。

「いいね!」 5

「いいね!」 5

@gerhard そのコードパスを最後に触ったのはあなたなので、見ていただけますか?

「いいね!」 5

問題を再現できませんが、コードが失敗する可能性がある箇所は把握しました。
@downey 元のメールを PM で送っていただけますか?適切な修正を適用しているか確認したいのです。

「いいね!」 5

例のメールは届きませんでしたが、根本的な問題は解決しました。

転送メールに関連する問題がまだある場合は、新しいバグレポートを作成してください。

「いいね!」 4