Class: RecheckSmsWorker

Inherits:
ApplicationWorker show all
Defined in:
app/workers/recheck_sms_worker.rb

Overview

This is a class to retry any failed sms request

Defined Under Namespace

Classes: MySmsError

Instance Method Summary collapse

Methods inherited from ApplicationWorker

unlimited_retry

Instance Method Details

#perform(msg, phones, reservation_id = nil, message_id = nil, provider = nil) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'app/workers/recheck_sms_worker.rb', line 10

def perform(msg, phones, reservation_id = nil, message_id = nil, provider = nil)
  return true if message_id.nil?

  sms_provider = decide_sms_provider(provider)
  sms_service_provider = decide_sms_service_provider(sms_provider)
  if sms_service_provider.sms_sent?(message_id)
    true
  else
    backup_provider = NotificationService::Sms.decide_backup_sms_provider(sms_provider)
    SmsWorker.perform_async(msg, phones, reservation_id, backup_provider)
  end

  true
end