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