Class: Twilio::REST::Api::V2010::AccountContext::SipList::DomainContext

Inherits:
InstanceContext
  • Object
show all
Defined in:
lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb,
lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb,
lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb,
lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb,
lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb,
lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb,
lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb,
lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb,
lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb

Defined Under Namespace

Classes: AuthTypesInstance, AuthTypesList, AuthTypesPage, CredentialListMappingContext, CredentialListMappingInstance, CredentialListMappingList, CredentialListMappingPage, IpAccessControlListMappingContext, IpAccessControlListMappingInstance, IpAccessControlListMappingList, IpAccessControlListMappingPage

Instance Method Summary collapse

Constructor Details

#initialize(version, account_sid, sid) ⇒ DomainContext

Initialize the DomainContext

Parameters:

  • version (Version)

    Version that contains the resource

  • account_sid (String)

    The SID of the [Account](www.twilio.com/docs/iam/api/account) that created the SipDomain resource to update.

  • sid (String)

    The Twilio-provided string that uniquely identifies the SipDomain resource to update.



192
193
194
195
196
197
198
199
200
201
202
203
# File 'lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb', line 192

def initialize(version, , sid)
    super(version)

    # Path Solution
    @solution = { account_sid: , sid: sid,  }
    @uri = "/Accounts/#{@solution[:account_sid]}/SIP/Domains/#{@solution[:sid]}.json"

    # Dependents
    @auth = nil
    @ip_access_control_list_mappings = nil
    @credential_list_mappings = nil
end

Instance Method Details

#authAuthTypesList, AuthTypesContext

Access the auth

Returns:



287
288
289
290
291
292
293
# File 'lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb', line 287

def auth
  unless @auth
    @auth = AuthTypesList.new(
            @version, account_sid: @solution[:account_sid], domain_sid: @solution[:sid], )
  end
  @auth
end

#credential_list_mappings(sid = :unset) ⇒ CredentialListMappingList, CredentialListMappingContext

Access the credential_list_mappings

Returns:

Raises:

  • (ArgumentError)


317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
# File 'lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb', line 317

def credential_list_mappings(sid=:unset)

    raise ArgumentError, 'sid cannot be nil' if sid.nil?

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

    unless @credential_list_mappings
        @credential_list_mappings = CredentialListMappingList.new(
            @version, account_sid: @solution[:account_sid], domain_sid: @solution[:sid], )
    end

 @credential_list_mappings
end

#deleteBoolean

Delete the DomainInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



207
208
209
210
# File 'lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb', line 207

def delete

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

#fetchDomainInstance

Fetch the DomainInstance

Returns:



215
216
217
218
219
220
221
222
223
224
# File 'lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb', line 215

def fetch

    payload = @version.fetch('GET', @uri)
    DomainInstance.new(
        @version,
        payload,
        account_sid: @solution[:account_sid],
        sid: @solution[:sid],
    )
end

#inspectObject

Provide a detailed, user friendly representation



342
343
344
345
# File 'lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb', line 342

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

#ip_access_control_list_mappings(sid = :unset) ⇒ IpAccessControlListMappingList, IpAccessControlListMappingContext

Access the ip_access_control_list_mappings

Returns:

Raises:

  • (ArgumentError)


298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
# File 'lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb', line 298

def ip_access_control_list_mappings(sid=:unset)

    raise ArgumentError, 'sid cannot be nil' if sid.nil?

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

    unless @ip_access_control_list_mappings
        @ip_access_control_list_mappings = IpAccessControlListMappingList.new(
            @version, account_sid: @solution[:account_sid], domain_sid: @solution[:sid], )
    end

 @ip_access_control_list_mappings
end

#to_sObject

Provide a user friendly representation



335
336
337
338
# File 'lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb', line 335

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

#update(friendly_name: :unset, voice_fallback_method: :unset, voice_fallback_url: :unset, voice_method: :unset, voice_status_callback_method: :unset, voice_status_callback_url: :unset, voice_url: :unset, sip_registration: :unset, domain_name: :unset, emergency_calling_enabled: :unset, secure: :unset, byoc_trunk_sid: :unset, emergency_caller_sid: :unset) ⇒ DomainInstance

Update the DomainInstance

Parameters:

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

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

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

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

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

    The URL that we should call when an error occurs while retrieving or executing the TwiML requested by ‘voice_url`.

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

    The HTTP method we should use to call ‘voice_url`

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

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

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

    The URL that we should call to pass status parameters (such as call ended) to your application.

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

    The URL we should call when the domain receives a call.

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

    Whether to allow SIP Endpoints to register with the domain to receive calls. Can be ‘true` or `false`. `true` allows SIP Endpoints to register with the domain to receive calls, `false` does not.

  • 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 ‘sip.twilio.com`.

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

    Whether emergency calling is enabled for the domain. If enabled, allows emergency calls on the domain from phone numbers with validated addresses.

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

    Whether secure SIP is enabled for the domain. If enabled, TLS will be enforced and SRTP will be negotiated on all incoming calls to this sip domain.

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

    The SID of the BYOC Trunk(Bring Your Own Carrier) resource that the Sip Domain will be associated with.

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

    Whether an emergency caller sid is configured for the domain. If present, this phone number will be used as the callback for the emergency call.

Returns:



242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
# File 'lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb', line 242

def update(
    friendly_name: :unset, 
    voice_fallback_method: :unset, 
    voice_fallback_url: :unset, 
    voice_method: :unset, 
    voice_status_callback_method: :unset, 
    voice_status_callback_url: :unset, 
    voice_url: :unset, 
    sip_registration: :unset, 
    domain_name: :unset, 
    emergency_calling_enabled: :unset, 
    secure: :unset, 
    byoc_trunk_sid: :unset, 
    emergency_caller_sid: :unset
)

    data = Twilio::Values.of({
        'FriendlyName' => friendly_name,
        'VoiceFallbackMethod' => voice_fallback_method,
        'VoiceFallbackUrl' => voice_fallback_url,
        'VoiceMethod' => voice_method,
        'VoiceStatusCallbackMethod' => voice_status_callback_method,
        'VoiceStatusCallbackUrl' => voice_status_callback_url,
        'VoiceUrl' => voice_url,
        'SipRegistration' => sip_registration,
        'DomainName' => domain_name,
        'EmergencyCallingEnabled' => emergency_calling_enabled,
        'Secure' => secure,
        'ByocTrunkSid' => byoc_trunk_sid,
        'EmergencyCallerSid' => emergency_caller_sid,
    })

    payload = @version.update('POST', @uri, data: data)
    DomainInstance.new(
        @version,
        payload,
        account_sid: @solution[:account_sid],
        sid: @solution[:sid],
    )
end