improve newsletter

This commit is contained in:
Adrian Hinz 2019-04-07 07:10:19 +02:00
parent 4f65b8d978
commit e3c7e4ec4e
1 changed files with 17 additions and 6 deletions

View File

@ -3,12 +3,23 @@ class SendNewsletterJob < ApplicationJob
queue_as :default queue_as :default
def perform def perform
emails = Email.where('sended = 0') loop do
emails.each do |em| emails = Email.where('sended = 0')
NewsletterMailer.news_mail(em.email).deliver break if emails.count.zero?
em.sended = true begin
em.save emails.each do |em|
sleep(6) NewsletterMailer.news_mail(em.email).deliver
em.sended = true
em.save
sleep(6)
end
rescue Net::SMTPUnknownError => e
# Net::SMTPUnknownError (could not get 3xx (550: 550 5.4.5
# Daily user sending quota exceeded. p3sm37406639wrx.71 - gsmtp
Rails.logger.error e.message
Rails.logger.error e.backtrace.join("\n")
sleep(3600)
end
end end
end end
end end