Отправка письма от Devise через ActiveJob - PullRequest
0 голосов
/ 24 мая 2018

в одном из наших приложений у нас запущена установка ActiveJob / Sidekiq / ActionMailer, которая работает нормально.Поскольку это приложение для бронирования, мы успешно отправляем подтверждение пользователям через эту настройку.

Мы испытываем трудности при попытке Devise отправлять письма о действиях пользователя (регистрация, сброс пароля и т. Д.) Через ActiveJob.

Я переопределил поведение отправки уведомлений по умолчанию в моей User модели следующим образом:

def send_devise_notification(notification, *args)
  devise_mailer.send(notification, self, *args).deliver_later
end

Обновление

Я приблизился на шаг.Я добавил очередь, которую Devise отправил, и ее задание пропало (XXX_default_mailer_queue) in config / sidekiq.yml`. Теперь Devise успешно отправляет задания в очередь Sidekiq. Но, к сожалению, письма по-прежнему не отправляются, время выполнения задания намного меньше 1 с:

ActionMailer::DeliveryJob JID-fa4bccc79be489f098c7f5ef INFO: done: 0.415

Если я переключаюсь на devise_mailer.send(notification, self, *args).deliver_now, то правильное письмо отправляется, но не отправляется. Как я уже сказал, наша настройка почты работает отдельно от Devise, поэтому я предполагаю, что это где-то специфическая проблема Devise

Что здесь делает Devise? Как я могу отладить процесс? Обычно я прыгаю где-нибудь в моей работе или в классах почтовой программы, но их нет ...

best, Andi

...