about summary refs log tree commit diff
path: root/app/workers/scheduler/subscriptions_scheduler.rb
blob: 5ddfaed1887cd90adcb4f7ed67457732a3d4ee11 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# frozen_string_literal: true

require 'sidekiq-scheduler'
require 'sidekiq-bulk'

class Scheduler::SubscriptionsScheduler
  include Sidekiq::Worker

  def perform
    logger.info 'Queueing PuSH re-subscriptions'
    Pubsubhubbub::SubscribeWorker.push_bulk(expiring_accounts.pluck(:id))
  end

  private

  def expiring_accounts
    Account.where(protocol: :ostatus).expiring(1.day.from_now).partitioned
  end
end