class ConversationEmailWorker
  include Sidekiq::Worker
  sidekiq_options queue: :mailers

  def perform(conversation_id, queued_time)
    @conversation = Conversation.find(conversation_id)

    # send the email
    ConversationMailer.new_message(@conversation, queued_time).deliver_later

    # delete the redis set from the first new message on the conversation
    conversation_mail_key = Redis::Alfred::CONVERSATION_MAILER_KEY % @conversation.id
    Redis::Alfred.delete(conversation_mail_key)
  end
end
