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