telnyx 5.72.0 → 5.73.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.
@@ -90,9 +90,17 @@ module Telnyx
90
90
  transcription: T::Boolean,
91
91
  transcription_config:
92
92
  Telnyx::Calls::TranscriptionStartRequest::OrHash,
93
+ webhook_retries_policies:
94
+ T::Hash[
95
+ Symbol,
96
+ Telnyx::CallDialParams::WebhookRetriesPolicy::OrHash
97
+ ],
93
98
  webhook_url: String,
94
99
  webhook_url_method:
95
100
  Telnyx::CallDialParams::WebhookURLMethod::OrSymbol,
101
+ webhook_urls: T::Hash[Symbol, String],
102
+ webhook_urls_method:
103
+ Telnyx::CallDialParams::WebhookURLsMethod::OrSymbol,
96
104
  request_options: Telnyx::RequestOptions::OrHash
97
105
  ).returns(Telnyx::Models::CallDialResponse)
98
106
  end
@@ -275,11 +283,22 @@ module Telnyx
275
283
  # Enable transcription upon call answer. The default value is false.
276
284
  transcription: nil,
277
285
  transcription_config: nil,
286
+ # A map of event types to retry policies. Each retry policy contains an array of
287
+ # `retries_ms` specifying the delays between retry attempts in milliseconds.
288
+ # Maximum 5 retries, total delay cannot exceed 60 seconds.
289
+ webhook_retries_policies: nil,
278
290
  # Use this field to override the URL for which Telnyx will send subsequent
279
291
  # webhooks to for this call.
280
292
  webhook_url: nil,
281
293
  # HTTP request type used for `webhook_url`.
282
294
  webhook_url_method: nil,
295
+ # A map of event types to webhook URLs. When an event of the specified type
296
+ # occurs, the webhook URL associated with that event type will be called instead
297
+ # of the default webhook URL. Events not mapped here will use the default webhook
298
+ # URL.
299
+ webhook_urls: nil,
300
+ # HTTP request method to invoke `webhook_urls`.
301
+ webhook_urls_method: nil,
283
302
  request_options: {}
284
303
  )
285
304
  end
@@ -92,21 +92,11 @@ module Telnyx
92
92
  # clear speech. Maximum file size: 5MB for Telnyx, 20MB for Minimax.
93
93
  sig do
94
94
  params(
95
- upload_params:
96
- T.any(
97
- Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::OrHash,
98
- Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::OrHash,
99
- Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::OrHash
100
- ),
95
+ upload_params: T.anything,
101
96
  request_options: Telnyx::RequestOptions::OrHash
102
97
  ).returns(Telnyx::Models::VoiceCloneCreateFromUploadResponse)
103
98
  end
104
- def create_from_upload(
105
- # Multipart form data for creating a voice clone from a direct audio upload.
106
- # Maximum file size: 5MB for Telnyx, 20MB for Minimax.
107
- upload_params:,
108
- request_options: {}
109
- )
99
+ def create_from_upload(upload_params:, request_options: {})
110
100
  end
111
101
 
112
102
  # Downloads the WAV audio sample that was used to create the voice clone.
@@ -56,8 +56,11 @@ module Telnyx
56
56
  timeout_secs: Integer,
57
57
  transcription: bool,
58
58
  transcription_config: Telnyx::Calls::TranscriptionStartRequest,
59
+ webhook_retries_policies: ::Hash[Symbol, Telnyx::CallDialParams::WebhookRetriesPolicy],
59
60
  webhook_url: String,
60
- webhook_url_method: Telnyx::Models::CallDialParams::webhook_url_method
61
+ webhook_url_method: Telnyx::Models::CallDialParams::webhook_url_method,
62
+ webhook_urls: ::Hash[Symbol, String],
63
+ webhook_urls_method: Telnyx::Models::CallDialParams::webhook_urls_method
61
64
  }
62
65
  & Telnyx::Internal::Type::request_parameters
63
66
 
@@ -325,6 +328,12 @@ module Telnyx
325
328
  Telnyx::Calls::TranscriptionStartRequest
326
329
  ) -> Telnyx::Calls::TranscriptionStartRequest
327
330
 
331
+ attr_reader webhook_retries_policies: ::Hash[Symbol, Telnyx::CallDialParams::WebhookRetriesPolicy]?
332
+
333
+ def webhook_retries_policies=: (
334
+ ::Hash[Symbol, Telnyx::CallDialParams::WebhookRetriesPolicy]
335
+ ) -> ::Hash[Symbol, Telnyx::CallDialParams::WebhookRetriesPolicy]
336
+
328
337
  attr_reader webhook_url: String?
329
338
 
330
339
  def webhook_url=: (String) -> String
@@ -335,6 +344,16 @@ module Telnyx
335
344
  Telnyx::Models::CallDialParams::webhook_url_method
336
345
  ) -> Telnyx::Models::CallDialParams::webhook_url_method
337
346
 
347
+ attr_reader webhook_urls: ::Hash[Symbol, String]?
348
+
349
+ def webhook_urls=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
350
+
351
+ attr_reader webhook_urls_method: Telnyx::Models::CallDialParams::webhook_urls_method?
352
+
353
+ def webhook_urls_method=: (
354
+ Telnyx::Models::CallDialParams::webhook_urls_method
355
+ ) -> Telnyx::Models::CallDialParams::webhook_urls_method
356
+
338
357
  def initialize: (
339
358
  connection_id: String,
340
359
  from: String,
@@ -390,8 +409,11 @@ module Telnyx
390
409
  ?timeout_secs: Integer,
391
410
  ?transcription: bool,
392
411
  ?transcription_config: Telnyx::Calls::TranscriptionStartRequest,
412
+ ?webhook_retries_policies: ::Hash[Symbol, Telnyx::CallDialParams::WebhookRetriesPolicy],
393
413
  ?webhook_url: String,
394
414
  ?webhook_url_method: Telnyx::Models::CallDialParams::webhook_url_method,
415
+ ?webhook_urls: ::Hash[Symbol, String],
416
+ ?webhook_urls_method: Telnyx::Models::CallDialParams::webhook_urls_method,
395
417
  ?request_options: Telnyx::request_opts
396
418
  ) -> void
397
419
 
@@ -450,8 +472,11 @@ module Telnyx
450
472
  timeout_secs: Integer,
451
473
  transcription: bool,
452
474
  transcription_config: Telnyx::Calls::TranscriptionStartRequest,
475
+ webhook_retries_policies: ::Hash[Symbol, Telnyx::CallDialParams::WebhookRetriesPolicy],
453
476
  webhook_url: String,
454
477
  webhook_url_method: Telnyx::Models::CallDialParams::webhook_url_method,
478
+ webhook_urls: ::Hash[Symbol, String],
479
+ webhook_urls_method: Telnyx::Models::CallDialParams::webhook_urls_method,
455
480
  request_options: Telnyx::RequestOptions
456
481
  }
457
482
 
@@ -835,6 +860,18 @@ module Telnyx
835
860
  def self?.values: -> ::Array[Telnyx::Models::CallDialParams::supervisor_role]
836
861
  end
837
862
 
863
+ type webhook_retries_policy = { retries_ms: ::Array[Integer] }
864
+
865
+ class WebhookRetriesPolicy < Telnyx::Internal::Type::BaseModel
866
+ attr_reader retries_ms: ::Array[Integer]?
867
+
868
+ def retries_ms=: (::Array[Integer]) -> ::Array[Integer]
869
+
870
+ def initialize: (?retries_ms: ::Array[Integer]) -> void
871
+
872
+ def to_hash: -> { retries_ms: ::Array[Integer] }
873
+ end
874
+
838
875
  type webhook_url_method = :POST | :GET
839
876
 
840
877
  module WebhookURLMethod
@@ -845,6 +882,17 @@ module Telnyx
845
882
 
846
883
  def self?.values: -> ::Array[Telnyx::Models::CallDialParams::webhook_url_method]
847
884
  end
885
+
886
+ type webhook_urls_method = :POST | :GET
887
+
888
+ module WebhookURLsMethod
889
+ extend Telnyx::Internal::Type::Enum
890
+
891
+ POST: :POST
892
+ GET: :GET
893
+
894
+ def self?.values: -> ::Array[Telnyx::Models::CallDialParams::webhook_urls_method]
895
+ end
848
896
  end
849
897
  end
850
898
  end
@@ -1,304 +1,23 @@
1
1
  module Telnyx
2
2
  module Models
3
3
  type voice_clone_create_from_upload_params =
4
- {
5
- upload_params: Telnyx::Models::VoiceCloneCreateFromUploadParams::upload_params
6
- }
7
- & Telnyx::Internal::Type::request_parameters
4
+ { upload_params: top } & Telnyx::Internal::Type::request_parameters
8
5
 
9
6
  class VoiceCloneCreateFromUploadParams < Telnyx::Internal::Type::BaseModel
10
7
  extend Telnyx::Internal::Type::RequestParameters::Converter
11
8
  include Telnyx::Internal::Type::RequestParameters
12
9
 
13
- attr_accessor upload_params: Telnyx::Models::VoiceCloneCreateFromUploadParams::upload_params
10
+ attr_accessor upload_params: top
14
11
 
15
12
  def initialize: (
16
- upload_params: Telnyx::Models::VoiceCloneCreateFromUploadParams::upload_params,
13
+ upload_params: top,
17
14
  ?request_options: Telnyx::request_opts
18
15
  ) -> void
19
16
 
20
17
  def to_hash: -> {
21
- upload_params: Telnyx::Models::VoiceCloneCreateFromUploadParams::upload_params,
18
+ upload_params: top,
22
19
  request_options: Telnyx::RequestOptions
23
20
  }
24
-
25
- type upload_params =
26
- Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone
27
- | Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone
28
- | Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone
29
-
30
- module UploadParams
31
- extend Telnyx::Internal::Type::Union
32
-
33
- type telnyx_qwen3_tts_clone =
34
- {
35
- audio_file: Telnyx::Internal::file_input,
36
- gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::gender,
37
- language: String,
38
- name: String,
39
- provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::provider,
40
- label: String,
41
- model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::model_id?,
42
- ref_text: String
43
- }
44
-
45
- class TelnyxQwen3TtsClone < Telnyx::Internal::Type::BaseModel
46
- attr_accessor audio_file: Telnyx::Internal::file_input
47
-
48
- attr_accessor gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::gender
49
-
50
- attr_accessor language: String
51
-
52
- attr_accessor name: String
53
-
54
- attr_accessor provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::provider
55
-
56
- attr_reader label: String?
57
-
58
- def label=: (String) -> String
59
-
60
- attr_accessor model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::model_id?
61
-
62
- attr_reader ref_text: String?
63
-
64
- def ref_text=: (String) -> String
65
-
66
- def initialize: (
67
- audio_file: Telnyx::Internal::file_input,
68
- gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::gender,
69
- language: String,
70
- name: String,
71
- provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::provider,
72
- ?label: String,
73
- ?model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::model_id?,
74
- ?ref_text: String
75
- ) -> void
76
-
77
- def to_hash: -> {
78
- audio_file: Telnyx::Internal::file_input,
79
- gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::gender,
80
- language: String,
81
- name: String,
82
- provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::provider,
83
- label: String,
84
- model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::model_id?,
85
- ref_text: String
86
- }
87
-
88
- type gender = :male | :female | :neutral
89
-
90
- module Gender
91
- extend Telnyx::Internal::Type::Enum
92
-
93
- MALE: :male
94
- FEMALE: :female
95
- NEUTRAL: :neutral
96
-
97
- def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::gender]
98
- end
99
-
100
- type provider = :telnyx | :minimax
101
-
102
- module Provider
103
- extend Telnyx::Internal::Type::Enum
104
-
105
- TELNYX: :telnyx
106
- MINIMAX: :minimax
107
-
108
- def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::provider]
109
- end
110
-
111
- type model_id = :Qwen3TTS
112
-
113
- module ModelID
114
- extend Telnyx::Internal::Type::Enum
115
-
116
- QWEN3_TTS: :Qwen3TTS
117
-
118
- def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::model_id]
119
- end
120
- end
121
-
122
- type telnyx_ultra_clone =
123
- {
124
- audio_file: Telnyx::Internal::file_input,
125
- gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::gender,
126
- language: String,
127
- model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::model_id,
128
- name: String,
129
- provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::provider,
130
- label: String,
131
- ref_text: String
132
- }
133
-
134
- class TelnyxUltraClone < Telnyx::Internal::Type::BaseModel
135
- attr_accessor audio_file: Telnyx::Internal::file_input
136
-
137
- attr_accessor gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::gender
138
-
139
- attr_accessor language: String
140
-
141
- attr_accessor model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::model_id
142
-
143
- attr_accessor name: String
144
-
145
- attr_accessor provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::provider
146
-
147
- attr_reader label: String?
148
-
149
- def label=: (String) -> String
150
-
151
- attr_reader ref_text: String?
152
-
153
- def ref_text=: (String) -> String
154
-
155
- def initialize: (
156
- audio_file: Telnyx::Internal::file_input,
157
- gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::gender,
158
- language: String,
159
- model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::model_id,
160
- name: String,
161
- provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::provider,
162
- ?label: String,
163
- ?ref_text: String
164
- ) -> void
165
-
166
- def to_hash: -> {
167
- audio_file: Telnyx::Internal::file_input,
168
- gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::gender,
169
- language: String,
170
- model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::model_id,
171
- name: String,
172
- provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::provider,
173
- label: String,
174
- ref_text: String
175
- }
176
-
177
- type gender = :male | :female | :neutral
178
-
179
- module Gender
180
- extend Telnyx::Internal::Type::Enum
181
-
182
- MALE: :male
183
- FEMALE: :female
184
- NEUTRAL: :neutral
185
-
186
- def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::gender]
187
- end
188
-
189
- type model_id = :Ultra
190
-
191
- module ModelID
192
- extend Telnyx::Internal::Type::Enum
193
-
194
- ULTRA: :Ultra
195
-
196
- def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::model_id]
197
- end
198
-
199
- type provider = :telnyx | :minimax
200
-
201
- module Provider
202
- extend Telnyx::Internal::Type::Enum
203
-
204
- TELNYX: :telnyx
205
- MINIMAX: :minimax
206
-
207
- def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::provider]
208
- end
209
- end
210
-
211
- type minimax_clone =
212
- {
213
- audio_file: Telnyx::Internal::file_input,
214
- gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::gender,
215
- language: String,
216
- name: String,
217
- provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::provider,
218
- label: String,
219
- model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::model_id?,
220
- ref_text: String
221
- }
222
-
223
- class MinimaxClone < Telnyx::Internal::Type::BaseModel
224
- attr_accessor audio_file: Telnyx::Internal::file_input
225
-
226
- attr_accessor gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::gender
227
-
228
- attr_accessor language: String
229
-
230
- attr_accessor name: String
231
-
232
- attr_accessor provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::provider
233
-
234
- attr_reader label: String?
235
-
236
- def label=: (String) -> String
237
-
238
- attr_accessor model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::model_id?
239
-
240
- attr_reader ref_text: String?
241
-
242
- def ref_text=: (String) -> String
243
-
244
- def initialize: (
245
- audio_file: Telnyx::Internal::file_input,
246
- gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::gender,
247
- language: String,
248
- name: String,
249
- provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::provider,
250
- ?label: String,
251
- ?model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::model_id?,
252
- ?ref_text: String
253
- ) -> void
254
-
255
- def to_hash: -> {
256
- audio_file: Telnyx::Internal::file_input,
257
- gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::gender,
258
- language: String,
259
- name: String,
260
- provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::provider,
261
- label: String,
262
- model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::model_id?,
263
- ref_text: String
264
- }
265
-
266
- type gender = :male | :female | :neutral
267
-
268
- module Gender
269
- extend Telnyx::Internal::Type::Enum
270
-
271
- MALE: :male
272
- FEMALE: :female
273
- NEUTRAL: :neutral
274
-
275
- def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::gender]
276
- end
277
-
278
- type provider = :telnyx | :minimax
279
-
280
- module Provider
281
- extend Telnyx::Internal::Type::Enum
282
-
283
- TELNYX: :telnyx
284
- MINIMAX: :minimax
285
-
286
- def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::provider]
287
- end
288
-
289
- type model_id = :"speech-2.8-turbo"
290
-
291
- module ModelID
292
- extend Telnyx::Internal::Type::Enum
293
-
294
- SPEECH_2_8_TURBO: :"speech-2.8-turbo"
295
-
296
- def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::model_id]
297
- end
298
- end
299
-
300
- def self?.variants: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::upload_params]
301
- end
302
21
  end
303
22
  end
304
23
  end
@@ -58,8 +58,11 @@ module Telnyx
58
58
  ?timeout_secs: Integer,
59
59
  ?transcription: bool,
60
60
  ?transcription_config: Telnyx::Calls::TranscriptionStartRequest,
61
+ ?webhook_retries_policies: ::Hash[Symbol, Telnyx::CallDialParams::WebhookRetriesPolicy],
61
62
  ?webhook_url: String,
62
63
  ?webhook_url_method: Telnyx::Models::CallDialParams::webhook_url_method,
64
+ ?webhook_urls: ::Hash[Symbol, String],
65
+ ?webhook_urls_method: Telnyx::Models::CallDialParams::webhook_urls_method,
63
66
  ?request_options: Telnyx::request_opts
64
67
  ) -> Telnyx::Models::CallDialResponse
65
68
 
@@ -26,7 +26,7 @@ module Telnyx
26
26
  def delete: (String id, ?request_options: Telnyx::request_opts) -> nil
27
27
 
28
28
  def create_from_upload: (
29
- upload_params: Telnyx::Models::VoiceCloneCreateFromUploadParams::upload_params,
29
+ upload_params: top,
30
30
  ?request_options: Telnyx::request_opts
31
31
  ) -> Telnyx::Models::VoiceCloneCreateFromUploadResponse
32
32
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: telnyx
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.72.0
4
+ version: 5.73.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Telnyx
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-04-11 00:00:00.000000000 Z
11
+ date: 2026-04-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cgi