Class: Twilio::REST::Pricing::V2::NumberInstance

Inherits:
InstanceResource show all
Defined in:
lib/twilio-ruby/rest/pricing/v2/number.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, destination_number: nil) ⇒ NumberInstance

Initialize the NumberInstance

Parameters:

  • version (Version) —

    Version that contains the resource

  • payload (Hash) —

    payload that contains response from Twilio

  • account_sid (String) —

    The SID of the Account that created this Number resource.

  • sid (String) —

    The SID of the Call resource to fetch.



219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
# File 'lib/twilio-ruby/rest/pricing/v2/number.rb', line 219

def initialize(version, payload , destination_number: nil)
    super(version)
    
    
    # Marshaled Properties
    @properties = { 
        'destination_number' => payload['destination_number'],
        'origination_number' => payload['origination_number'],
        'country' => payload['country'],
        'iso_country' => payload['iso_country'],
        'terminating_prefix_prices' => payload['terminating_prefix_prices'],
        'originating_call_price' => payload['originating_call_price'],
        'price_unit' => payload['price_unit'],
        'url' => payload['url'],
    }

    # Context
    @instance_context = nil
    @params = { 'destination_number' => destination_number  || @properties['destination_number']  , }
end

Instance Method Details

#context ⇒ NumberContext

Generate an instance context for the instance, the context is capable of performing various actions. All instance actions are proxied to the context

Returns:



244
245
246
247
248
249
# File 'lib/twilio-ruby/rest/pricing/v2/number.rb', line 244

def context
    unless @instance_context
        @instance_context = NumberContext.new(@version , @params['destination_number'])
    end
    @instance_context
end

#country ⇒ String

Returns The name of the country.

Returns:

  • (String) —

    The name of the country.



265
266
267
# File 'lib/twilio-ruby/rest/pricing/v2/number.rb', line 265

def country
    @properties['country']
end

#destination_number ⇒ String

Returns The destination phone number in E.164 format, which consists of a + followed by the country code and subscriber number.

Returns:

  • (String) —

    The destination phone number in E.164 format, which consists of a + followed by the country code and subscriber number.



253
254
255
# File 'lib/twilio-ruby/rest/pricing/v2/number.rb', line 253

def destination_number
    @properties['destination_number']
end

#fetch(origination_number: :unset) ⇒ NumberInstance

Fetch the NumberInstance

Parameters:

  • origination_number (String) (defaults to: :unset) —

    The origination phone number, in E.164 format, for which to fetch the origin-based voice pricing information. E.164 format consists of a + followed by the country code and subscriber number.

Returns:



303
304
305
306
307
308
309
310
# File 'lib/twilio-ruby/rest/pricing/v2/number.rb', line 303

def fetch(
  origination_number: :unset
)

    context.fetch(
        origination_number: origination_number, 
    )
end

#inspect ⇒ Object

Provide a detailed, user friendly representation



321
322
323
324
# File 'lib/twilio-ruby/rest/pricing/v2/number.rb', line 321

def inspect
    values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
    "<Twilio.Pricing.V2.NumberInstance #{values}>"
end

#iso_country ⇒ String

Returns The ISO country code.

Returns:



271
272
273
# File 'lib/twilio-ruby/rest/pricing/v2/number.rb', line 271

def iso_country
    @properties['iso_country']
end

#originating_call_price ⇒ PricingV2TrunkingNumberOriginatingCallPrice

Returns:

  • (PricingV2TrunkingNumberOriginatingCallPrice)


283
284
285
# File 'lib/twilio-ruby/rest/pricing/v2/number.rb', line 283

def originating_call_price
    @properties['originating_call_price']
end

#origination_number ⇒ String

Returns The origination phone number in [E.164 format, which consists of a + followed by the country code and subscriber number.

Returns:

  • (String) —

    The origination phone number in [E.164 format, which consists of a + followed by the country code and subscriber number.



259
260
261
# File 'lib/twilio-ruby/rest/pricing/v2/number.rb', line 259

def origination_number
    @properties['origination_number']
end

#price_unit ⇒ String

Returns The currency in which prices are measured, specified in ISO 4127 format (e.g. usd, eur, jpy).

Returns:

  • (String) —

    The currency in which prices are measured, specified in ISO 4127 format (e.g. usd, eur, jpy).



289
290
291
# File 'lib/twilio-ruby/rest/pricing/v2/number.rb', line 289

def price_unit
    @properties['price_unit']
end

#terminating_prefix_prices ⇒ Array<PricingV2TrunkingCountryInstanceTerminatingPrefixPrices>

Returns:

  • (Array<PricingV2TrunkingCountryInstanceTerminatingPrefixPrices>)


277
278
279
# File 'lib/twilio-ruby/rest/pricing/v2/number.rb', line 277

def terminating_prefix_prices
    @properties['terminating_prefix_prices']
end

#to_s ⇒ Object

Provide a user friendly representation



314
315
316
317
# File 'lib/twilio-ruby/rest/pricing/v2/number.rb', line 314

def to_s
    values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
    "<Twilio.Pricing.V2.NumberInstance #{values}>"
end

#url ⇒ String

Returns The absolute URL of the resource.

Returns:

  • (String) —

    The absolute URL of the resource.



295
296
297
# File 'lib/twilio-ruby/rest/pricing/v2/number.rb', line 295

def url
    @properties['url']
end