класс ActionMailbox::Ingresses::Mandrill::InboundEmailsController
Обрабатывает входящие письма из Mandrill.
Требует параметр mandrill_events, содержащий JSON-массив объектов событий входящих писем Mandrill. Ожидается, что каждый объект события содержит объект msg, содержащий полное сообщение RFC 822 в свойстве raw_msg.
Возвращает:
-
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 :unprocessable_entity
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.