класс ActionMailbox::Ingresses::Mandrill::InboundEmailsController
Получает входящие электронные письма из Mandrill.
Требуется параметр mandrill_events, содержащий массив JSON с объектами событий входящих писем Mandrill. Предполагается, что каждый объект события содержит объект msg, в свойстве raw_msg которого находится полное сообщение RFC 822.
Возвращает:
-
204 No Content, если входящее письмо успешно зарегистрировано и поставлено в очередь для маршрутизации в соответствующий почтовый ящик -
401 Unauthorized, если подпись запроса не удалось проверить -
404 Not Found, если Action Mailbox не настроен на прием входящих писем из Mandrill -
422 Unprocessable Entity, если в запросе отсутствуют обязательные параметры -
500 Server Error, если отсутствует ключ API Mandrill или неправильно настроена либо недоступна одна из следующих систем: база данных Active Record, служба Active Storage или серверная часть Active Job
Открытые методы экземпляра
# File actionmailbox/app/controllers/action_mailbox/ingresses/mandrill/inbound_emails_controller.rb, line 20
def create
raw_emails.each { |raw_email| ActionMailbox::InboundEmail.create_and_extract_message_id! raw_email }
head :ok
rescue JSON::ParserError => error
logger.error error.message
head ActionDispatch::Constants::UNPROCESSABLE_CONTENT
end # File actionmailbox/app/controllers/action_mailbox/ingresses/mandrill/inbound_emails_controller.rb, line 28 def health_check head :ok end
© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.