Initial commit
This commit is contained in:
43
app/services/kave_negar_sms_service.rb
Normal file
43
app/services/kave_negar_sms_service.rb
Normal file
@@ -0,0 +1,43 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
# kavenegar sms sender
|
||||
class KaveNegarSmsService
|
||||
class << self
|
||||
def send_confirmation(user)
|
||||
Rails.logger.info("Sending SMS to #{user.phones.last.number}")
|
||||
totp = TOTPServiceAction.new('register-mobile')
|
||||
totp.create(user.uid, user.email, period: '120')
|
||||
user.write_cache('register_mobile', 'true', 120)
|
||||
send_sms(user.mobile('pending').number.to_s, totp.read_code(user.uid))
|
||||
end
|
||||
|
||||
def send_call_confirmation(user)
|
||||
Rails.logger.info("Sending call to #{user.phones.find_by(category: 'landline').number}")
|
||||
totp = TOTPServiceAction.new('register-phone')
|
||||
totp.create(user.uid, user.email, period: '120')
|
||||
user.write_cache('register_phone', 'true', 120)
|
||||
send_call(user.phones.find_by(category: 'landline').number.to_s, totp.read_code(user.uid))
|
||||
end
|
||||
|
||||
def send_call(number, code)
|
||||
client = KaveRestApi::Lookup.new({ receptor: number,
|
||||
token: code,
|
||||
template: 'phone',
|
||||
type: 'call' # or call
|
||||
})
|
||||
|
||||
client.call.valid? ? true : false
|
||||
end
|
||||
|
||||
def send_sms(number, code)
|
||||
client = KaveRestApi::Lookup.new({ receptor: number,
|
||||
token: code,
|
||||
template: 'mobile',
|
||||
type: 'sms' # or call
|
||||
})
|
||||
|
||||
client.call.valid? ? true : false
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user