telnyx 5.2.0 → 5.3.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 (44) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/models/credential_connection.rb +69 -1
  5. data/lib/telnyx/models/credential_connection_create_params.rb +53 -1
  6. data/lib/telnyx/models/credential_connection_update_params.rb +53 -1
  7. data/lib/telnyx/models/credential_inbound.rb +26 -1
  8. data/lib/telnyx/models/fqdn_connection.rb +69 -1
  9. data/lib/telnyx/models/fqdn_connection_create_params.rb +52 -1
  10. data/lib/telnyx/models/fqdn_connection_update_params.rb +52 -1
  11. data/lib/telnyx/models/ip_connection.rb +69 -1
  12. data/lib/telnyx/models/ip_connection_create_params.rb +52 -1
  13. data/lib/telnyx/models/ip_connection_update_params.rb +52 -1
  14. data/lib/telnyx/resources/credential_connections.rb +6 -2
  15. data/lib/telnyx/resources/fqdn_connections.rb +6 -2
  16. data/lib/telnyx/resources/ip_connections.rb +6 -2
  17. data/lib/telnyx/version.rb +1 -1
  18. data/rbi/telnyx/models/credential_connection.rbi +110 -0
  19. data/rbi/telnyx/models/credential_connection_create_params.rbi +101 -0
  20. data/rbi/telnyx/models/credential_connection_update_params.rbi +101 -0
  21. data/rbi/telnyx/models/credential_inbound.rbi +60 -0
  22. data/rbi/telnyx/models/fqdn_connection.rbi +108 -0
  23. data/rbi/telnyx/models/fqdn_connection_create_params.rbi +98 -0
  24. data/rbi/telnyx/models/fqdn_connection_update_params.rbi +98 -0
  25. data/rbi/telnyx/models/ip_connection.rbi +105 -0
  26. data/rbi/telnyx/models/ip_connection_create_params.rbi +94 -0
  27. data/rbi/telnyx/models/ip_connection_update_params.rbi +94 -0
  28. data/rbi/telnyx/resources/credential_connections.rbi +16 -0
  29. data/rbi/telnyx/resources/fqdn_connections.rbi +16 -0
  30. data/rbi/telnyx/resources/ip_connections.rbi +14 -0
  31. data/sig/telnyx/models/credential_connection.rbs +52 -0
  32. data/sig/telnyx/models/credential_connection_create_params.rbs +42 -0
  33. data/sig/telnyx/models/credential_connection_update_params.rbs +42 -0
  34. data/sig/telnyx/models/credential_inbound.rbs +20 -0
  35. data/sig/telnyx/models/fqdn_connection.rbs +52 -0
  36. data/sig/telnyx/models/fqdn_connection_create_params.rbs +42 -0
  37. data/sig/telnyx/models/fqdn_connection_update_params.rbs +42 -0
  38. data/sig/telnyx/models/ip_connection.rbs +52 -0
  39. data/sig/telnyx/models/ip_connection_create_params.rbs +42 -0
  40. data/sig/telnyx/models/ip_connection_update_params.rbs +42 -0
  41. data/sig/telnyx/resources/credential_connections.rbs +2 -0
  42. data/sig/telnyx/resources/fqdn_connections.rbs +2 -0
  43. data/sig/telnyx/resources/ip_connections.rbs +2 -0
  44. metadata +2 -2
@@ -97,6 +97,26 @@ module Telnyx
97
97
  sig { returns(T.nilable(String)) }
98
98
  attr_accessor :ios_push_credential_id
99
99
 
100
+ # Configuration options for Jitter Buffer. Enables Jitter Buffer for RTP streams
101
+ # of SIP Trunking calls. The feature is off unless enabled. You may define min and
102
+ # max values in msec for customized buffering behaviors. Larger values add latency
103
+ # but tolerate more jitter, while smaller values reduce latency but are more
104
+ # sensitive to jitter and reordering.
105
+ sig do
106
+ returns(
107
+ T.nilable(Telnyx::CredentialConnectionCreateParams::JitterBuffer)
108
+ )
109
+ end
110
+ attr_reader :jitter_buffer
111
+
112
+ sig do
113
+ params(
114
+ jitter_buffer:
115
+ Telnyx::CredentialConnectionCreateParams::JitterBuffer::OrHash
116
+ ).void
117
+ end
118
+ attr_writer :jitter_buffer
119
+
100
120
  # Controls when noise suppression is applied to calls. When set to 'inbound',
101
121
  # noise suppression is applied to incoming audio. When set to 'outbound', it's
102
122
  # applied to outgoing audio. When set to 'both', it's applied in both directions.
@@ -235,6 +255,8 @@ module Telnyx
235
255
  encrypted_media: T.nilable(Telnyx::EncryptedMedia::OrSymbol),
236
256
  inbound: Telnyx::CredentialInbound::OrHash,
237
257
  ios_push_credential_id: T.nilable(String),
258
+ jitter_buffer:
259
+ Telnyx::CredentialConnectionCreateParams::JitterBuffer::OrHash,
238
260
  noise_suppression:
239
261
  Telnyx::CredentialConnectionCreateParams::NoiseSuppression::OrSymbol,
240
262
  noise_suppression_details:
@@ -288,6 +310,12 @@ module Telnyx
288
310
  inbound: nil,
289
311
  # The uuid of the push credential for Ios
290
312
  ios_push_credential_id: nil,
313
+ # Configuration options for Jitter Buffer. Enables Jitter Buffer for RTP streams
314
+ # of SIP Trunking calls. The feature is off unless enabled. You may define min and
315
+ # max values in msec for customized buffering behaviors. Larger values add latency
316
+ # but tolerate more jitter, while smaller values reduce latency but are more
317
+ # sensitive to jitter and reordering.
318
+ jitter_buffer: nil,
291
319
  # Controls when noise suppression is applied to calls. When set to 'inbound',
292
320
  # noise suppression is applied to incoming audio. When set to 'outbound', it's
293
321
  # applied to outgoing audio. When set to 'both', it's applied in both directions.
@@ -344,6 +372,8 @@ module Telnyx
344
372
  encrypted_media: T.nilable(Telnyx::EncryptedMedia::OrSymbol),
345
373
  inbound: Telnyx::CredentialInbound,
346
374
  ios_push_credential_id: T.nilable(String),
375
+ jitter_buffer:
376
+ Telnyx::CredentialConnectionCreateParams::JitterBuffer,
347
377
  noise_suppression:
348
378
  Telnyx::CredentialConnectionCreateParams::NoiseSuppression::OrSymbol,
349
379
  noise_suppression_details:
@@ -366,6 +396,77 @@ module Telnyx
366
396
  def to_hash
367
397
  end
368
398
 
399
+ class JitterBuffer < Telnyx::Internal::Type::BaseModel
400
+ OrHash =
401
+ T.type_alias do
402
+ T.any(
403
+ Telnyx::CredentialConnectionCreateParams::JitterBuffer,
404
+ Telnyx::Internal::AnyHash
405
+ )
406
+ end
407
+
408
+ # Enables Jitter Buffer for RTP streams of SIP Trunking calls. The feature is off
409
+ # unless enabled.
410
+ sig { returns(T.nilable(T::Boolean)) }
411
+ attr_reader :enable_jitter_buffer
412
+
413
+ sig { params(enable_jitter_buffer: T::Boolean).void }
414
+ attr_writer :enable_jitter_buffer
415
+
416
+ # The maximum jitter buffer size in milliseconds. Must be between 40 and 400. Has
417
+ # no effect if enable_jitter_buffer is not true.
418
+ sig { returns(T.nilable(Integer)) }
419
+ attr_reader :jitterbuffer_msec_max
420
+
421
+ sig { params(jitterbuffer_msec_max: Integer).void }
422
+ attr_writer :jitterbuffer_msec_max
423
+
424
+ # The minimum jitter buffer size in milliseconds. Must be between 40 and 400. Has
425
+ # no effect if enable_jitter_buffer is not true.
426
+ sig { returns(T.nilable(Integer)) }
427
+ attr_reader :jitterbuffer_msec_min
428
+
429
+ sig { params(jitterbuffer_msec_min: Integer).void }
430
+ attr_writer :jitterbuffer_msec_min
431
+
432
+ # Configuration options for Jitter Buffer. Enables Jitter Buffer for RTP streams
433
+ # of SIP Trunking calls. The feature is off unless enabled. You may define min and
434
+ # max values in msec for customized buffering behaviors. Larger values add latency
435
+ # but tolerate more jitter, while smaller values reduce latency but are more
436
+ # sensitive to jitter and reordering.
437
+ sig do
438
+ params(
439
+ enable_jitter_buffer: T::Boolean,
440
+ jitterbuffer_msec_max: Integer,
441
+ jitterbuffer_msec_min: Integer
442
+ ).returns(T.attached_class)
443
+ end
444
+ def self.new(
445
+ # Enables Jitter Buffer for RTP streams of SIP Trunking calls. The feature is off
446
+ # unless enabled.
447
+ enable_jitter_buffer: nil,
448
+ # The maximum jitter buffer size in milliseconds. Must be between 40 and 400. Has
449
+ # no effect if enable_jitter_buffer is not true.
450
+ jitterbuffer_msec_max: nil,
451
+ # The minimum jitter buffer size in milliseconds. Must be between 40 and 400. Has
452
+ # no effect if enable_jitter_buffer is not true.
453
+ jitterbuffer_msec_min: nil
454
+ )
455
+ end
456
+
457
+ sig do
458
+ override.returns(
459
+ {
460
+ enable_jitter_buffer: T::Boolean,
461
+ jitterbuffer_msec_max: Integer,
462
+ jitterbuffer_msec_min: Integer
463
+ }
464
+ )
465
+ end
466
+ def to_hash
467
+ end
468
+ end
469
+
369
470
  # Controls when noise suppression is applied to calls. When set to 'inbound',
370
471
  # noise suppression is applied to incoming audio. When set to 'outbound', it's
371
472
  # applied to outgoing audio. When set to 'both', it's applied in both directions.
@@ -90,6 +90,26 @@ module Telnyx
90
90
  sig { returns(T.nilable(String)) }
91
91
  attr_accessor :ios_push_credential_id
92
92
 
93
+ # Configuration options for Jitter Buffer. Enables Jitter Buffer for RTP streams
94
+ # of SIP Trunking calls. The feature is off unless enabled. You may define min and
95
+ # max values in msec for customized buffering behaviors. Larger values add latency
96
+ # but tolerate more jitter, while smaller values reduce latency but are more
97
+ # sensitive to jitter and reordering.
98
+ sig do
99
+ returns(
100
+ T.nilable(Telnyx::CredentialConnectionUpdateParams::JitterBuffer)
101
+ )
102
+ end
103
+ attr_reader :jitter_buffer
104
+
105
+ sig do
106
+ params(
107
+ jitter_buffer:
108
+ Telnyx::CredentialConnectionUpdateParams::JitterBuffer::OrHash
109
+ ).void
110
+ end
111
+ attr_writer :jitter_buffer
112
+
93
113
  # Controls when noise suppression is applied to calls. When set to 'inbound',
94
114
  # noise suppression is applied to incoming audio. When set to 'outbound', it's
95
115
  # applied to outgoing audio. When set to 'both', it's applied in both directions.
@@ -240,6 +260,8 @@ module Telnyx
240
260
  encrypted_media: T.nilable(Telnyx::EncryptedMedia::OrSymbol),
241
261
  inbound: Telnyx::CredentialInbound::OrHash,
242
262
  ios_push_credential_id: T.nilable(String),
263
+ jitter_buffer:
264
+ Telnyx::CredentialConnectionUpdateParams::JitterBuffer::OrHash,
243
265
  noise_suppression:
244
266
  Telnyx::CredentialConnectionUpdateParams::NoiseSuppression::OrSymbol,
245
267
  noise_suppression_details:
@@ -289,6 +311,12 @@ module Telnyx
289
311
  inbound: nil,
290
312
  # The uuid of the push credential for Ios
291
313
  ios_push_credential_id: nil,
314
+ # Configuration options for Jitter Buffer. Enables Jitter Buffer for RTP streams
315
+ # of SIP Trunking calls. The feature is off unless enabled. You may define min and
316
+ # max values in msec for customized buffering behaviors. Larger values add latency
317
+ # but tolerate more jitter, while smaller values reduce latency but are more
318
+ # sensitive to jitter and reordering.
319
+ jitter_buffer: nil,
292
320
  # Controls when noise suppression is applied to calls. When set to 'inbound',
293
321
  # noise suppression is applied to incoming audio. When set to 'outbound', it's
294
322
  # applied to outgoing audio. When set to 'both', it's applied in both directions.
@@ -347,6 +375,8 @@ module Telnyx
347
375
  encrypted_media: T.nilable(Telnyx::EncryptedMedia::OrSymbol),
348
376
  inbound: Telnyx::CredentialInbound,
349
377
  ios_push_credential_id: T.nilable(String),
378
+ jitter_buffer:
379
+ Telnyx::CredentialConnectionUpdateParams::JitterBuffer,
350
380
  noise_suppression:
351
381
  Telnyx::CredentialConnectionUpdateParams::NoiseSuppression::OrSymbol,
352
382
  noise_suppression_details:
@@ -371,6 +401,77 @@ module Telnyx
371
401
  def to_hash
372
402
  end
373
403
 
404
+ class JitterBuffer < Telnyx::Internal::Type::BaseModel
405
+ OrHash =
406
+ T.type_alias do
407
+ T.any(
408
+ Telnyx::CredentialConnectionUpdateParams::JitterBuffer,
409
+ Telnyx::Internal::AnyHash
410
+ )
411
+ end
412
+
413
+ # Enables Jitter Buffer for RTP streams of SIP Trunking calls. The feature is off
414
+ # unless enabled.
415
+ sig { returns(T.nilable(T::Boolean)) }
416
+ attr_reader :enable_jitter_buffer
417
+
418
+ sig { params(enable_jitter_buffer: T::Boolean).void }
419
+ attr_writer :enable_jitter_buffer
420
+
421
+ # The maximum jitter buffer size in milliseconds. Must be between 40 and 400. Has
422
+ # no effect if enable_jitter_buffer is not true.
423
+ sig { returns(T.nilable(Integer)) }
424
+ attr_reader :jitterbuffer_msec_max
425
+
426
+ sig { params(jitterbuffer_msec_max: Integer).void }
427
+ attr_writer :jitterbuffer_msec_max
428
+
429
+ # The minimum jitter buffer size in milliseconds. Must be between 40 and 400. Has
430
+ # no effect if enable_jitter_buffer is not true.
431
+ sig { returns(T.nilable(Integer)) }
432
+ attr_reader :jitterbuffer_msec_min
433
+
434
+ sig { params(jitterbuffer_msec_min: Integer).void }
435
+ attr_writer :jitterbuffer_msec_min
436
+
437
+ # Configuration options for Jitter Buffer. Enables Jitter Buffer for RTP streams
438
+ # of SIP Trunking calls. The feature is off unless enabled. You may define min and
439
+ # max values in msec for customized buffering behaviors. Larger values add latency
440
+ # but tolerate more jitter, while smaller values reduce latency but are more
441
+ # sensitive to jitter and reordering.
442
+ sig do
443
+ params(
444
+ enable_jitter_buffer: T::Boolean,
445
+ jitterbuffer_msec_max: Integer,
446
+ jitterbuffer_msec_min: Integer
447
+ ).returns(T.attached_class)
448
+ end
449
+ def self.new(
450
+ # Enables Jitter Buffer for RTP streams of SIP Trunking calls. The feature is off
451
+ # unless enabled.
452
+ enable_jitter_buffer: nil,
453
+ # The maximum jitter buffer size in milliseconds. Must be between 40 and 400. Has
454
+ # no effect if enable_jitter_buffer is not true.
455
+ jitterbuffer_msec_max: nil,
456
+ # The minimum jitter buffer size in milliseconds. Must be between 40 and 400. Has
457
+ # no effect if enable_jitter_buffer is not true.
458
+ jitterbuffer_msec_min: nil
459
+ )
460
+ end
461
+
462
+ sig do
463
+ override.returns(
464
+ {
465
+ enable_jitter_buffer: T::Boolean,
466
+ jitterbuffer_msec_max: Integer,
467
+ jitterbuffer_msec_min: Integer
468
+ }
469
+ )
470
+ end
471
+ def to_hash
472
+ end
473
+ end
474
+
374
475
  # Controls when noise suppression is applied to calls. When set to 'inbound',
375
476
  # noise suppression is applied to incoming audio. When set to 'outbound', it's
376
477
  # applied to outgoing audio. When set to 'both', it's applied in both directions.
@@ -41,6 +41,24 @@ module Telnyx
41
41
  sig { params(codecs: T::Array[String]).void }
42
42
  attr_writer :codecs
43
43
 
44
+ # Default routing method to be used when a number is associated with the
45
+ # connection. Must be one of the routing method types or left blank, other values
46
+ # are not allowed.
47
+ sig do
48
+ returns(
49
+ T.nilable(Telnyx::CredentialInbound::DefaultRoutingMethod::OrSymbol)
50
+ )
51
+ end
52
+ attr_reader :default_routing_method
53
+
54
+ sig do
55
+ params(
56
+ default_routing_method:
57
+ Telnyx::CredentialInbound::DefaultRoutingMethod::OrSymbol
58
+ ).void
59
+ end
60
+ attr_writer :default_routing_method
61
+
44
62
  sig do
45
63
  returns(
46
64
  T.nilable(Telnyx::CredentialInbound::DnisNumberFormat::OrSymbol)
@@ -130,6 +148,8 @@ module Telnyx
130
148
  Telnyx::CredentialInbound::AniNumberFormat::OrSymbol,
131
149
  channel_limit: Integer,
132
150
  codecs: T::Array[String],
151
+ default_routing_method:
152
+ Telnyx::CredentialInbound::DefaultRoutingMethod::OrSymbol,
133
153
  dnis_number_format:
134
154
  Telnyx::CredentialInbound::DnisNumberFormat::OrSymbol,
135
155
  generate_ringback_tone: T::Boolean,
@@ -155,6 +175,10 @@ module Telnyx
155
175
  # Connection the number is assigned to uses Media Handling mode: default. OPUS and
156
176
  # H.264 codecs are available only when using TCP or TLS transport for SIP.
157
177
  codecs: nil,
178
+ # Default routing method to be used when a number is associated with the
179
+ # connection. Must be one of the routing method types or left blank, other values
180
+ # are not allowed.
181
+ default_routing_method: nil,
158
182
  dnis_number_format: nil,
159
183
  # Generate ringback tone through 183 session progress message with early media.
160
184
  generate_ringback_tone: nil,
@@ -185,6 +209,8 @@ module Telnyx
185
209
  Telnyx::CredentialInbound::AniNumberFormat::OrSymbol,
186
210
  channel_limit: Integer,
187
211
  codecs: T::Array[String],
212
+ default_routing_method:
213
+ Telnyx::CredentialInbound::DefaultRoutingMethod::OrSymbol,
188
214
  dnis_number_format:
189
215
  Telnyx::CredentialInbound::DnisNumberFormat::OrSymbol,
190
216
  generate_ringback_tone: T::Boolean,
@@ -243,6 +269,40 @@ module Telnyx
243
269
  end
244
270
  end
245
271
 
272
+ # Default routing method to be used when a number is associated with the
273
+ # connection. Must be one of the routing method types or left blank, other values
274
+ # are not allowed.
275
+ module DefaultRoutingMethod
276
+ extend Telnyx::Internal::Type::Enum
277
+
278
+ TaggedSymbol =
279
+ T.type_alias do
280
+ T.all(Symbol, Telnyx::CredentialInbound::DefaultRoutingMethod)
281
+ end
282
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
283
+
284
+ SEQUENTIAL =
285
+ T.let(
286
+ :sequential,
287
+ Telnyx::CredentialInbound::DefaultRoutingMethod::TaggedSymbol
288
+ )
289
+ ROUND_ROBIN =
290
+ T.let(
291
+ :"round-robin",
292
+ Telnyx::CredentialInbound::DefaultRoutingMethod::TaggedSymbol
293
+ )
294
+
295
+ sig do
296
+ override.returns(
297
+ T::Array[
298
+ Telnyx::CredentialInbound::DefaultRoutingMethod::TaggedSymbol
299
+ ]
300
+ )
301
+ end
302
+ def self.values
303
+ end
304
+ end
305
+
246
306
  module DnisNumberFormat
247
307
  extend Telnyx::Internal::Type::Enum
248
308
 
@@ -44,6 +44,10 @@ module Telnyx
44
44
  end
45
45
  attr_writer :anchorsite_override
46
46
 
47
+ # The uuid of the push credential for Android
48
+ sig { returns(T.nilable(String)) }
49
+ attr_accessor :android_push_credential_id
50
+
47
51
  # Indicates whether call cost calculation is enabled.
48
52
  sig { returns(T.nilable(T::Boolean)) }
49
53
  attr_reader :call_cost_enabled
@@ -115,6 +119,23 @@ module Telnyx
115
119
  sig { params(inbound: Telnyx::InboundFqdn::OrHash).void }
116
120
  attr_writer :inbound
117
121
 
122
+ # The uuid of the push credential for Ios
123
+ sig { returns(T.nilable(String)) }
124
+ attr_accessor :ios_push_credential_id
125
+
126
+ # Configuration options for Jitter Buffer. Enables Jitter Buffer for RTP streams
127
+ # of SIP Trunking calls. The feature is off unless enabled. You may define min and
128
+ # max values in msec for customized buffering behaviors. Larger values add latency
129
+ # but tolerate more jitter, while smaller values reduce latency but are more
130
+ # sensitive to jitter and reordering.
131
+ sig { returns(T.nilable(Telnyx::FqdnConnection::JitterBuffer)) }
132
+ attr_reader :jitter_buffer
133
+
134
+ sig do
135
+ params(jitter_buffer: Telnyx::FqdnConnection::JitterBuffer::OrHash).void
136
+ end
137
+ attr_writer :jitter_buffer
138
+
118
139
  # The connection is enabled for Microsoft Teams Direct Routing.
119
140
  sig { returns(T.nilable(T::Boolean)) }
120
141
  attr_reader :microsoft_teams_sbc
@@ -296,6 +317,7 @@ module Telnyx
296
317
  active: T::Boolean,
297
318
  adjust_dtmf_timestamp: T::Boolean,
298
319
  anchorsite_override: Telnyx::AnchorsiteOverride::OrSymbol,
320
+ android_push_credential_id: T.nilable(String),
299
321
  call_cost_enabled: T::Boolean,
300
322
  call_cost_in_webhooks: T::Boolean,
301
323
  created_at: String,
@@ -306,6 +328,8 @@ module Telnyx
306
328
  ignore_dtmf_duration: T::Boolean,
307
329
  ignore_mark_bit: T::Boolean,
308
330
  inbound: Telnyx::InboundFqdn::OrHash,
331
+ ios_push_credential_id: T.nilable(String),
332
+ jitter_buffer: Telnyx::FqdnConnection::JitterBuffer::OrHash,
309
333
  microsoft_teams_sbc: T::Boolean,
310
334
  noise_suppression: Telnyx::FqdnConnection::NoiseSuppression::OrSymbol,
311
335
  noise_suppression_details:
@@ -344,6 +368,8 @@ module Telnyx
344
368
  # round-trip time to the user's connection. Telnyx calculates this time using ICMP
345
369
  # ping messages. This can be disabled by specifying a site to handle all media.
346
370
  anchorsite_override: nil,
371
+ # The uuid of the push credential for Android
372
+ android_push_credential_id: nil,
347
373
  # Indicates whether call cost calculation is enabled.
348
374
  call_cost_enabled: nil,
349
375
  # Specifies if call cost webhooks should be sent for this connection.
@@ -368,6 +394,14 @@ module Telnyx
368
394
  # Indicates whether the mark bit should be ignored.
369
395
  ignore_mark_bit: nil,
370
396
  inbound: nil,
397
+ # The uuid of the push credential for Ios
398
+ ios_push_credential_id: nil,
399
+ # Configuration options for Jitter Buffer. Enables Jitter Buffer for RTP streams
400
+ # of SIP Trunking calls. The feature is off unless enabled. You may define min and
401
+ # max values in msec for customized buffering behaviors. Larger values add latency
402
+ # but tolerate more jitter, while smaller values reduce latency but are more
403
+ # sensitive to jitter and reordering.
404
+ jitter_buffer: nil,
371
405
  # The connection is enabled for Microsoft Teams Direct Routing.
372
406
  microsoft_teams_sbc: nil,
373
407
  # Controls when noise suppression is applied to calls. When set to 'inbound',
@@ -432,6 +466,7 @@ module Telnyx
432
466
  active: T::Boolean,
433
467
  adjust_dtmf_timestamp: T::Boolean,
434
468
  anchorsite_override: Telnyx::AnchorsiteOverride::TaggedSymbol,
469
+ android_push_credential_id: T.nilable(String),
435
470
  call_cost_enabled: T::Boolean,
436
471
  call_cost_in_webhooks: T::Boolean,
437
472
  created_at: String,
@@ -442,6 +477,8 @@ module Telnyx
442
477
  ignore_dtmf_duration: T::Boolean,
443
478
  ignore_mark_bit: T::Boolean,
444
479
  inbound: Telnyx::InboundFqdn,
480
+ ios_push_credential_id: T.nilable(String),
481
+ jitter_buffer: Telnyx::FqdnConnection::JitterBuffer,
445
482
  microsoft_teams_sbc: T::Boolean,
446
483
  noise_suppression:
447
484
  Telnyx::FqdnConnection::NoiseSuppression::TaggedSymbol,
@@ -472,6 +509,77 @@ module Telnyx
472
509
  def to_hash
473
510
  end
474
511
 
512
+ class JitterBuffer < Telnyx::Internal::Type::BaseModel
513
+ OrHash =
514
+ T.type_alias do
515
+ T.any(
516
+ Telnyx::FqdnConnection::JitterBuffer,
517
+ Telnyx::Internal::AnyHash
518
+ )
519
+ end
520
+
521
+ # Enables Jitter Buffer for RTP streams of SIP Trunking calls. The feature is off
522
+ # unless enabled.
523
+ sig { returns(T.nilable(T::Boolean)) }
524
+ attr_reader :enable_jitter_buffer
525
+
526
+ sig { params(enable_jitter_buffer: T::Boolean).void }
527
+ attr_writer :enable_jitter_buffer
528
+
529
+ # The maximum jitter buffer size in milliseconds. Must be between 40 and 400. Has
530
+ # no effect if enable_jitter_buffer is not true.
531
+ sig { returns(T.nilable(Integer)) }
532
+ attr_reader :jitterbuffer_msec_max
533
+
534
+ sig { params(jitterbuffer_msec_max: Integer).void }
535
+ attr_writer :jitterbuffer_msec_max
536
+
537
+ # The minimum jitter buffer size in milliseconds. Must be between 40 and 400. Has
538
+ # no effect if enable_jitter_buffer is not true.
539
+ sig { returns(T.nilable(Integer)) }
540
+ attr_reader :jitterbuffer_msec_min
541
+
542
+ sig { params(jitterbuffer_msec_min: Integer).void }
543
+ attr_writer :jitterbuffer_msec_min
544
+
545
+ # Configuration options for Jitter Buffer. Enables Jitter Buffer for RTP streams
546
+ # of SIP Trunking calls. The feature is off unless enabled. You may define min and
547
+ # max values in msec for customized buffering behaviors. Larger values add latency
548
+ # but tolerate more jitter, while smaller values reduce latency but are more
549
+ # sensitive to jitter and reordering.
550
+ sig do
551
+ params(
552
+ enable_jitter_buffer: T::Boolean,
553
+ jitterbuffer_msec_max: Integer,
554
+ jitterbuffer_msec_min: Integer
555
+ ).returns(T.attached_class)
556
+ end
557
+ def self.new(
558
+ # Enables Jitter Buffer for RTP streams of SIP Trunking calls. The feature is off
559
+ # unless enabled.
560
+ enable_jitter_buffer: nil,
561
+ # The maximum jitter buffer size in milliseconds. Must be between 40 and 400. Has
562
+ # no effect if enable_jitter_buffer is not true.
563
+ jitterbuffer_msec_max: nil,
564
+ # The minimum jitter buffer size in milliseconds. Must be between 40 and 400. Has
565
+ # no effect if enable_jitter_buffer is not true.
566
+ jitterbuffer_msec_min: nil
567
+ )
568
+ end
569
+
570
+ sig do
571
+ override.returns(
572
+ {
573
+ enable_jitter_buffer: T::Boolean,
574
+ jitterbuffer_msec_max: Integer,
575
+ jitterbuffer_msec_min: Integer
576
+ }
577
+ )
578
+ end
579
+ def to_hash
580
+ end
581
+ end
582
+
475
583
  # Controls when noise suppression is applied to calls. When set to 'inbound',
476
584
  # noise suppression is applied to incoming audio. When set to 'outbound', it's
477
585
  # applied to outgoing audio. When set to 'both', it's applied in both directions.
@@ -84,6 +84,24 @@ module Telnyx
84
84
  sig { returns(T.nilable(String)) }
85
85
  attr_accessor :ios_push_credential_id
86
86
 
87
+ # Configuration options for Jitter Buffer. Enables Jitter Buffer for RTP streams
88
+ # of SIP Trunking calls. The feature is off unless enabled. You may define min and
89
+ # max values in msec for customized buffering behaviors. Larger values add latency
90
+ # but tolerate more jitter, while smaller values reduce latency but are more
91
+ # sensitive to jitter and reordering.
92
+ sig do
93
+ returns(T.nilable(Telnyx::FqdnConnectionCreateParams::JitterBuffer))
94
+ end
95
+ attr_reader :jitter_buffer
96
+
97
+ sig do
98
+ params(
99
+ jitter_buffer:
100
+ Telnyx::FqdnConnectionCreateParams::JitterBuffer::OrHash
101
+ ).void
102
+ end
103
+ attr_writer :jitter_buffer
104
+
87
105
  # When enabled, the connection will be created for Microsoft Teams Direct Routing.
88
106
  # A \*.mstsbc.telnyx.tech FQDN will be created for the connection automatically.
89
107
  sig { returns(T.nilable(T::Boolean)) }
@@ -205,6 +223,8 @@ module Telnyx
205
223
  encrypted_media: T.nilable(Telnyx::EncryptedMedia::OrSymbol),
206
224
  inbound: Telnyx::InboundFqdn::OrHash,
207
225
  ios_push_credential_id: T.nilable(String),
226
+ jitter_buffer:
227
+ Telnyx::FqdnConnectionCreateParams::JitterBuffer::OrHash,
208
228
  microsoft_teams_sbc: T::Boolean,
209
229
  noise_suppression:
210
230
  Telnyx::FqdnConnectionCreateParams::NoiseSuppression::OrSymbol,
@@ -251,6 +271,12 @@ module Telnyx
251
271
  inbound: nil,
252
272
  # The uuid of the push credential for Ios
253
273
  ios_push_credential_id: nil,
274
+ # Configuration options for Jitter Buffer. Enables Jitter Buffer for RTP streams
275
+ # of SIP Trunking calls. The feature is off unless enabled. You may define min and
276
+ # max values in msec for customized buffering behaviors. Larger values add latency
277
+ # but tolerate more jitter, while smaller values reduce latency but are more
278
+ # sensitive to jitter and reordering.
279
+ jitter_buffer: nil,
254
280
  # When enabled, the connection will be created for Microsoft Teams Direct Routing.
255
281
  # A \*.mstsbc.telnyx.tech FQDN will be created for the connection automatically.
256
282
  microsoft_teams_sbc: nil,
@@ -303,6 +329,7 @@ module Telnyx
303
329
  encrypted_media: T.nilable(Telnyx::EncryptedMedia::OrSymbol),
304
330
  inbound: Telnyx::InboundFqdn,
305
331
  ios_push_credential_id: T.nilable(String),
332
+ jitter_buffer: Telnyx::FqdnConnectionCreateParams::JitterBuffer,
306
333
  microsoft_teams_sbc: T::Boolean,
307
334
  noise_suppression:
308
335
  Telnyx::FqdnConnectionCreateParams::NoiseSuppression::OrSymbol,
@@ -324,6 +351,77 @@ module Telnyx
324
351
  def to_hash
325
352
  end
326
353
 
354
+ class JitterBuffer < Telnyx::Internal::Type::BaseModel
355
+ OrHash =
356
+ T.type_alias do
357
+ T.any(
358
+ Telnyx::FqdnConnectionCreateParams::JitterBuffer,
359
+ Telnyx::Internal::AnyHash
360
+ )
361
+ end
362
+
363
+ # Enables Jitter Buffer for RTP streams of SIP Trunking calls. The feature is off
364
+ # unless enabled.
365
+ sig { returns(T.nilable(T::Boolean)) }
366
+ attr_reader :enable_jitter_buffer
367
+
368
+ sig { params(enable_jitter_buffer: T::Boolean).void }
369
+ attr_writer :enable_jitter_buffer
370
+
371
+ # The maximum jitter buffer size in milliseconds. Must be between 40 and 400. Has
372
+ # no effect if enable_jitter_buffer is not true.
373
+ sig { returns(T.nilable(Integer)) }
374
+ attr_reader :jitterbuffer_msec_max
375
+
376
+ sig { params(jitterbuffer_msec_max: Integer).void }
377
+ attr_writer :jitterbuffer_msec_max
378
+
379
+ # The minimum jitter buffer size in milliseconds. Must be between 40 and 400. Has
380
+ # no effect if enable_jitter_buffer is not true.
381
+ sig { returns(T.nilable(Integer)) }
382
+ attr_reader :jitterbuffer_msec_min
383
+
384
+ sig { params(jitterbuffer_msec_min: Integer).void }
385
+ attr_writer :jitterbuffer_msec_min
386
+
387
+ # Configuration options for Jitter Buffer. Enables Jitter Buffer for RTP streams
388
+ # of SIP Trunking calls. The feature is off unless enabled. You may define min and
389
+ # max values in msec for customized buffering behaviors. Larger values add latency
390
+ # but tolerate more jitter, while smaller values reduce latency but are more
391
+ # sensitive to jitter and reordering.
392
+ sig do
393
+ params(
394
+ enable_jitter_buffer: T::Boolean,
395
+ jitterbuffer_msec_max: Integer,
396
+ jitterbuffer_msec_min: Integer
397
+ ).returns(T.attached_class)
398
+ end
399
+ def self.new(
400
+ # Enables Jitter Buffer for RTP streams of SIP Trunking calls. The feature is off
401
+ # unless enabled.
402
+ enable_jitter_buffer: nil,
403
+ # The maximum jitter buffer size in milliseconds. Must be between 40 and 400. Has
404
+ # no effect if enable_jitter_buffer is not true.
405
+ jitterbuffer_msec_max: nil,
406
+ # The minimum jitter buffer size in milliseconds. Must be between 40 and 400. Has
407
+ # no effect if enable_jitter_buffer is not true.
408
+ jitterbuffer_msec_min: nil
409
+ )
410
+ end
411
+
412
+ sig do
413
+ override.returns(
414
+ {
415
+ enable_jitter_buffer: T::Boolean,
416
+ jitterbuffer_msec_max: Integer,
417
+ jitterbuffer_msec_min: Integer
418
+ }
419
+ )
420
+ end
421
+ def to_hash
422
+ end
423
+ end
424
+
327
425
  # Controls when noise suppression is applied to calls. When set to 'inbound',
328
426
  # noise suppression is applied to incoming audio. When set to 'outbound', it's
329
427
  # applied to outgoing audio. When set to 'both', it's applied in both directions.