2013-04-09 83 views
2

下午好,Sidekiq延遲寄件人不發送電子郵件

我試圖用Sidekiq/Redis在後臺發送電子郵件。我應該注意以下幾點:

  1. 我使用devise-async,並沒有問題

  2. 工作我ActionMailer設置好
    如果我改變我的郵件調用UserMailer.contact_email(name).deliver!電子郵件發送就好了。什麼是不工作是UserMailer.delay.contact_email(name)

  3. 可以看我的工作經歷在我的日誌,你甚至會那麼遠,承擔郵件是通過使它變爲。只有當我發送給自己,我發現它不工作:
    Apr 08 18:36:58 app01-production sidekiq: 2013-04-09T00:36:58Z 31155 TID-1jdwoq Sidekiq::Extensions::DelayedClass JID-6143790ebbf6e8bbc4a7bb85 INFO: done: 4.923 sec

這顯然是調用郵件對象上DelayedClass擴展,但不走。鑑於devise-async的作品,我想知道如果我使用了錯誤的語法或什麼?`

謝謝!

回答

1

我也遇到類似的問題。我對延遲擴展稱爲#deliver的方式做了一個小改動。

試試這個:gem 'sidekiq', :git => "[email protected]:benjamintanweihao/sidekiq.git"

如果這對你有用,那麼可能是因爲沒有設置msg.from

相關代碼爲here

+0

嗨本傑明 - 謝謝你的建議!不幸的是,我正在休假一個月,因此在那之前無法嘗試。欣賞它,但。我會接受,因爲它似乎是合理的:) – Brandon 2013-04-18 14:00:18

3

其實我使用rails 4版本時也有同樣的問題。上述解決方案不適合我,我檢查@benjamin回購,並找不到它。所以,我已經嘗試sidekiq郵件gem https://github.com/andersondias/sidekiq_mailer並讓它工作得很好!