require 'json' require 'resque' require 'resque-retry' require 'net/http' require 'digest/md5' module JamRuby class MusicSessionScheduler extend Resque::Plugins::LonelyJob @queue = :music_session_scheduler @@log = Logging.logger[MusicSessionScheduler] def self.lock_timeout 120 end def self.perform @@log.debug("waking up") JamWebEventMachine.run_wait_stop do MusicSessionScheduler.new.run end @@log.debug("done") end def run # get all weekly sessions that have ended in the last 15 minutes criteria = "recurring_mode = 'weekly' AND session_removed_at is not null AND next_session_scheduled = false" MusicSession.find_each(:conditions => criteria) do |music_session| music_session.copy end end end end