Sha256: d58b6ca06a263ef5948e5d1718ed1919e3126f2e9ca99983d080846fe7a4478c
Contents?: true
Size: 1.89 KB
Versions: 1
Compression:
Stored size: 1.89 KB
Contents
require "msg91sms/version" require "msg91sms/configuration" require "errors/configuration" require "msg91sms/transactional" require "msg91sms/otp" module Msg91sms #class << self bit tells our Msg91sms module that this instance variable is on the module scope class << self attr_accessor :configuration end #Writing and reading the configuration def self.configuration @configuration ||= Configuration.new end #Resetting #This will reset the @configuration settings to nil if needed in future def self.reset @configuration = Configuration.new end #Passing a block to our class #When we call Msg91sms.configure, we pass it a block that actually creates a new instance of the Msg91sms::Configuration class using whatever we’ve set inside of the block. def self.configure yield(configuration) end class TransactionalSms def self.deliver(sender, country_code, mobiles, message) #verify mobile number manually else send error message as msg91 would if Msg91sms.verify_mobile?(mobiles) Transactional.send_transactional(sender, country_code, mobiles, message) else response='{"message":"Please Enter valid mobile no","type":"error"}' JSON.parse(response) end end end class OtpSms def self.generate(sender, country_code, mobiles, message=nil, otp=nil) #verify mobile number manually else send error message as msg91 would if Msg91sms.verify_mobile?(mobiles) Otp.send_otp(sender, country_code, mobiles, message, otp) else response='{"message":"Please Enter valid mobile no","type":"error"}' JSON.parse(response) end end def self.verification(country_code, mobile, otp) Otp.verify_otp(country_code, mobile, otp) end end #Helper method checking mobile number contains only numbers def self.verify_mobile?(mobile) mobile.scan(/\D/).empty? end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
msg91sms-1.0.1 | lib/msg91sms.rb |