class Plivo::Resources::Powerpack
Public Class Methods
new(client, options = nil)
click to toggle source
Calls superclass method
Plivo::Base::Resource::new
# File lib/plivo/resources/powerpacks.rb, line 6 def initialize(client, options = nil) @_name = 'Powerpack' @_identifier_string = 'uuid' super end
Public Instance Methods
add_number(number, options = nil)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 171 def add_number(number, options = nil) number_pool_uuid = getnumberpool_uuid(uuid) if options.nil? return perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Number/' + number.to_s , 'POST') return end params = {} if options.key?(:service) && valid_param?(:service, options[:service], String, true) params[:service] = options[:service] end perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Number/' + number.to_s , 'POST', params) end
add_tollfree(tollfree)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 187 def add_tollfree(tollfree) number_pool_uuid = getnumberpool_uuid(uuid) perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Tollfree/' + tollfree.to_s , 'POST') end
buy_add_number(options = nil)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 271 def buy_add_number(options = nil) number_pool_uuid = getnumberpool_uuid(uuid) params = {} params[:rent] = true if options.key?(:service) && valid_param?(:service, options[:service], String, true) params[:service] = options[:service] end if options.key?(:number) return perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Number/' + options[:number].to_s , 'POST', params) end if options.key?(:country_iso2).nil? raise_invalid_request('country_iso is cannot be empty') end %i[offset limit].each do |param| if options.key?(param) && valid_param?(param, options[param], [Integer, Integer], true) params[param] = options[param] end end if options.key?(:limit) && (options[:limit] > 20 || options[:limit] <= 0) raise_invalid_request('The maximum number of results that can be '\ "fetched is 20. limit can't be more than 20 or less than 1") end if options.key?(:offset) && options[:offset] < 0 raise_invalid_request("Offset can't be negative") end if options.key?(:pattern) && valid_param?(:pattern, options[:pattern], String, true) params[:starts_with] = options[:pattern] end if options.key?(:country_iso2) && valid_param?(:country_iso2, options[:country_iso2], String, true) params[:country_iso] = options[:country_iso2] end if options.key?(:type) && valid_param?(:type, options[:type], String, true) params[:type] = options[:type] end response = perform_custom_action_apiresponse('PhoneNumber', 'GET', params, true) numbers = response['objects'][0]['number'] perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Number/' + numbers.to_s, 'POST', params) end
count_numbers(options = nil)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 107 def count_numbers(options = nil) number_pool_uuid = getnumberpool_uuid(uuid) if options.nil? response = perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Number', 'GET') meta = response['meta'] return meta['total_count'] end params = {} %i[offset limit].each do |param| if options.key?(param) && valid_param?(param, options[param], [Integer, Integer], true) params[param] = options[param] end end if options.key?(:limit) && (options[:limit] > 20 || options[:limit] <= 0) raise_invalid_request('The maximum number of results that can be '\ "fetched is 20. limit can't be more than 20 or less than 1") end if options.key?(:offset) && options[:offset] < 0 raise_invalid_request("Offset can't be negative") end if options.key?(:starts_with) && valid_param?(:starts_with, options[:starts_with], String, true) params[:starts_with] = options[:starts_with] end if options.key?(:country_iso2) && valid_param?(:country_iso2, options[:country_iso2], String, true) params[:country_iso2] = options[:country_iso2] end if options.key?(:type) && valid_param?(:type, options[:type], String, true) params[:type] = options[:type] end if options.key?(:service) && valid_param?(:service, options[:service], String, true) params[:service] = options[:service] end response = perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Number', 'GET', param, true) meta = response['meta'] return meta['total_count'] end
delete(unrent_numbers = false)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 18 def delete(unrent_numbers = false) valid_param?(:unrent_numbers, unrent_numbers, [TrueClass, FalseClass], false, [true, false]) params = { :unrent_numbers => unrent_numbers } perform_action_apiresponse('', 'DELETE', params) # perform_delete(params) end
find_number(number, options = nil)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 156 def find_number(number, options = nil) number_pool_uuid = getnumberpool_uuid(uuid) if options.nil? return perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Number/' + number.to_s , 'GET') end params = {} if options.key?(:service) && valid_param?(:service, options[:service], String, true) params[:service] = options[:service] end perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Number/' + number.to_s , 'GET', params) end
find_shortcode(shortcode)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 259 def find_shortcode(shortcode) number_pool_uuid = getnumberpool_uuid(uuid) perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Shortcode/' + shortcode.to_s , 'GET') end
find_tollfree(tollfree)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 265 def find_tollfree(tollfree) number_pool_uuid = getnumberpool_uuid(uuid) perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Tollfree/' + tollfree.to_s , 'GET') end
getnumberpool_uuid(uuid)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 99 def getnumberpool_uuid(uuid) valid_param?(:uuid, uuid, [String, Symbol], true) response = perform_action() numberpool_path = response.number_pool numberpool_array = numberpool_path.split("/") numberpool_array[5] end
list_numbers(options = nil)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 56 def list_numbers(options = nil) number_pool_uuid = getnumberpool_uuid(uuid) return perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Number', 'GET') if options.nil? params = {} %i[offset limit].each do |param| if options.key?(param) && valid_param?(param, options[param], [Integer, Integer], true) params[param] = options[param] end end if options.key?(:limit) && (options[:limit] > 20 || options[:limit] <= 0) raise_invalid_request('The maximum number of results that can be '\ "fetched is 20. limit can't be more than 20 or less than 1") end if options.key?(:offset) && options[:offset] < 0 raise_invalid_request("Offset can't be negative") end if options.key?(:starts_with) && valid_param?(:starts_with, options[:starts_with], String, true) params[:starts_with] = options[:starts_with] end if options.key?(:country_iso2) && valid_param?(:country_iso2, options[:country_iso2], String, true) params[:country_iso2] = options[:country_iso2] end if options.key?(:type) && valid_param?(:type, options[:type], String, true) params[:type] = options[:type] end if options.key?(:service) && valid_param?(:service, options[:service], String, true) params[:service] = options[:service] end perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Number', 'GET', params, true) end
list_shortcodes(options = nil)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 211 def list_shortcodes(options = nil) number_pool_uuid = getnumberpool_uuid(uuid) return perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Shortcode', 'GET') if options.nil? params = {} %i[offset limit].each do |param| if options.key?(param) && valid_param?(param, options[param], [Integer, Integer], true) params[param] = options[param] end end if options.key?(:limit) && (options[:limit] > 20 || options[:limit] <= 0) raise_invalid_request('The maximum number of results that can be '\ "fetched is 20. limit can't be more than 20 or less than 1") end if options.key?(:offset) && options[:offset] < 0 raise_invalid_request("Offset can't be negative") end perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Shortcode', 'GET', params) end
list_tollfree(options = nil)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 235 def list_tollfree(options = nil) number_pool_uuid = getnumberpool_uuid(uuid) return perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Tollfree', 'GET') if options.nil? params = {} %i[offset limit].each do |param| if options.key?(param) && valid_param?(param, options[param], [Integer, Integer], true) params[param] = options[param] end end if options.key?(:limit) && (options[:limit] > 20 || options[:limit] <= 0) raise_invalid_request('The maximum number of results that can be '\ "fetched is 20. limit can't be more than 20 or less than 1") end if options.key?(:offset) && options[:offset] < 0 raise_invalid_request("Offset can't be negative") end perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Tollfree', 'GET', params) end
numberpool()
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 12 def numberpool number_pool_uuid = getnumberpool_uuid(uuid) options = {'number_pool_id' => number_pool_uuid} NumberPool.new(@_client, {resource_json: options}) end
remove_number(number, unrent= false)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 193 def remove_number(number, unrent= false) number_pool_uuid = getnumberpool_uuid(uuid) perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Number/' + number.to_s , 'DELETE', { unrent: unrent }, false) end
remove_shortcode(number)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 205 def remove_shortcode(number) number_pool_uuid = getnumberpool_uuid(uuid) perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Shortcode/' + number.to_s , 'DELETE', { unrent: false }, false) end
remove_tollfree(number, unrent= false)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 199 def remove_tollfree(number, unrent= false) number_pool_uuid = getnumberpool_uuid(uuid) perform_custom_action_apiresponse('NumberPool/' + number_pool_uuid + '/Tollfree/' + number.to_s , 'DELETE', { unrent: unrent }, false) end
to_s()
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 323 def to_s { name: @name, application_type: @application_type, application_id: @application_id, sticky_sender: @sticky_sender, local_connect: @local_connect, uuid: @uuid, number_pool:@number_pool, created_on:@created_on, number_priority:@number_priority }.to_s end
update(options = nil)
click to toggle source
# File lib/plivo/resources/powerpacks.rb, line 29 def update(options = nil) valid_param?(:options, options, Hash, true) params = {} if options.key?(:application_type) params[:application_type] = options[:application_type] end if options.key?(:application_id) params[:application_id] = options[:application_id] end if options.key?(:sticky_sender) params[:sticky_sender] = options[:sticky_sender] end if options.key?(:local_connect) params[:local_connect] = options[:local_connect] end if options.key?(:name) params[:name] = options[:name] end if options.key?(:number_priority) params[:number_priority] = options[:number_priority] end perform_action_apiresponse('', 'POST', params) end