telnyx 5.99.0 → 5.100.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +5 -0
  5. data/lib/telnyx/models/ai/assistants/canary_deploy.rb +128 -7
  6. data/lib/telnyx/models/ai/assistants/canary_deploy_response.rb +131 -7
  7. data/lib/telnyx/models/uac_connection_create_params.rb +738 -0
  8. data/lib/telnyx/models/uac_connection_create_response.rb +898 -0
  9. data/lib/telnyx/models/uac_connection_delete_params.rb +20 -0
  10. data/lib/telnyx/models/uac_connection_delete_response.rb +898 -0
  11. data/lib/telnyx/models/uac_connection_list_params.rb +143 -0
  12. data/lib/telnyx/models/uac_connection_list_response.rb +876 -0
  13. data/lib/telnyx/models/uac_connection_retrieve_params.rb +20 -0
  14. data/lib/telnyx/models/uac_connection_retrieve_response.rb +899 -0
  15. data/lib/telnyx/models/uac_connection_update_params.rb +740 -0
  16. data/lib/telnyx/models/uac_connection_update_response.rb +898 -0
  17. data/lib/telnyx/models/uac_connections/action_check_registration_status_params.rb +22 -0
  18. data/lib/telnyx/models/uac_connections/action_check_registration_status_response.rb +104 -0
  19. data/lib/telnyx/models.rb +12 -0
  20. data/lib/telnyx/resources/ai/assistants/canary_deploys.rb +6 -10
  21. data/lib/telnyx/resources/uac_connections/actions.rb +39 -0
  22. data/lib/telnyx/resources/uac_connections.rb +256 -0
  23. data/lib/telnyx/version.rb +1 -1
  24. data/lib/telnyx.rb +14 -1
  25. data/rbi/telnyx/client.rbi +4 -0
  26. data/rbi/telnyx/models/ai/assistants/canary_deploy.rbi +303 -10
  27. data/rbi/telnyx/models/ai/assistants/canary_deploy_response.rbi +309 -9
  28. data/rbi/telnyx/models/uac_connection_create_params.rbi +1465 -0
  29. data/rbi/telnyx/models/uac_connection_create_response.rbi +1793 -0
  30. data/rbi/telnyx/models/uac_connection_delete_params.rbi +35 -0
  31. data/rbi/telnyx/models/uac_connection_delete_response.rbi +1793 -0
  32. data/rbi/telnyx/models/uac_connection_list_params.rbi +261 -0
  33. data/rbi/telnyx/models/uac_connection_list_response.rbi +1727 -0
  34. data/rbi/telnyx/models/uac_connection_retrieve_params.rbi +35 -0
  35. data/rbi/telnyx/models/uac_connection_retrieve_response.rbi +1793 -0
  36. data/rbi/telnyx/models/uac_connection_update_params.rbi +1463 -0
  37. data/rbi/telnyx/models/uac_connection_update_response.rbi +1793 -0
  38. data/rbi/telnyx/models/uac_connections/action_check_registration_status_params.rbi +40 -0
  39. data/rbi/telnyx/models/uac_connections/action_check_registration_status_response.rbi +237 -0
  40. data/rbi/telnyx/models.rbi +12 -0
  41. data/rbi/telnyx/resources/ai/assistants/canary_deploys.rbi +6 -14
  42. data/rbi/telnyx/resources/uac_connections/actions.rbi +33 -0
  43. data/rbi/telnyx/resources/uac_connections.rbi +348 -0
  44. data/sig/telnyx/client.rbs +2 -0
  45. data/sig/telnyx/models/ai/assistants/canary_deploy.rbs +113 -4
  46. data/sig/telnyx/models/ai/assistants/canary_deploy_response.rbs +113 -8
  47. data/sig/telnyx/models/uac_connection_create_params.rbs +609 -0
  48. data/sig/telnyx/models/uac_connection_create_response.rbs +741 -0
  49. data/sig/telnyx/models/uac_connection_delete_params.rbs +20 -0
  50. data/sig/telnyx/models/uac_connection_delete_response.rbs +741 -0
  51. data/sig/telnyx/models/uac_connection_list_params.rbs +112 -0
  52. data/sig/telnyx/models/uac_connection_list_response.rbs +722 -0
  53. data/sig/telnyx/models/uac_connection_retrieve_params.rbs +20 -0
  54. data/sig/telnyx/models/uac_connection_retrieve_response.rbs +741 -0
  55. data/sig/telnyx/models/uac_connection_update_params.rbs +615 -0
  56. data/sig/telnyx/models/uac_connection_update_response.rbs +741 -0
  57. data/sig/telnyx/models/uac_connections/action_check_registration_status_params.rbs +22 -0
  58. data/sig/telnyx/models/uac_connections/action_check_registration_status_response.rbs +117 -0
  59. data/sig/telnyx/models.rbs +12 -0
  60. data/sig/telnyx/resources/ai/assistants/canary_deploys.rbs +2 -2
  61. data/sig/telnyx/resources/uac_connections/actions.rbs +14 -0
  62. data/sig/telnyx/resources/uac_connections.rbs +90 -0
  63. metadata +44 -5
  64. data/lib/telnyx/models/ai/assistants/version_config.rb +0 -30
  65. data/rbi/telnyx/models/ai/assistants/version_config.rbi +0 -45
  66. data/sig/telnyx/models/ai/assistants/version_config.rbs +0 -19
@@ -0,0 +1,876 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Models
5
+ # @see Telnyx::Resources::UacConnections#list
6
+ class UacConnectionListResponse < Telnyx::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ # Identifies the type of resource.
9
+ #
10
+ # @return [String, nil]
11
+ optional :id, String
12
+
13
+ # @!attribute active
14
+ # Defaults to true
15
+ #
16
+ # @return [Boolean, nil]
17
+ optional :active, Telnyx::Internal::Type::Boolean
18
+
19
+ # @!attribute anchorsite_override
20
+ # `Latency` directs Telnyx to route media through the site with the lowest
21
+ # round-trip time to the user's connection. Telnyx calculates this time using ICMP
22
+ # ping messages. This can be disabled by specifying a site to handle all media.
23
+ #
24
+ # @return [Symbol, Telnyx::Models::AnchorsiteOverride, nil]
25
+ optional :anchorsite_override, enum: -> { Telnyx::AnchorsiteOverride }
26
+
27
+ # @!attribute android_push_credential_id
28
+ # The uuid of the push credential for Android
29
+ #
30
+ # @return [String, nil]
31
+ optional :android_push_credential_id, String, nil?: true
32
+
33
+ # @!attribute authentication
34
+ # The authentication strategy used by this connection.
35
+ #
36
+ # @return [Symbol, Telnyx::Models::UacConnectionListResponse::Authentication, nil]
37
+ optional :authentication, enum: -> { Telnyx::Models::UacConnectionListResponse::Authentication }
38
+
39
+ # @!attribute call_cost_in_webhooks
40
+ # Specifies if call cost webhooks should be sent for this connection.
41
+ #
42
+ # @return [Boolean, nil]
43
+ optional :call_cost_in_webhooks, Telnyx::Internal::Type::Boolean
44
+
45
+ # @!attribute connection_name
46
+ #
47
+ # @return [String, nil]
48
+ optional :connection_name, String
49
+
50
+ # @!attribute created_at
51
+ # ISO-8601 formatted date indicating when the resource was created.
52
+ #
53
+ # @return [String, nil]
54
+ optional :created_at, String
55
+
56
+ # @!attribute default_on_hold_comfort_noise_enabled
57
+ # When enabled, Telnyx will generate comfort noise when you place the call on
58
+ # hold. If disabled, you will need to generate comfort noise or on hold music to
59
+ # avoid RTP timeout.
60
+ #
61
+ # @return [Boolean, nil]
62
+ optional :default_on_hold_comfort_noise_enabled, Telnyx::Internal::Type::Boolean
63
+
64
+ # @!attribute dtmf_type
65
+ # Sets the type of DTMF digits sent from Telnyx to this Connection. Note that DTMF
66
+ # digits sent to Telnyx will be accepted in all formats.
67
+ #
68
+ # @return [Symbol, Telnyx::Models::DtmfType, nil]
69
+ optional :dtmf_type, enum: -> { Telnyx::DtmfType }
70
+
71
+ # @!attribute encode_contact_header_enabled
72
+ # Encode the SIP contact header sent by Telnyx to avoid issues for NAT or ALG
73
+ # scenarios.
74
+ #
75
+ # @return [Boolean, nil]
76
+ optional :encode_contact_header_enabled, Telnyx::Internal::Type::Boolean
77
+
78
+ # @!attribute encrypted_media
79
+ # Enable use of SRTP for encryption. Cannot be set if the transport_portocol is
80
+ # TLS.
81
+ #
82
+ # @return [Symbol, Telnyx::Models::EncryptedMedia, nil]
83
+ optional :encrypted_media, enum: -> { Telnyx::EncryptedMedia }, nil?: true
84
+
85
+ # @!attribute external_uac_settings
86
+ # External SIP peer settings used by Telnyx when registering to your PBX and
87
+ # routing outbound calls.
88
+ #
89
+ # @return [Telnyx::Models::UacConnectionListResponse::ExternalUacSettings, nil]
90
+ optional :external_uac_settings, -> { Telnyx::Models::UacConnectionListResponse::ExternalUacSettings }
91
+
92
+ # @!attribute fqdn
93
+ # The Telnyx-managed FQDN generated for the UAC connection.
94
+ #
95
+ # @return [String, nil]
96
+ optional :fqdn, String
97
+
98
+ # @!attribute fqdn_outbound_authentication
99
+ # The fixed outbound authentication mode used by UAC FQDN records.
100
+ #
101
+ # @return [Symbol, Telnyx::Models::UacConnectionListResponse::FqdnOutboundAuthentication, nil]
102
+ optional :fqdn_outbound_authentication,
103
+ enum: -> { Telnyx::Models::UacConnectionListResponse::FqdnOutboundAuthentication }
104
+
105
+ # @!attribute fqdns
106
+ # FQDN records managed automatically by the UAC connection lifecycle.
107
+ #
108
+ # @return [Array<Telnyx::Models::Fqdn>, nil]
109
+ optional :fqdns, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::Fqdn] }
110
+
111
+ # @!attribute inbound
112
+ #
113
+ # @return [Telnyx::Models::UacConnectionListResponse::Inbound, nil]
114
+ optional :inbound, -> { Telnyx::Models::UacConnectionListResponse::Inbound }
115
+
116
+ # @!attribute internal_uac_settings
117
+ # Internal Telnyx-side settings for a UAC connection.
118
+ #
119
+ # @return [Telnyx::Models::UacConnectionListResponse::InternalUacSettings, nil]
120
+ optional :internal_uac_settings, -> { Telnyx::Models::UacConnectionListResponse::InternalUacSettings }
121
+
122
+ # @!attribute ios_push_credential_id
123
+ # The uuid of the push credential for Ios
124
+ #
125
+ # @return [String, nil]
126
+ optional :ios_push_credential_id, String, nil?: true
127
+
128
+ # @!attribute jitter_buffer
129
+ # Configuration options for Jitter Buffer. Enables Jitter Buffer for RTP streams
130
+ # of SIP Trunking calls. The feature is off unless enabled. You may define min and
131
+ # max values in msec for customized buffering behaviors. Larger values add latency
132
+ # but tolerate more jitter, while smaller values reduce latency but are more
133
+ # sensitive to jitter and reordering.
134
+ #
135
+ # @return [Telnyx::Models::ConnectionJitterBuffer, nil]
136
+ optional :jitter_buffer, -> { Telnyx::ConnectionJitterBuffer }
137
+
138
+ # @!attribute noise_suppression
139
+ # Controls when noise suppression is applied to calls. When set to 'inbound',
140
+ # noise suppression is applied to incoming audio. When set to 'outbound', it's
141
+ # applied to outgoing audio. When set to 'both', it's applied in both directions.
142
+ # When set to 'disabled', noise suppression is turned off.
143
+ #
144
+ # @return [Symbol, Telnyx::Models::UacConnectionListResponse::NoiseSuppression, nil]
145
+ optional :noise_suppression, enum: -> { Telnyx::Models::UacConnectionListResponse::NoiseSuppression }
146
+
147
+ # @!attribute noise_suppression_details
148
+ # Configuration options for noise suppression. These settings are stored
149
+ # regardless of the noise_suppression value, but only take effect when
150
+ # noise_suppression is not 'disabled'. If you disable noise suppression and later
151
+ # re-enable it, the previously configured settings will be used.
152
+ #
153
+ # @return [Telnyx::Models::ConnectionNoiseSuppressionDetails, nil]
154
+ optional :noise_suppression_details, -> { Telnyx::ConnectionNoiseSuppressionDetails }
155
+
156
+ # @!attribute onnet_t38_passthrough_enabled
157
+ # Enable on-net T38 if you prefer the sender and receiver negotiating T38 directly
158
+ # if both are on the Telnyx network. If this is disabled, Telnyx will be able to
159
+ # use T38 on just one leg of the call depending on each leg's settings.
160
+ #
161
+ # @return [Boolean, nil]
162
+ optional :onnet_t38_passthrough_enabled, Telnyx::Internal::Type::Boolean
163
+
164
+ # @!attribute outbound
165
+ #
166
+ # @return [Telnyx::Models::UacConnectionListResponse::Outbound, nil]
167
+ optional :outbound, -> { Telnyx::Models::UacConnectionListResponse::Outbound }
168
+
169
+ # @!attribute password
170
+ # The password to be used as part of the credentials. Must be 8 to 128 characters
171
+ # long.
172
+ #
173
+ # @return [String, nil]
174
+ optional :password, String
175
+
176
+ # @!attribute record_type
177
+ # Identifies the type of the resource.
178
+ #
179
+ # @return [String, nil]
180
+ optional :record_type, String
181
+
182
+ # @!attribute registration_status
183
+ # The most recently known SIP registration status for this UAC connection.
184
+ #
185
+ # @return [String, nil]
186
+ optional :registration_status, String, nil?: true
187
+
188
+ # @!attribute registration_status_updated_at
189
+ # ISO 8601 formatted date indicating when the registration status was last
190
+ # updated.
191
+ #
192
+ # @return [String, nil]
193
+ optional :registration_status_updated_at, String, nil?: true
194
+
195
+ # @!attribute rtcp_settings
196
+ #
197
+ # @return [Telnyx::Models::ConnectionRtcpSettings, nil]
198
+ optional :rtcp_settings, -> { Telnyx::ConnectionRtcpSettings }
199
+
200
+ # @!attribute sip_uri_calling_preference
201
+ # This feature enables inbound SIP URI calls to your Credential Auth Connection.
202
+ # If enabled for all (unrestricted) then anyone who calls the SIP URI
203
+ # <your-username>@telnyx.com will be connected to your Connection. You can also
204
+ # choose to allow only calls that are originated on any Connections under your
205
+ # account (internal).
206
+ #
207
+ # @return [Symbol, Telnyx::Models::UacConnectionListResponse::SipUriCallingPreference, nil]
208
+ optional :sip_uri_calling_preference,
209
+ enum: -> { Telnyx::Models::UacConnectionListResponse::SipUriCallingPreference }
210
+
211
+ # @!attribute tags
212
+ # Tags associated with the connection.
213
+ #
214
+ # @return [Array<String>, nil]
215
+ optional :tags, Telnyx::Internal::Type::ArrayOf[String]
216
+
217
+ # @!attribute updated_at
218
+ # ISO-8601 formatted date indicating when the resource was updated.
219
+ #
220
+ # @return [String, nil]
221
+ optional :updated_at, String
222
+
223
+ # @!attribute user_name
224
+ # The user name to be used as part of the credentials. Must be 4-32 characters
225
+ # long and alphanumeric values only (no spaces or special characters). At least
226
+ # one of the first 5 characters must be a letter.
227
+ #
228
+ # @return [String, nil]
229
+ optional :user_name, String
230
+
231
+ # @!attribute webhook_api_version
232
+ # Determines which webhook format will be used, Telnyx API v1 or v2.
233
+ #
234
+ # @return [Symbol, Telnyx::Models::UacConnectionListResponse::WebhookAPIVersion, nil]
235
+ optional :webhook_api_version, enum: -> { Telnyx::Models::UacConnectionListResponse::WebhookAPIVersion }
236
+
237
+ # @!attribute webhook_event_failover_url
238
+ # The failover URL where webhooks related to this connection will be sent if
239
+ # sending to the primary URL fails. Must include a scheme, such as 'https'.
240
+ #
241
+ # @return [String, nil]
242
+ optional :webhook_event_failover_url, String, nil?: true
243
+
244
+ # @!attribute webhook_event_url
245
+ # The URL where webhooks related to this connection will be sent. Must include a
246
+ # scheme, such as 'https'.
247
+ #
248
+ # @return [String, nil]
249
+ optional :webhook_event_url, String
250
+
251
+ # @!attribute webhook_timeout_secs
252
+ # Specifies how many seconds to wait before timing out a webhook.
253
+ #
254
+ # @return [Integer, nil]
255
+ optional :webhook_timeout_secs, Integer, nil?: true
256
+
257
+ # @!method initialize(id: nil, active: nil, anchorsite_override: nil, android_push_credential_id: nil, authentication: nil, call_cost_in_webhooks: nil, connection_name: nil, created_at: nil, default_on_hold_comfort_noise_enabled: nil, dtmf_type: nil, encode_contact_header_enabled: nil, encrypted_media: nil, external_uac_settings: nil, fqdn: nil, fqdn_outbound_authentication: nil, fqdns: nil, inbound: nil, internal_uac_settings: nil, ios_push_credential_id: nil, jitter_buffer: nil, noise_suppression: nil, noise_suppression_details: nil, onnet_t38_passthrough_enabled: nil, outbound: nil, password: nil, record_type: nil, registration_status: nil, registration_status_updated_at: nil, rtcp_settings: nil, sip_uri_calling_preference: nil, tags: nil, updated_at: nil, user_name: nil, webhook_api_version: nil, webhook_event_failover_url: nil, webhook_event_url: nil, webhook_timeout_secs: nil)
258
+ # Some parameter documentations has been truncated, see
259
+ # {Telnyx::Models::UacConnectionListResponse} for more details.
260
+ #
261
+ # A UAC (User Agent Client) Connection registers Telnyx to your PBX — the opposite
262
+ # of a standard SIP trunk, where the PBX registers to Telnyx. Use UAC when your
263
+ # PBX doesn’t support outbound SIP registration or you need Telnyx to maintain the
264
+ # registration.
265
+ #
266
+ # @param id [String] Identifies the type of resource.
267
+ #
268
+ # @param active [Boolean] Defaults to true
269
+ #
270
+ # @param anchorsite_override [Symbol, Telnyx::Models::AnchorsiteOverride] `Latency` directs Telnyx to route media through the site with the lowest round-t
271
+ #
272
+ # @param android_push_credential_id [String, nil] The uuid of the push credential for Android
273
+ #
274
+ # @param authentication [Symbol, Telnyx::Models::UacConnectionListResponse::Authentication] The authentication strategy used by this connection.
275
+ #
276
+ # @param call_cost_in_webhooks [Boolean] Specifies if call cost webhooks should be sent for this connection.
277
+ #
278
+ # @param connection_name [String]
279
+ #
280
+ # @param created_at [String] ISO-8601 formatted date indicating when the resource was created.
281
+ #
282
+ # @param default_on_hold_comfort_noise_enabled [Boolean] When enabled, Telnyx will generate comfort noise when you place the call on hold
283
+ #
284
+ # @param dtmf_type [Symbol, Telnyx::Models::DtmfType] Sets the type of DTMF digits sent from Telnyx to this Connection. Note that DTMF
285
+ #
286
+ # @param encode_contact_header_enabled [Boolean] Encode the SIP contact header sent by Telnyx to avoid issues for NAT or ALG scen
287
+ #
288
+ # @param encrypted_media [Symbol, Telnyx::Models::EncryptedMedia, nil] Enable use of SRTP for encryption. Cannot be set if the transport_portocol is TL
289
+ #
290
+ # @param external_uac_settings [Telnyx::Models::UacConnectionListResponse::ExternalUacSettings] External SIP peer settings used by Telnyx when registering to your PBX and routi
291
+ #
292
+ # @param fqdn [String] The Telnyx-managed FQDN generated for the UAC connection.
293
+ #
294
+ # @param fqdn_outbound_authentication [Symbol, Telnyx::Models::UacConnectionListResponse::FqdnOutboundAuthentication] The fixed outbound authentication mode used by UAC FQDN records.
295
+ #
296
+ # @param fqdns [Array<Telnyx::Models::Fqdn>] FQDN records managed automatically by the UAC connection lifecycle.
297
+ #
298
+ # @param inbound [Telnyx::Models::UacConnectionListResponse::Inbound]
299
+ #
300
+ # @param internal_uac_settings [Telnyx::Models::UacConnectionListResponse::InternalUacSettings] Internal Telnyx-side settings for a UAC connection.
301
+ #
302
+ # @param ios_push_credential_id [String, nil] The uuid of the push credential for Ios
303
+ #
304
+ # @param jitter_buffer [Telnyx::Models::ConnectionJitterBuffer] Configuration options for Jitter Buffer. Enables Jitter Buffer for RTP streams o
305
+ #
306
+ # @param noise_suppression [Symbol, Telnyx::Models::UacConnectionListResponse::NoiseSuppression] Controls when noise suppression is applied to calls. When set to 'inbound', nois
307
+ #
308
+ # @param noise_suppression_details [Telnyx::Models::ConnectionNoiseSuppressionDetails] Configuration options for noise suppression. These settings are stored regardles
309
+ #
310
+ # @param onnet_t38_passthrough_enabled [Boolean] Enable on-net T38 if you prefer the sender and receiver negotiating T38 directly
311
+ #
312
+ # @param outbound [Telnyx::Models::UacConnectionListResponse::Outbound]
313
+ #
314
+ # @param password [String] The password to be used as part of the credentials. Must be 8 to 128 characters
315
+ #
316
+ # @param record_type [String] Identifies the type of the resource.
317
+ #
318
+ # @param registration_status [String, nil] The most recently known SIP registration status for this UAC connection.
319
+ #
320
+ # @param registration_status_updated_at [String, nil] ISO 8601 formatted date indicating when the registration status was last updated
321
+ #
322
+ # @param rtcp_settings [Telnyx::Models::ConnectionRtcpSettings]
323
+ #
324
+ # @param sip_uri_calling_preference [Symbol, Telnyx::Models::UacConnectionListResponse::SipUriCallingPreference] This feature enables inbound SIP URI calls to your Credential Auth Connection. I
325
+ #
326
+ # @param tags [Array<String>] Tags associated with the connection.
327
+ #
328
+ # @param updated_at [String] ISO-8601 formatted date indicating when the resource was updated.
329
+ #
330
+ # @param user_name [String] The user name to be used as part of the credentials. Must be 4-32 characters lon
331
+ #
332
+ # @param webhook_api_version [Symbol, Telnyx::Models::UacConnectionListResponse::WebhookAPIVersion] Determines which webhook format will be used, Telnyx API v1 or v2.
333
+ #
334
+ # @param webhook_event_failover_url [String, nil] The failover URL where webhooks related to this connection will be sent if sendi
335
+ #
336
+ # @param webhook_event_url [String] The URL where webhooks related to this connection will be sent. Must include a s
337
+ #
338
+ # @param webhook_timeout_secs [Integer, nil] Specifies how many seconds to wait before timing out a webhook.
339
+
340
+ # The authentication strategy used by this connection.
341
+ #
342
+ # @see Telnyx::Models::UacConnectionListResponse#authentication
343
+ module Authentication
344
+ extend Telnyx::Internal::Type::Enum
345
+
346
+ UAC_AUTHENTICATION = :"uac-authentication"
347
+
348
+ # @!method self.values
349
+ # @return [Array<Symbol>]
350
+ end
351
+
352
+ # @see Telnyx::Models::UacConnectionListResponse#external_uac_settings
353
+ class ExternalUacSettings < Telnyx::Internal::Type::BaseModel
354
+ # @!attribute auth_username
355
+ # The authentication username used in SIP digest authentication. If not set, the
356
+ # Username value will be used.
357
+ #
358
+ # @return [String, nil]
359
+ optional :auth_username, String, nil?: true
360
+
361
+ # @!attribute expiration_sec
362
+ # The registration interval, in seconds, indicating how often the system refreshes
363
+ # the SIP registration with the external SIP peer.
364
+ #
365
+ # @return [Integer, nil]
366
+ optional :expiration_sec, Integer, nil?: true
367
+
368
+ # @!attribute from_user
369
+ # The user portion of the SIP From header used in outbound requests. This controls
370
+ # the caller identity presented to the external SIP peer.
371
+ #
372
+ # @return [String, nil]
373
+ optional :from_user, String, nil?: true
374
+
375
+ # @!attribute outbound_proxy
376
+ # An optional SIP proxy used to route outbound requests before reaching the
377
+ # external SIP peer.
378
+ #
379
+ # @return [String, nil]
380
+ optional :outbound_proxy, String, nil?: true
381
+
382
+ # @!attribute password
383
+ # The SIP password used for digest authentication with the external SIP peer.
384
+ #
385
+ # @return [String, nil]
386
+ optional :password, String
387
+
388
+ # @!attribute proxy
389
+ # The SIP proxy address of the external SIP peer used for registrations and
390
+ # outbound call routing.
391
+ #
392
+ # @return [String, nil]
393
+ optional :proxy, String
394
+
395
+ # @!attribute transport
396
+ # The transport protocol used for SIP signaling when communicating with the
397
+ # external SIP peer. One of UDP, TLS, or TCP.
398
+ #
399
+ # @return [Symbol, Telnyx::Models::UacConnectionListResponse::ExternalUacSettings::Transport, nil]
400
+ optional :transport,
401
+ enum: -> { Telnyx::Models::UacConnectionListResponse::ExternalUacSettings::Transport },
402
+ nil?: true
403
+
404
+ # @!attribute username
405
+ # The SIP username used to authenticate with the external SIP peer for
406
+ # registrations and outbound calls. Must start with a letter or number and contain
407
+ # only letters, numbers, hyphens, and underscores.
408
+ #
409
+ # @return [String, nil]
410
+ optional :username, String
411
+
412
+ # @!method initialize(auth_username: nil, expiration_sec: nil, from_user: nil, outbound_proxy: nil, password: nil, proxy: nil, transport: nil, username: nil)
413
+ # Some parameter documentations has been truncated, see
414
+ # {Telnyx::Models::UacConnectionListResponse::ExternalUacSettings} for more
415
+ # details.
416
+ #
417
+ # External SIP peer settings used by Telnyx when registering to your PBX and
418
+ # routing outbound calls.
419
+ #
420
+ # @param auth_username [String, nil] The authentication username used in SIP digest authentication. If not set, the U
421
+ #
422
+ # @param expiration_sec [Integer, nil] The registration interval, in seconds, indicating how often the system refreshes
423
+ #
424
+ # @param from_user [String, nil] The user portion of the SIP From header used in outbound requests. This controls
425
+ #
426
+ # @param outbound_proxy [String, nil] An optional SIP proxy used to route outbound requests before reaching the extern
427
+ #
428
+ # @param password [String] The SIP password used for digest authentication with the external SIP peer.
429
+ #
430
+ # @param proxy [String] The SIP proxy address of the external SIP peer used for registrations and outbou
431
+ #
432
+ # @param transport [Symbol, Telnyx::Models::UacConnectionListResponse::ExternalUacSettings::Transport, nil] The transport protocol used for SIP signaling when communicating with the extern
433
+ #
434
+ # @param username [String] The SIP username used to authenticate with the external SIP peer for registratio
435
+
436
+ # The transport protocol used for SIP signaling when communicating with the
437
+ # external SIP peer. One of UDP, TLS, or TCP.
438
+ #
439
+ # @see Telnyx::Models::UacConnectionListResponse::ExternalUacSettings#transport
440
+ module Transport
441
+ extend Telnyx::Internal::Type::Enum
442
+
443
+ UDP = :UDP
444
+ TLS = :TLS
445
+ TCP = :TCP
446
+
447
+ # @!method self.values
448
+ # @return [Array<Symbol>]
449
+ end
450
+ end
451
+
452
+ # The fixed outbound authentication mode used by UAC FQDN records.
453
+ #
454
+ # @see Telnyx::Models::UacConnectionListResponse#fqdn_outbound_authentication
455
+ module FqdnOutboundAuthentication
456
+ extend Telnyx::Internal::Type::Enum
457
+
458
+ CREDENTIAL_AUTHENTICATION = :"credential-authentication"
459
+
460
+ # @!method self.values
461
+ # @return [Array<Symbol>]
462
+ end
463
+
464
+ # @see Telnyx::Models::UacConnectionListResponse#inbound
465
+ class Inbound < Telnyx::Internal::Type::BaseModel
466
+ # @!attribute ani_number_format
467
+ # This setting allows you to set the format with which the caller's number (ANI)
468
+ # is sent for inbound phone calls.
469
+ #
470
+ # @return [Symbol, Telnyx::Models::UacConnectionListResponse::Inbound::AniNumberFormat, nil]
471
+ optional :ani_number_format,
472
+ enum: -> { Telnyx::Models::UacConnectionListResponse::Inbound::AniNumberFormat }
473
+
474
+ # @!attribute channel_limit
475
+ # When set, this will limit the total number of inbound calls to phone numbers
476
+ # associated with this connection.
477
+ #
478
+ # @return [Integer, nil]
479
+ optional :channel_limit, Integer
480
+
481
+ # @!attribute codecs
482
+ # Defines the list of codecs that Telnyx will send for inbound calls to a specific
483
+ # number on your portal account, in priority order. This only works when the
484
+ # Connection the number is assigned to uses Media Handling mode: default. OPUS and
485
+ # H.264 codecs are available only when using TCP or TLS transport for SIP.
486
+ #
487
+ # @return [Array<String>, nil]
488
+ optional :codecs, Telnyx::Internal::Type::ArrayOf[String]
489
+
490
+ # @!attribute default_routing_method
491
+ # Default routing method to be used when a number is associated with the
492
+ # connection. Must be one of the routing method types or left blank, other values
493
+ # are not allowed.
494
+ #
495
+ # @return [Symbol, Telnyx::Models::UacConnectionListResponse::Inbound::DefaultRoutingMethod, nil]
496
+ optional :default_routing_method,
497
+ enum: -> { Telnyx::Models::UacConnectionListResponse::Inbound::DefaultRoutingMethod }
498
+
499
+ # @!attribute dnis_number_format
500
+ #
501
+ # @return [Symbol, Telnyx::Models::UacConnectionListResponse::Inbound::DnisNumberFormat, nil]
502
+ optional :dnis_number_format,
503
+ enum: -> { Telnyx::Models::UacConnectionListResponse::Inbound::DnisNumberFormat }
504
+
505
+ # @!attribute generate_ringback_tone
506
+ # Generate ringback tone through 183 session progress message with early media.
507
+ #
508
+ # @return [Boolean, nil]
509
+ optional :generate_ringback_tone, Telnyx::Internal::Type::Boolean
510
+
511
+ # @!attribute isup_headers_enabled
512
+ # When set, inbound phone calls will receive ISUP parameters via SIP headers.
513
+ # (Only when available and only when using TCP or TLS transport.)
514
+ #
515
+ # @return [Boolean, nil]
516
+ optional :isup_headers_enabled, Telnyx::Internal::Type::Boolean
517
+
518
+ # @!attribute prack_enabled
519
+ # Enable PRACK messages as defined in RFC3262.
520
+ #
521
+ # @return [Boolean, nil]
522
+ optional :prack_enabled, Telnyx::Internal::Type::Boolean
523
+
524
+ # @!attribute shaken_stir_enabled
525
+ # When enabled the SIP Connection will receive the Identity header with
526
+ # Shaken/Stir data in the SIP INVITE message of inbound calls, even when using UDP
527
+ # transport.
528
+ #
529
+ # @return [Boolean, nil]
530
+ optional :shaken_stir_enabled, Telnyx::Internal::Type::Boolean
531
+
532
+ # @!attribute simultaneous_ringing
533
+ # When enabled, allows multiple devices to ring simultaneously on incoming calls.
534
+ #
535
+ # @return [Symbol, Telnyx::Models::UacConnectionListResponse::Inbound::SimultaneousRinging, nil]
536
+ optional :simultaneous_ringing,
537
+ enum: -> { Telnyx::Models::UacConnectionListResponse::Inbound::SimultaneousRinging }
538
+
539
+ # @!attribute sip_compact_headers_enabled
540
+ # Defaults to true.
541
+ #
542
+ # @return [Boolean, nil]
543
+ optional :sip_compact_headers_enabled, Telnyx::Internal::Type::Boolean
544
+
545
+ # @!attribute sip_subdomain
546
+ # The Telnyx-generated SIP subdomain for this UAC connection.
547
+ #
548
+ # @return [String, nil]
549
+ optional :sip_subdomain, String
550
+
551
+ # @!attribute sip_subdomain_receive_settings
552
+ # Controls which SIP URI callers may reach this connection.
553
+ #
554
+ # @return [Symbol, Telnyx::Models::UacConnectionListResponse::Inbound::SipSubdomainReceiveSettings, nil]
555
+ optional :sip_subdomain_receive_settings,
556
+ enum: -> { Telnyx::Models::UacConnectionListResponse::Inbound::SipSubdomainReceiveSettings }
557
+
558
+ # @!attribute timeout_1xx_secs
559
+ # Time(sec) before aborting if connection is not made.
560
+ #
561
+ # @return [Integer, nil]
562
+ optional :timeout_1xx_secs, Integer
563
+
564
+ # @!attribute timeout_2xx_secs
565
+ # Time(sec) before aborting if call is unanswered (min: 1, max: 600).
566
+ #
567
+ # @return [Integer, nil]
568
+ optional :timeout_2xx_secs, Integer
569
+
570
+ # @!method initialize(ani_number_format: nil, channel_limit: nil, codecs: nil, default_routing_method: nil, dnis_number_format: nil, generate_ringback_tone: nil, isup_headers_enabled: nil, prack_enabled: nil, shaken_stir_enabled: nil, simultaneous_ringing: nil, sip_compact_headers_enabled: nil, sip_subdomain: nil, sip_subdomain_receive_settings: nil, timeout_1xx_secs: nil, timeout_2xx_secs: nil)
571
+ # Some parameter documentations has been truncated, see
572
+ # {Telnyx::Models::UacConnectionListResponse::Inbound} for more details.
573
+ #
574
+ # @param ani_number_format [Symbol, Telnyx::Models::UacConnectionListResponse::Inbound::AniNumberFormat] This setting allows you to set the format with which the caller's number (ANI) i
575
+ #
576
+ # @param channel_limit [Integer] When set, this will limit the total number of inbound calls to phone numbers ass
577
+ #
578
+ # @param codecs [Array<String>] Defines the list of codecs that Telnyx will send for inbound calls to a specific
579
+ #
580
+ # @param default_routing_method [Symbol, Telnyx::Models::UacConnectionListResponse::Inbound::DefaultRoutingMethod] Default routing method to be used when a number is associated with the connectio
581
+ #
582
+ # @param dnis_number_format [Symbol, Telnyx::Models::UacConnectionListResponse::Inbound::DnisNumberFormat]
583
+ #
584
+ # @param generate_ringback_tone [Boolean] Generate ringback tone through 183 session progress message with early media.
585
+ #
586
+ # @param isup_headers_enabled [Boolean] When set, inbound phone calls will receive ISUP parameters via SIP headers. (Onl
587
+ #
588
+ # @param prack_enabled [Boolean] Enable PRACK messages as defined in RFC3262.
589
+ #
590
+ # @param shaken_stir_enabled [Boolean] When enabled the SIP Connection will receive the Identity header with Shaken/Sti
591
+ #
592
+ # @param simultaneous_ringing [Symbol, Telnyx::Models::UacConnectionListResponse::Inbound::SimultaneousRinging] When enabled, allows multiple devices to ring simultaneously on incoming calls.
593
+ #
594
+ # @param sip_compact_headers_enabled [Boolean] Defaults to true.
595
+ #
596
+ # @param sip_subdomain [String] The Telnyx-generated SIP subdomain for this UAC connection.
597
+ #
598
+ # @param sip_subdomain_receive_settings [Symbol, Telnyx::Models::UacConnectionListResponse::Inbound::SipSubdomainReceiveSettings] Controls which SIP URI callers may reach this connection.
599
+ #
600
+ # @param timeout_1xx_secs [Integer] Time(sec) before aborting if connection is not made.
601
+ #
602
+ # @param timeout_2xx_secs [Integer] Time(sec) before aborting if call is unanswered (min: 1, max: 600).
603
+
604
+ # This setting allows you to set the format with which the caller's number (ANI)
605
+ # is sent for inbound phone calls.
606
+ #
607
+ # @see Telnyx::Models::UacConnectionListResponse::Inbound#ani_number_format
608
+ module AniNumberFormat
609
+ extend Telnyx::Internal::Type::Enum
610
+
611
+ PLUS_E_164 = :"+E.164"
612
+ E_164 = :"E.164"
613
+ PLUS_E_164_NATIONAL = :"+E.164-national"
614
+ E_164_NATIONAL = :"E.164-national"
615
+
616
+ # @!method self.values
617
+ # @return [Array<Symbol>]
618
+ end
619
+
620
+ # Default routing method to be used when a number is associated with the
621
+ # connection. Must be one of the routing method types or left blank, other values
622
+ # are not allowed.
623
+ #
624
+ # @see Telnyx::Models::UacConnectionListResponse::Inbound#default_routing_method
625
+ module DefaultRoutingMethod
626
+ extend Telnyx::Internal::Type::Enum
627
+
628
+ SEQUENTIAL = :sequential
629
+ ROUND_ROBIN = :"round-robin"
630
+
631
+ # @!method self.values
632
+ # @return [Array<Symbol>]
633
+ end
634
+
635
+ # @see Telnyx::Models::UacConnectionListResponse::Inbound#dnis_number_format
636
+ module DnisNumberFormat
637
+ extend Telnyx::Internal::Type::Enum
638
+
639
+ PLUS_E164 = :"+e164"
640
+ E164 = :e164
641
+ NATIONAL = :national
642
+ SIP_USERNAME = :sip_username
643
+
644
+ # @!method self.values
645
+ # @return [Array<Symbol>]
646
+ end
647
+
648
+ # When enabled, allows multiple devices to ring simultaneously on incoming calls.
649
+ #
650
+ # @see Telnyx::Models::UacConnectionListResponse::Inbound#simultaneous_ringing
651
+ module SimultaneousRinging
652
+ extend Telnyx::Internal::Type::Enum
653
+
654
+ DISABLED = :disabled
655
+ ENABLED = :enabled
656
+
657
+ # @!method self.values
658
+ # @return [Array<Symbol>]
659
+ end
660
+
661
+ # Controls which SIP URI callers may reach this connection.
662
+ #
663
+ # @see Telnyx::Models::UacConnectionListResponse::Inbound#sip_subdomain_receive_settings
664
+ module SipSubdomainReceiveSettings
665
+ extend Telnyx::Internal::Type::Enum
666
+
667
+ ONLY_MY_CONNECTIONS = :only_my_connections
668
+ FROM_ANYONE = :from_anyone
669
+
670
+ # @!method self.values
671
+ # @return [Array<Symbol>]
672
+ end
673
+ end
674
+
675
+ # @see Telnyx::Models::UacConnectionListResponse#internal_uac_settings
676
+ class InternalUacSettings < Telnyx::Internal::Type::BaseModel
677
+ # @!attribute destination_uri
678
+ # The SIP URI that Telnyx will call when handling an inbound request from the
679
+ # external peer. Do not include a `sip:` prefix. The value must be in the format
680
+ # `userinfo@[subdomain.]sip.telnyx.com` or
681
+ # `userinfo@[subdomain.]sipdev.telnyx.com`; the userinfo portion may contain only
682
+ # letters, digits, hyphens, and underscores.
683
+ #
684
+ # @return [String, nil]
685
+ optional :destination_uri, String
686
+
687
+ # @!method initialize(destination_uri: nil)
688
+ # Some parameter documentations has been truncated, see
689
+ # {Telnyx::Models::UacConnectionListResponse::InternalUacSettings} for more
690
+ # details.
691
+ #
692
+ # Internal Telnyx-side settings for a UAC connection.
693
+ #
694
+ # @param destination_uri [String] The SIP URI that Telnyx will call when handling an inbound request from the exte
695
+ end
696
+
697
+ # Controls when noise suppression is applied to calls. When set to 'inbound',
698
+ # noise suppression is applied to incoming audio. When set to 'outbound', it's
699
+ # applied to outgoing audio. When set to 'both', it's applied in both directions.
700
+ # When set to 'disabled', noise suppression is turned off.
701
+ #
702
+ # @see Telnyx::Models::UacConnectionListResponse#noise_suppression
703
+ module NoiseSuppression
704
+ extend Telnyx::Internal::Type::Enum
705
+
706
+ INBOUND = :inbound
707
+ OUTBOUND = :outbound
708
+ BOTH = :both
709
+ DISABLED = :disabled
710
+
711
+ # @!method self.values
712
+ # @return [Array<Symbol>]
713
+ end
714
+
715
+ # @see Telnyx::Models::UacConnectionListResponse#outbound
716
+ class Outbound < Telnyx::Internal::Type::BaseModel
717
+ # @!attribute ani_override
718
+ # Set a phone number as the ani_override value to override caller id number on
719
+ # outbound calls.
720
+ #
721
+ # @return [String, nil]
722
+ optional :ani_override, String
723
+
724
+ # @!attribute ani_override_type
725
+ # Specifies when we apply your ani_override setting. Only applies when
726
+ # ani_override is not blank.
727
+ #
728
+ # @return [Symbol, Telnyx::Models::UacConnectionListResponse::Outbound::AniOverrideType, nil]
729
+ optional :ani_override_type,
730
+ enum: -> { Telnyx::Models::UacConnectionListResponse::Outbound::AniOverrideType }
731
+
732
+ # @!attribute call_parking_enabled
733
+ # Forces all SIP calls originated on this connection to be "parked" instead of
734
+ # "bridged" to the destination specified on the URI. Parked calls will return
735
+ # ringback to the caller and will await for a Call Control command to define which
736
+ # action will be taken next.
737
+ #
738
+ # @return [Boolean, nil]
739
+ optional :call_parking_enabled, Telnyx::Internal::Type::Boolean, nil?: true
740
+
741
+ # @!attribute channel_limit
742
+ # When set, this will limit the total number of outbound calls to phone numbers
743
+ # associated with this connection.
744
+ #
745
+ # @return [Integer, nil]
746
+ optional :channel_limit, Integer
747
+
748
+ # @!attribute generate_ringback_tone
749
+ # Generate ringback tone through 183 session progress message with early media.
750
+ #
751
+ # @return [Boolean, nil]
752
+ optional :generate_ringback_tone, Telnyx::Internal::Type::Boolean
753
+
754
+ # @!attribute instant_ringback_enabled
755
+ # When set, ringback will not wait for indication before sending ringback tone to
756
+ # calling party.
757
+ #
758
+ # @return [Boolean, nil]
759
+ optional :instant_ringback_enabled, Telnyx::Internal::Type::Boolean
760
+
761
+ # @!attribute localization
762
+ # A 2-character country code specifying the country whose national dialing rules
763
+ # should be used. For example, if set to `US` then any US number can be dialed
764
+ # without preprending +1 to the number. When left blank, Telnyx will try US and GB
765
+ # dialing rules, in that order, by default.
766
+ #
767
+ # @return [String, nil]
768
+ optional :localization, String
769
+
770
+ # @!attribute outbound_voice_profile_id
771
+ # Identifies the associated outbound voice profile.
772
+ #
773
+ # @return [String, nil]
774
+ optional :outbound_voice_profile_id, String
775
+
776
+ # @!attribute t38_reinvite_source
777
+ # This setting only affects connections with Fax-type Outbound Voice Profiles. The
778
+ # setting dictates whether or not Telnyx sends a t.38 reinvite.<br/><br/> By
779
+ # default, Telnyx will send the re-invite. If set to `customer`, the caller is
780
+ # expected to send the t.38 reinvite.
781
+ #
782
+ # @return [Symbol, Telnyx::Models::UacConnectionListResponse::Outbound::T38ReinviteSource, nil]
783
+ optional :t38_reinvite_source,
784
+ enum: -> { Telnyx::Models::UacConnectionListResponse::Outbound::T38ReinviteSource }
785
+
786
+ # @!method initialize(ani_override: nil, ani_override_type: nil, call_parking_enabled: nil, channel_limit: nil, generate_ringback_tone: nil, instant_ringback_enabled: nil, localization: nil, outbound_voice_profile_id: nil, t38_reinvite_source: nil)
787
+ # Some parameter documentations has been truncated, see
788
+ # {Telnyx::Models::UacConnectionListResponse::Outbound} for more details.
789
+ #
790
+ # @param ani_override [String] Set a phone number as the ani_override value to override caller id number on out
791
+ #
792
+ # @param ani_override_type [Symbol, Telnyx::Models::UacConnectionListResponse::Outbound::AniOverrideType] Specifies when we apply your ani_override setting. Only applies when ani_overrid
793
+ #
794
+ # @param call_parking_enabled [Boolean, nil] Forces all SIP calls originated on this connection to be "parked" instead of "br
795
+ #
796
+ # @param channel_limit [Integer] When set, this will limit the total number of outbound calls to phone numbers as
797
+ #
798
+ # @param generate_ringback_tone [Boolean] Generate ringback tone through 183 session progress message with early media.
799
+ #
800
+ # @param instant_ringback_enabled [Boolean] When set, ringback will not wait for indication before sending ringback tone to
801
+ #
802
+ # @param localization [String] A 2-character country code specifying the country whose national dialing rules s
803
+ #
804
+ # @param outbound_voice_profile_id [String] Identifies the associated outbound voice profile.
805
+ #
806
+ # @param t38_reinvite_source [Symbol, Telnyx::Models::UacConnectionListResponse::Outbound::T38ReinviteSource] This setting only affects connections with Fax-type Outbound Voice Profiles. The
807
+
808
+ # Specifies when we apply your ani_override setting. Only applies when
809
+ # ani_override is not blank.
810
+ #
811
+ # @see Telnyx::Models::UacConnectionListResponse::Outbound#ani_override_type
812
+ module AniOverrideType
813
+ extend Telnyx::Internal::Type::Enum
814
+
815
+ ALWAYS = :always
816
+ NORMAL = :normal
817
+ EMERGENCY = :emergency
818
+
819
+ # @!method self.values
820
+ # @return [Array<Symbol>]
821
+ end
822
+
823
+ # This setting only affects connections with Fax-type Outbound Voice Profiles. The
824
+ # setting dictates whether or not Telnyx sends a t.38 reinvite.<br/><br/> By
825
+ # default, Telnyx will send the re-invite. If set to `customer`, the caller is
826
+ # expected to send the t.38 reinvite.
827
+ #
828
+ # @see Telnyx::Models::UacConnectionListResponse::Outbound#t38_reinvite_source
829
+ module T38ReinviteSource
830
+ extend Telnyx::Internal::Type::Enum
831
+
832
+ TELNYX = :telnyx
833
+ CUSTOMER = :customer
834
+ DISABLED = :disabled
835
+ PASSTHRU = :passthru
836
+ CALLER_PASSTHRU = :"caller-passthru"
837
+ CALLEE_PASSTHRU = :"callee-passthru"
838
+
839
+ # @!method self.values
840
+ # @return [Array<Symbol>]
841
+ end
842
+ end
843
+
844
+ # This feature enables inbound SIP URI calls to your Credential Auth Connection.
845
+ # If enabled for all (unrestricted) then anyone who calls the SIP URI
846
+ # <your-username>@telnyx.com will be connected to your Connection. You can also
847
+ # choose to allow only calls that are originated on any Connections under your
848
+ # account (internal).
849
+ #
850
+ # @see Telnyx::Models::UacConnectionListResponse#sip_uri_calling_preference
851
+ module SipUriCallingPreference
852
+ extend Telnyx::Internal::Type::Enum
853
+
854
+ DISABLED = :disabled
855
+ UNRESTRICTED = :unrestricted
856
+ INTERNAL = :internal
857
+
858
+ # @!method self.values
859
+ # @return [Array<Symbol>]
860
+ end
861
+
862
+ # Determines which webhook format will be used, Telnyx API v1 or v2.
863
+ #
864
+ # @see Telnyx::Models::UacConnectionListResponse#webhook_api_version
865
+ module WebhookAPIVersion
866
+ extend Telnyx::Internal::Type::Enum
867
+
868
+ V1 = :"1"
869
+ V2 = :"2"
870
+
871
+ # @!method self.values
872
+ # @return [Array<Symbol>]
873
+ end
874
+ end
875
+ end
876
+ end