Я использую службу доставки электронной почты для отправки писем (Sparkpost), и каждый раз, когда на одно из этих писем приходит ответ, я получаю JSON, который содержит: тело ответного письма в виде HTML (body_html), тело ответного письма в виде текста (body_text) ) и оригинальный RFC822 (email_rfc822) для ответного сообщения.
После получения этого JSON мне нужно переслать это письмо другому получателю. В настоящее время я использую следующий почтовик для достижения этого:
class ReplyMailer < ApplicationMailer
def reply(body_html, body_text, options = {})
mail(to: options[:to], from: options[:from], reply_to: options[:reply_to], subject: options[:subject], skip_premailer: true) do |format|
format.html { render html: body_html.html_safe } if body_html.present?
format.text { render plain: body_text } if body_text.present?
end
end
end
Проблема этого подхода заключается в том, что он не пересылает вложения исходного сообщения.
Как изменить почтовую программу так, чтобы она также пересылала все вложения из исходного сообщения (включая встроенные изображения, на которые есть ссылки в теле html)?