Class: Twilio::REST::Api::V2010::AccountContext::IncomingPhoneNumberList

Inherits:
ListResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb,
lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb,
lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb,
lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb

Defined Under Namespace

Classes: LocalInstance, LocalList, LocalPage, MobileInstance, MobileList, MobilePage, TollFreeInstance, TollFreeList, TollFreePage

Instance Method Summary collapse

Constructor Details

#initialize(version, account_sid: nil) ⇒ IncomingPhoneNumberList

Initialize the IncomingPhoneNumberList

Parameters:

  • version (Version)

    Version that contains the resource

  • account_sid (String) (defaults to: nil)

    The unique id of the Account responsible for this phone number.



19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb', line 19

def initialize(version, account_sid: nil)
  super(version)

  # Path Solution
  @solution = {account_sid: }
  @uri = "/Accounts/#{@solution[:account_sid]}/IncomingPhoneNumbers.json"

  # Components
  @local = nil
  @mobile = nil
  @toll_free = nil
end

Instance Method Details

#create(api_version: :unset, friendly_name: :unset, sms_application_sid: :unset, sms_fallback_method: :unset, sms_fallback_url: :unset, sms_method: :unset, sms_url: :unset, status_callback: :unset, status_callback_method: :unset, voice_application_sid: :unset, voice_caller_id_lookup: :unset, voice_fallback_method: :unset, voice_fallback_url: :unset, voice_method: :unset, voice_url: :unset, emergency_status: :unset, emergency_address_sid: :unset, trunk_sid: :unset, identity_sid: :unset, address_sid: :unset, phone_number: :unset, area_code: :unset) ⇒ IncomingPhoneNumberInstance

Retrieve a single page of IncomingPhoneNumberInstance records from the API. Request is executed immediately.

Parameters:

  • api_version (String) (defaults to: :unset)

    Calls to this phone number will start a new TwiML session with this API version.

  • friendly_name (String) (defaults to: :unset)

    A human readable descriptive text for this resource, up to 64 characters long. By default, the ‘FriendlyName` is a nicely formatted version of the phone number.

  • sms_application_sid (String) (defaults to: :unset)

    The 34 character sid of the application Twilio should use to handle SMSs sent to this number. If a ‘SmsApplicationSid` is present, Twilio will ignore all of the SMS urls above and use those set on the application.

  • sms_fallback_method (String) (defaults to: :unset)

    The HTTP method Twilio will use when requesting the above URL. Either ‘GET` or `POST`.

  • sms_fallback_url (String) (defaults to: :unset)

    The URL that Twilio will request if an error occurs retrieving or executing the TwiML from ‘SmsUrl`.

  • sms_method (String) (defaults to: :unset)

    The HTTP method Twilio will use when making requests to the ‘SmsUrl`. Either `GET` or `POST`.

  • sms_url (String) (defaults to: :unset)

    The URL Twilio will request when receiving an incoming SMS message to this number.

  • status_callback (String) (defaults to: :unset)

    The URL that Twilio will request to pass status parameters (such as call ended) to your application.

  • status_callback_method (String) (defaults to: :unset)

    The HTTP method Twilio will use to make requests to the ‘StatusCallback` URL. Either `GET` or `POST`.

  • voice_application_sid (String) (defaults to: :unset)

    The 34 character sid of the application Twilio should use to handle phone calls to this number. If a ‘VoiceApplicationSid` is present, Twilio will ignore all of the voice urls above and use those set on the application. Setting a `VoiceApplicationSid` will automatically delete your `TrunkSid` and vice versa.

  • voice_caller_id_lookup (Boolean) (defaults to: :unset)

    Look up the caller’s caller-ID name from the CNAM database ($0.01 per look up). Either ‘true` or `false`.

  • voice_fallback_method (String) (defaults to: :unset)

    The HTTP method Twilio will use when requesting the ‘VoiceFallbackUrl`. Either `GET` or `POST`.

  • voice_fallback_url (String) (defaults to: :unset)

    The URL that Twilio will request if an error occurs retrieving or executing the TwiML requested by ‘Url`.

  • voice_method (String) (defaults to: :unset)

    The HTTP method Twilio will use when requesting the above ‘Url`. Either `GET` or `POST`.

  • voice_url (String) (defaults to: :unset)

    The URL Twilio will request when this phone number receives a call. The VoiceURL will no longer be used if a ‘VoiceApplicationSid` or a `TrunkSid` is set.

  • emergency_status (incoming_phone_number.EmergencyStatus) (defaults to: :unset)

    The emergency_status

  • emergency_address_sid (String) (defaults to: :unset)

    The emergency_address_sid

  • trunk_sid (String) (defaults to: :unset)

    The 34 character sid of the Trunk Twilio should use to handle phone calls to this number. If a ‘TrunkSid` is present, Twilio will ignore all of the voice urls and voice applications above and use those set on the Trunk. Setting a `TrunkSid` will automatically delete your `VoiceApplicationSid` and vice versa.

  • identity_sid (String) (defaults to: :unset)

    The 34 character sid of the identity Twilio should use to associate with the number. Identities are required in some regions to meet local regulations

  • address_sid (String) (defaults to: :unset)

    The 34 character sid of the address Twilio should use to associate with the number. Addresses are required in some regions to meet local regulations

  • phone_number (String) (defaults to: :unset)

    The phone number to purchase. e.g., +16175551212 (E.164 format)

  • area_code (String) (defaults to: :unset)

    The desired area code for the new phone number. Any three digit US or Canada rea code is valid

Returns:



208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
# File 'lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb', line 208

def create(api_version: :unset, friendly_name: :unset, sms_application_sid: :unset, sms_fallback_method: :unset, sms_fallback_url: :unset, sms_method: :unset, sms_url: :unset, status_callback: :unset, status_callback_method: :unset, voice_application_sid: :unset, voice_caller_id_lookup: :unset, voice_fallback_method: :unset, voice_fallback_url: :unset, voice_method: :unset, voice_url: :unset, emergency_status: :unset, emergency_address_sid: :unset, trunk_sid: :unset, identity_sid: :unset, address_sid: :unset, phone_number: :unset, area_code: :unset)
  data = Twilio::Values.of({
      'PhoneNumber' => phone_number,
      'AreaCode' => area_code,
      'ApiVersion' => api_version,
      'FriendlyName' => friendly_name,
      'SmsApplicationSid' => sms_application_sid,
      'SmsFallbackMethod' => sms_fallback_method,
      'SmsFallbackUrl' => sms_fallback_url,
      'SmsMethod' => sms_method,
      'SmsUrl' => sms_url,
      'StatusCallback' => status_callback,
      'StatusCallbackMethod' => status_callback_method,
      'VoiceApplicationSid' => voice_application_sid,
      'VoiceCallerIdLookup' => voice_caller_id_lookup,
      'VoiceFallbackMethod' => voice_fallback_method,
      'VoiceFallbackUrl' => voice_fallback_url,
      'VoiceMethod' => voice_method,
      'VoiceUrl' => voice_url,
      'EmergencyStatus' => emergency_status,
      'EmergencyAddressSid' => emergency_address_sid,
      'TrunkSid' => trunk_sid,
      'IdentitySid' => identity_sid,
      'AddressSid' => address_sid,
  })

  payload = @version.create(
      'POST',
      @uri,
      data: data
  )

  IncomingPhoneNumberInstance.new(@version, payload, account_sid: @solution[:account_sid])
end

#eachObject

When passed a block, yields IncomingPhoneNumberInstance records from the API. This operation lazily loads records as efficiently as possible until the limit is reached.



95
96
97
98
99
100
101
102
103
# File 'lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb', line 95

def each
  limits = @version.read_limits

  page = self.page(page_size: limits[:page_size])

  @version.stream(page,
                  limit: limits[:limit],
                  page_limit: limits[:page_limit]).each {|x| yield x}
end

#get_page(target_url) ⇒ Page

Retrieve a single page of IncomingPhoneNumberInstance records from the API. Request is executed immediately.

Parameters:

  • target_url (String)

    API-generated URL for the requested results page

Returns:

  • (Page)

    Page of IncomingPhoneNumberInstance



141
142
143
144
145
146
147
# File 'lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb', line 141

def get_page(target_url)
  response = @version.domain.request(
      'GET',
      target_url
  )
  IncomingPhoneNumberPage.new(@version, response, @solution)
end

#list(beta: :unset, friendly_name: :unset, phone_number: :unset, origin: :unset, limit: nil, page_size: nil) ⇒ Array

Lists IncomingPhoneNumberInstance records from the API as a list. Unlike stream(), this operation is eager and will load ‘limit` records into memory before returning.

Parameters:

  • beta (Boolean) (defaults to: :unset)

    Include phone numbers new to the Twilio platform

  • friendly_name (String) (defaults to: :unset)

    Only show the incoming phone number resources with friendly names that exactly match this name

  • phone_number (String) (defaults to: :unset)

    Only show the incoming phone number resources that match this pattern

  • origin (String) (defaults to: :unset)

    The origin

  • limit (Integer) (defaults to: nil)

    Upper limit for the number of records to return. stream() guarantees to never return more than limit. Default is no limit

  • page_size (Integer) (defaults to: nil)

    Number of records to fetch per request, when not set will use the default value of 50 records. If no page_size is defined but a limit is defined, stream() will attempt to read the limit with the most efficient page size, i.e. min(limit, 1000)

Returns:

  • (Array)

    Array of up to limit results



49
50
51
52
53
54
55
56
57
58
# File 'lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb', line 49

def list(beta: :unset, friendly_name: :unset, phone_number: :unset, origin: :unset, limit: nil, page_size: nil)
  self.stream(
      beta: beta,
      friendly_name: friendly_name,
      phone_number: phone_number,
      origin: origin,
      limit: limit,
      page_size: page_size
  ).entries
end

#localLocalList, LocalContext

Access the local

Returns:



247
248
249
# File 'lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb', line 247

def local
  @local ||= LocalList.new(@version, account_sid: @solution[:account_sid])
end

#mobileMobileList, MobileContext

Access the mobile

Returns:



255
256
257
# File 'lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb', line 255

def mobile
  @mobile ||= MobileList.new(@version, account_sid: @solution[:account_sid])
end

#page(beta: :unset, friendly_name: :unset, phone_number: :unset, origin: :unset, page_token: :unset, page_number: :unset, page_size: :unset) ⇒ Page

Retrieve a single page of IncomingPhoneNumberInstance records from the API. Request is executed immediately.

Parameters:

  • beta (Boolean) (defaults to: :unset)

    Include phone numbers new to the Twilio platform

  • friendly_name (String) (defaults to: :unset)

    Only show the incoming phone number resources with friendly names that exactly match this name

  • phone_number (String) (defaults to: :unset)

    Only show the incoming phone number resources that match this pattern

  • origin (String) (defaults to: :unset)

    The origin

  • page_token (String) (defaults to: :unset)

    PageToken provided by the API

  • page_number (Integer) (defaults to: :unset)

    Page Number, this value is simply for client state

  • page_size (Integer) (defaults to: :unset)

    Number of records to return, defaults to 50

Returns:

  • (Page)

    Page of IncomingPhoneNumberInstance



118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
# File 'lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb', line 118

def page(beta: :unset, friendly_name: :unset, phone_number: :unset, origin: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
  params = Twilio::Values.of({
      'Beta' => beta,
      'FriendlyName' => friendly_name,
      'PhoneNumber' => phone_number,
      'Origin' => origin,
      'PageToken' => page_token,
      'Page' => page_number,
      'PageSize' => page_size,
  })
  response = @version.page(
      'GET',
      @uri,
      params
  )
  IncomingPhoneNumberPage.new(@version, response, @solution)
end

#stream(beta: :unset, friendly_name: :unset, phone_number: :unset, origin: :unset, limit: nil, page_size: nil) ⇒ Enumerable

Streams IncomingPhoneNumberInstance records from the API as an Enumerable. This operation lazily loads records as efficiently as possible until the limit is reached.

Parameters:

  • beta (Boolean) (defaults to: :unset)

    Include phone numbers new to the Twilio platform

  • friendly_name (String) (defaults to: :unset)

    Only show the incoming phone number resources with friendly names that exactly match this name

  • phone_number (String) (defaults to: :unset)

    Only show the incoming phone number resources that match this pattern

  • origin (String) (defaults to: :unset)

    The origin

  • limit (Integer) (defaults to: nil)

    Upper limit for the number of records to return. stream() guarantees to never return more than limit. Default is no limit.

  • page_size (Integer) (defaults to: nil)

    Number of records to fetch per request, when not set will use the default value of 50 records. If no page_size is defined but a limit is defined, stream() will attempt to read the limit with the most efficient page size, i.e. min(limit, 1000)

Returns:

  • (Enumerable)

    Enumerable that will yield up to limit results



77
78
79
80
81
82
83
84
85
86
87
88
89
# File 'lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb', line 77

def stream(beta: :unset, friendly_name: :unset, phone_number: :unset, origin: :unset, limit: nil, page_size: nil)
  limits = @version.read_limits(limit, page_size)

  page = self.page(
      beta: beta,
      friendly_name: friendly_name,
      phone_number: phone_number,
      origin: origin,
      page_size: limits[:page_size],
  )

  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
end

#to_sObject

Provide a user friendly representation



269
270
271
# File 'lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb', line 269

def to_s
  '#<Twilio.Api.V2010.IncomingPhoneNumberList>'
end

#toll_freeTollFreeList, TollFreeContext

Access the toll_free

Returns:



263
264
265
# File 'lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb', line 263

def toll_free
  @toll_free ||= TollFreeList.new(@version, account_sid: @solution[:account_sid])
end