Class: Twilio::REST::Trunking::V1::TrunkContext

Inherits:
InstanceContext show all
Defined in:
lib/twilio-ruby/rest/trunking/v1/trunk.rb,
lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb,
lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb,
lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb,
lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb,
lib/twilio-ruby/rest/trunking/v1/trunk/terminating_sip_domain.rb

Defined Under Namespace

Classes: CredentialListContext, CredentialListInstance, CredentialListList, CredentialListPage, IpAccessControlListContext, IpAccessControlListInstance, IpAccessControlListList, IpAccessControlListPage, OriginationUrlContext, OriginationUrlInstance, OriginationUrlList, OriginationUrlPage, PhoneNumberContext, PhoneNumberInstance, PhoneNumberList, PhoneNumberPage, TerminatingSipDomainContext, TerminatingSipDomainInstance, TerminatingSipDomainList, TerminatingSipDomainPage

Instance Method Summary collapse

Constructor Details

#initialize(version, sid) ⇒ TrunkContext

Initialize the TrunkContext

Parameters:

  • version (Version)

    Version that contains the resource

  • sid (String)

    The unique string that we created to identify the Trunk resource to fetch.



206
207
208
209
210
211
212
213
214
215
216
217
218
219
# File 'lib/twilio-ruby/rest/trunking/v1/trunk.rb', line 206

def initialize(version, sid)
  super(version)

  # Path Solution
  @solution = {sid: sid, }
  @uri = "/Trunks/#{@solution[:sid]}"

  # Dependents
  @origination_urls = nil
  @credentials_lists = nil
  @ip_access_control_lists = nil
  @phone_numbers = nil
  @terminating_sip_domains = nil
end

Instance Method Details

#credentials_lists(sid = :unset) ⇒ CredentialListList, CredentialListContext

Access the credentials_lists

Returns:

Raises:

  • (ArgumentError)


317
318
319
320
321
322
323
324
325
326
327
328
329
# File 'lib/twilio-ruby/rest/trunking/v1/trunk.rb', line 317

def credentials_lists(sid=:unset)
  raise ArgumentError, 'sid cannot be nil' if sid.nil?

  if sid != :unset
    return CredentialListContext.new(@version, @solution[:sid], sid, )
  end

  unless @credentials_lists
    @credentials_lists = CredentialListList.new(@version, trunk_sid: @solution[:sid], )
  end

  @credentials_lists
end

#deleteBoolean

Deletes the TrunkInstance

Returns:

  • (Boolean)

    true if delete succeeds, true otherwise



239
240
241
# File 'lib/twilio-ruby/rest/trunking/v1/trunk.rb', line 239

def delete
  @version.delete('delete', @uri)
end

#fetchTrunkInstance

Fetch a TrunkInstance

Returns:



224
225
226
227
228
229
230
231
232
233
234
# File 'lib/twilio-ruby/rest/trunking/v1/trunk.rb', line 224

def fetch
  params = Twilio::Values.of({})

  payload = @version.fetch(
      'GET',
      @uri,
      params,
  )

  TrunkInstance.new(@version, payload, sid: @solution[:sid], )
end

#inspectObject

Provide a detailed, user friendly representation



394
395
396
397
# File 'lib/twilio-ruby/rest/trunking/v1/trunk.rb', line 394

def inspect
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
  "#<Twilio.Trunking.V1.TrunkContext #{context}>"
end

#ip_access_control_lists(sid = :unset) ⇒ IpAccessControlListList, IpAccessControlListContext

Access the ip_access_control_lists

Returns:

Raises:

  • (ArgumentError)


335
336
337
338
339
340
341
342
343
344
345
346
347
# File 'lib/twilio-ruby/rest/trunking/v1/trunk.rb', line 335

def ip_access_control_lists(sid=:unset)
  raise ArgumentError, 'sid cannot be nil' if sid.nil?

  if sid != :unset
    return IpAccessControlListContext.new(@version, @solution[:sid], sid, )
  end

  unless @ip_access_control_lists
    @ip_access_control_lists = IpAccessControlListList.new(@version, trunk_sid: @solution[:sid], )
  end

  @ip_access_control_lists
end

#origination_urls(sid = :unset) ⇒ OriginationUrlList, OriginationUrlContext

Access the origination_urls

Returns:

Raises:

  • (ArgumentError)


299
300
301
302
303
304
305
306
307
308
309
310
311
# File 'lib/twilio-ruby/rest/trunking/v1/trunk.rb', line 299

def origination_urls(sid=:unset)
  raise ArgumentError, 'sid cannot be nil' if sid.nil?

  if sid != :unset
    return OriginationUrlContext.new(@version, @solution[:sid], sid, )
  end

  unless @origination_urls
    @origination_urls = OriginationUrlList.new(@version, trunk_sid: @solution[:sid], )
  end

  @origination_urls
end

#phone_numbers(sid = :unset) ⇒ PhoneNumberList, PhoneNumberContext

Access the phone_numbers

Returns:

Raises:

  • (ArgumentError)


353
354
355
356
357
358
359
360
361
362
363
364
365
# File 'lib/twilio-ruby/rest/trunking/v1/trunk.rb', line 353

def phone_numbers(sid=:unset)
  raise ArgumentError, 'sid cannot be nil' if sid.nil?

  if sid != :unset
    return PhoneNumberContext.new(@version, @solution[:sid], sid, )
  end

  unless @phone_numbers
    @phone_numbers = PhoneNumberList.new(@version, trunk_sid: @solution[:sid], )
  end

  @phone_numbers
end

#terminating_sip_domains(sid = :unset) ⇒ TerminatingSipDomainList, TerminatingSipDomainContext

Access the terminating_sip_domains

Returns:

Raises:

  • (ArgumentError)


371
372
373
374
375
376
377
378
379
380
381
382
383
# File 'lib/twilio-ruby/rest/trunking/v1/trunk.rb', line 371

def terminating_sip_domains(sid=:unset)
  raise ArgumentError, 'sid cannot be nil' if sid.nil?

  if sid != :unset
    return TerminatingSipDomainContext.new(@version, @solution[:sid], sid, )
  end

  unless @terminating_sip_domains
    @terminating_sip_domains = TerminatingSipDomainList.new(@version, trunk_sid: @solution[:sid], )
  end

  @terminating_sip_domains
end

#to_sObject

Provide a user friendly representation



387
388
389
390
# File 'lib/twilio-ruby/rest/trunking/v1/trunk.rb', line 387

def to_s
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
  "#<Twilio.Trunking.V1.TrunkContext #{context}>"
end

#update(friendly_name: :unset, domain_name: :unset, disaster_recovery_url: :unset, disaster_recovery_method: :unset, recording: :unset, secure: :unset, cnam_lookup_enabled: :unset) ⇒ TrunkInstance

Update the TrunkInstance

Parameters:

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

    A descriptive string that you create to describe the resource. It can be up to 64 characters long.

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

    The unique address you reserve on Twilio to which you route your SIP traffic. Domain names can contain letters, digits, and ‘-` and must end with `pstn.twilio.com`. See [Termination Settings](www.twilio.com/docs/sip-trunking/getting-started#termination) for more information.

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

    The URL we should call using the ‘disaster_recovery_method` if an error occurs while sending SIP traffic towards the configured Origination URL. We retrieve TwiML from the URL and execute the instructions like any other normal TwiML call. See [Disaster Recovery](www.twilio.com/docs/sip-trunking/getting-started#disaster-recovery) for more information.

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

    The HTTP method we should use to call the ‘disaster_recovery_url`. Can be: `GET` or `POST`.

  • recording (trunk.RecordingSetting) (defaults to: :unset)

    The recording settings for the trunk. Can be: ‘do-not-record`, `record-from-ringing`, `record-from-answer`. If set to `record-from-ringing` or `record-from-answer`, all calls going through the trunk will be recorded. See [Recording](www.twilio.com/docs/sip-trunking/getting-started#recording) for more information.

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

    Whether Secure Trunking is enabled for the trunk. If enabled, all calls going through the trunk will be secure using SRTP for media and TLS for signaling. If disabled, then RTP will be used for media. See [Secure Trunking](www.twilio.com/docs/sip-trunking/getting-started#securetrunking) for more information.

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

    Whether Caller ID Name (CNAM) lookup should be enabled for the trunk. If enabled, all inbound calls to the SIP Trunk from the United States and Canada automatically perform a CNAM Lookup and display Caller ID data on your phone. See [CNAM Lookups](www.twilio.com/docs/sip-trunking#CNAM) for more information.

Returns:



275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
# File 'lib/twilio-ruby/rest/trunking/v1/trunk.rb', line 275

def update(friendly_name: :unset, domain_name: :unset, disaster_recovery_url: :unset, disaster_recovery_method: :unset, recording: :unset, secure: :unset, cnam_lookup_enabled: :unset)
  data = Twilio::Values.of({
      'FriendlyName' => friendly_name,
      'DomainName' => domain_name,
      'DisasterRecoveryUrl' => disaster_recovery_url,
      'DisasterRecoveryMethod' => disaster_recovery_method,
      'Recording' => recording,
      'Secure' => secure,
      'CnamLookupEnabled' => cnam_lookup_enabled,
  })

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

  TrunkInstance.new(@version, payload, sid: @solution[:sid], )
end