telnyx 5.71.0 → 5.72.1
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +22 -0
- data/README.md +1 -1
- data/lib/telnyx/lib/webhook_verification.rb +14 -1
- data/lib/telnyx/lib/webhooks_ed25519.rb +51 -38
- data/lib/telnyx/lib.rb +14 -0
- data/lib/telnyx/models/voice_clone_create_from_upload_params.rb +3 -382
- data/lib/telnyx/resources/voice_clones.rb +1 -5
- data/lib/telnyx/version.rb +1 -1
- data/lib/telnyx.rb +4 -0
- data/rbi/telnyx/models/voice_clone_create_from_upload_params.rbi +4 -744
- data/rbi/telnyx/resources/voice_clones.rbi +2 -12
- data/sig/telnyx/models/voice_clone_create_from_upload_params.rbs +4 -285
- data/sig/telnyx/resources/voice_clones.rbs +1 -1
- metadata +3 -2
|
@@ -14,765 +14,25 @@ module Telnyx
|
|
|
14
14
|
)
|
|
15
15
|
end
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
# Maximum file size: 5MB for Telnyx, 20MB for Minimax.
|
|
19
|
-
sig do
|
|
20
|
-
returns(
|
|
21
|
-
T.any(
|
|
22
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone,
|
|
23
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone,
|
|
24
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone
|
|
25
|
-
)
|
|
26
|
-
)
|
|
27
|
-
end
|
|
17
|
+
sig { returns(T.anything) }
|
|
28
18
|
attr_accessor :upload_params
|
|
29
19
|
|
|
30
20
|
sig do
|
|
31
21
|
params(
|
|
32
|
-
upload_params:
|
|
33
|
-
T.any(
|
|
34
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::OrHash,
|
|
35
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::OrHash,
|
|
36
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::OrHash
|
|
37
|
-
),
|
|
22
|
+
upload_params: T.anything,
|
|
38
23
|
request_options: Telnyx::RequestOptions::OrHash
|
|
39
24
|
).returns(T.attached_class)
|
|
40
25
|
end
|
|
41
|
-
def self.new(
|
|
42
|
-
# Multipart form data for creating a voice clone from a direct audio upload.
|
|
43
|
-
# Maximum file size: 5MB for Telnyx, 20MB for Minimax.
|
|
44
|
-
upload_params:,
|
|
45
|
-
request_options: {}
|
|
46
|
-
)
|
|
26
|
+
def self.new(upload_params:, request_options: {})
|
|
47
27
|
end
|
|
48
28
|
|
|
49
29
|
sig do
|
|
50
30
|
override.returns(
|
|
51
|
-
{
|
|
52
|
-
upload_params:
|
|
53
|
-
T.any(
|
|
54
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone,
|
|
55
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone,
|
|
56
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone
|
|
57
|
-
),
|
|
58
|
-
request_options: Telnyx::RequestOptions
|
|
59
|
-
}
|
|
31
|
+
{ upload_params: T.anything, request_options: Telnyx::RequestOptions }
|
|
60
32
|
)
|
|
61
33
|
end
|
|
62
34
|
def to_hash
|
|
63
35
|
end
|
|
64
|
-
|
|
65
|
-
# Multipart form data for creating a voice clone from a direct audio upload.
|
|
66
|
-
# Maximum file size: 5MB for Telnyx, 20MB for Minimax.
|
|
67
|
-
module UploadParams
|
|
68
|
-
extend Telnyx::Internal::Type::Union
|
|
69
|
-
|
|
70
|
-
Variants =
|
|
71
|
-
T.type_alias do
|
|
72
|
-
T.any(
|
|
73
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone,
|
|
74
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone,
|
|
75
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone
|
|
76
|
-
)
|
|
77
|
-
end
|
|
78
|
-
|
|
79
|
-
class TelnyxQwen3TtsClone < Telnyx::Internal::Type::BaseModel
|
|
80
|
-
OrHash =
|
|
81
|
-
T.type_alias do
|
|
82
|
-
T.any(
|
|
83
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone,
|
|
84
|
-
Telnyx::Internal::AnyHash
|
|
85
|
-
)
|
|
86
|
-
end
|
|
87
|
-
|
|
88
|
-
# Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
|
|
89
|
-
# For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
|
|
90
|
-
# size: 5MB.
|
|
91
|
-
sig { returns(Telnyx::Internal::FileInput) }
|
|
92
|
-
attr_accessor :audio_file
|
|
93
|
-
|
|
94
|
-
# Gender of the voice clone.
|
|
95
|
-
sig do
|
|
96
|
-
returns(
|
|
97
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender::OrSymbol
|
|
98
|
-
)
|
|
99
|
-
end
|
|
100
|
-
attr_accessor :gender
|
|
101
|
-
|
|
102
|
-
# ISO 639-1 language code from the Qwen language set.
|
|
103
|
-
sig { returns(String) }
|
|
104
|
-
attr_accessor :language
|
|
105
|
-
|
|
106
|
-
# Name for the voice clone.
|
|
107
|
-
sig { returns(String) }
|
|
108
|
-
attr_accessor :name
|
|
109
|
-
|
|
110
|
-
# Voice synthesis provider. Must be `telnyx`.
|
|
111
|
-
sig do
|
|
112
|
-
returns(
|
|
113
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Provider::OrSymbol
|
|
114
|
-
)
|
|
115
|
-
end
|
|
116
|
-
attr_accessor :provider
|
|
117
|
-
|
|
118
|
-
# Optional custom label describing the voice style.
|
|
119
|
-
sig { returns(T.nilable(String)) }
|
|
120
|
-
attr_reader :label
|
|
121
|
-
|
|
122
|
-
sig { params(label: String).void }
|
|
123
|
-
attr_writer :label
|
|
124
|
-
|
|
125
|
-
# TTS model identifier. Nullable/omittable — defaults to Qwen3TTS.
|
|
126
|
-
sig do
|
|
127
|
-
returns(
|
|
128
|
-
T.nilable(
|
|
129
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::ModelID::OrSymbol
|
|
130
|
-
)
|
|
131
|
-
)
|
|
132
|
-
end
|
|
133
|
-
attr_accessor :model_id
|
|
134
|
-
|
|
135
|
-
# Optional transcript of the audio file. Providing this improves clone quality.
|
|
136
|
-
sig { returns(T.nilable(String)) }
|
|
137
|
-
attr_reader :ref_text
|
|
138
|
-
|
|
139
|
-
sig { params(ref_text: String).void }
|
|
140
|
-
attr_writer :ref_text
|
|
141
|
-
|
|
142
|
-
# Upload-based voice clone using the Telnyx Qwen3TTS model (default).
|
|
143
|
-
sig do
|
|
144
|
-
params(
|
|
145
|
-
audio_file: Telnyx::Internal::FileInput,
|
|
146
|
-
gender:
|
|
147
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender::OrSymbol,
|
|
148
|
-
language: String,
|
|
149
|
-
name: String,
|
|
150
|
-
provider:
|
|
151
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Provider::OrSymbol,
|
|
152
|
-
label: String,
|
|
153
|
-
model_id:
|
|
154
|
-
T.nilable(
|
|
155
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::ModelID::OrSymbol
|
|
156
|
-
),
|
|
157
|
-
ref_text: String
|
|
158
|
-
).returns(T.attached_class)
|
|
159
|
-
end
|
|
160
|
-
def self.new(
|
|
161
|
-
# Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
|
|
162
|
-
# For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
|
|
163
|
-
# size: 5MB.
|
|
164
|
-
audio_file:,
|
|
165
|
-
# Gender of the voice clone.
|
|
166
|
-
gender:,
|
|
167
|
-
# ISO 639-1 language code from the Qwen language set.
|
|
168
|
-
language:,
|
|
169
|
-
# Name for the voice clone.
|
|
170
|
-
name:,
|
|
171
|
-
# Voice synthesis provider. Must be `telnyx`.
|
|
172
|
-
provider:,
|
|
173
|
-
# Optional custom label describing the voice style.
|
|
174
|
-
label: nil,
|
|
175
|
-
# TTS model identifier. Nullable/omittable — defaults to Qwen3TTS.
|
|
176
|
-
model_id: nil,
|
|
177
|
-
# Optional transcript of the audio file. Providing this improves clone quality.
|
|
178
|
-
ref_text: nil
|
|
179
|
-
)
|
|
180
|
-
end
|
|
181
|
-
|
|
182
|
-
sig do
|
|
183
|
-
override.returns(
|
|
184
|
-
{
|
|
185
|
-
audio_file: Telnyx::Internal::FileInput,
|
|
186
|
-
gender:
|
|
187
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender::OrSymbol,
|
|
188
|
-
language: String,
|
|
189
|
-
name: String,
|
|
190
|
-
provider:
|
|
191
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Provider::OrSymbol,
|
|
192
|
-
label: String,
|
|
193
|
-
model_id:
|
|
194
|
-
T.nilable(
|
|
195
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::ModelID::OrSymbol
|
|
196
|
-
),
|
|
197
|
-
ref_text: String
|
|
198
|
-
}
|
|
199
|
-
)
|
|
200
|
-
end
|
|
201
|
-
def to_hash
|
|
202
|
-
end
|
|
203
|
-
|
|
204
|
-
# Gender of the voice clone.
|
|
205
|
-
module Gender
|
|
206
|
-
extend Telnyx::Internal::Type::Enum
|
|
207
|
-
|
|
208
|
-
TaggedSymbol =
|
|
209
|
-
T.type_alias do
|
|
210
|
-
T.all(
|
|
211
|
-
Symbol,
|
|
212
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender
|
|
213
|
-
)
|
|
214
|
-
end
|
|
215
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
216
|
-
|
|
217
|
-
MALE =
|
|
218
|
-
T.let(
|
|
219
|
-
:male,
|
|
220
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender::TaggedSymbol
|
|
221
|
-
)
|
|
222
|
-
FEMALE =
|
|
223
|
-
T.let(
|
|
224
|
-
:female,
|
|
225
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender::TaggedSymbol
|
|
226
|
-
)
|
|
227
|
-
NEUTRAL =
|
|
228
|
-
T.let(
|
|
229
|
-
:neutral,
|
|
230
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender::TaggedSymbol
|
|
231
|
-
)
|
|
232
|
-
|
|
233
|
-
sig do
|
|
234
|
-
override.returns(
|
|
235
|
-
T::Array[
|
|
236
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender::TaggedSymbol
|
|
237
|
-
]
|
|
238
|
-
)
|
|
239
|
-
end
|
|
240
|
-
def self.values
|
|
241
|
-
end
|
|
242
|
-
end
|
|
243
|
-
|
|
244
|
-
# Voice synthesis provider. Must be `telnyx`.
|
|
245
|
-
module Provider
|
|
246
|
-
extend Telnyx::Internal::Type::Enum
|
|
247
|
-
|
|
248
|
-
TaggedSymbol =
|
|
249
|
-
T.type_alias do
|
|
250
|
-
T.all(
|
|
251
|
-
Symbol,
|
|
252
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Provider
|
|
253
|
-
)
|
|
254
|
-
end
|
|
255
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
256
|
-
|
|
257
|
-
TELNYX =
|
|
258
|
-
T.let(
|
|
259
|
-
:telnyx,
|
|
260
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Provider::TaggedSymbol
|
|
261
|
-
)
|
|
262
|
-
MINIMAX =
|
|
263
|
-
T.let(
|
|
264
|
-
:minimax,
|
|
265
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Provider::TaggedSymbol
|
|
266
|
-
)
|
|
267
|
-
|
|
268
|
-
sig do
|
|
269
|
-
override.returns(
|
|
270
|
-
T::Array[
|
|
271
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Provider::TaggedSymbol
|
|
272
|
-
]
|
|
273
|
-
)
|
|
274
|
-
end
|
|
275
|
-
def self.values
|
|
276
|
-
end
|
|
277
|
-
end
|
|
278
|
-
|
|
279
|
-
# TTS model identifier. Nullable/omittable — defaults to Qwen3TTS.
|
|
280
|
-
module ModelID
|
|
281
|
-
extend Telnyx::Internal::Type::Enum
|
|
282
|
-
|
|
283
|
-
TaggedSymbol =
|
|
284
|
-
T.type_alias do
|
|
285
|
-
T.all(
|
|
286
|
-
Symbol,
|
|
287
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::ModelID
|
|
288
|
-
)
|
|
289
|
-
end
|
|
290
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
291
|
-
|
|
292
|
-
QWEN3_TTS =
|
|
293
|
-
T.let(
|
|
294
|
-
:Qwen3TTS,
|
|
295
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::ModelID::TaggedSymbol
|
|
296
|
-
)
|
|
297
|
-
|
|
298
|
-
sig do
|
|
299
|
-
override.returns(
|
|
300
|
-
T::Array[
|
|
301
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::ModelID::TaggedSymbol
|
|
302
|
-
]
|
|
303
|
-
)
|
|
304
|
-
end
|
|
305
|
-
def self.values
|
|
306
|
-
end
|
|
307
|
-
end
|
|
308
|
-
end
|
|
309
|
-
|
|
310
|
-
class TelnyxUltraClone < Telnyx::Internal::Type::BaseModel
|
|
311
|
-
OrHash =
|
|
312
|
-
T.type_alias do
|
|
313
|
-
T.any(
|
|
314
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone,
|
|
315
|
-
Telnyx::Internal::AnyHash
|
|
316
|
-
)
|
|
317
|
-
end
|
|
318
|
-
|
|
319
|
-
# Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
|
|
320
|
-
# For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
|
|
321
|
-
# size: 5MB.
|
|
322
|
-
sig { returns(Telnyx::Internal::FileInput) }
|
|
323
|
-
attr_accessor :audio_file
|
|
324
|
-
|
|
325
|
-
# Gender of the voice clone.
|
|
326
|
-
sig do
|
|
327
|
-
returns(
|
|
328
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender::OrSymbol
|
|
329
|
-
)
|
|
330
|
-
end
|
|
331
|
-
attr_accessor :gender
|
|
332
|
-
|
|
333
|
-
# ISO 639-1 language code from the Ultra language set (40 languages).
|
|
334
|
-
sig { returns(String) }
|
|
335
|
-
attr_accessor :language
|
|
336
|
-
|
|
337
|
-
# TTS model identifier. Must be `Ultra`.
|
|
338
|
-
sig do
|
|
339
|
-
returns(
|
|
340
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::ModelID::OrSymbol
|
|
341
|
-
)
|
|
342
|
-
end
|
|
343
|
-
attr_accessor :model_id
|
|
344
|
-
|
|
345
|
-
# Name for the voice clone.
|
|
346
|
-
sig { returns(String) }
|
|
347
|
-
attr_accessor :name
|
|
348
|
-
|
|
349
|
-
# Voice synthesis provider. Must be `telnyx`.
|
|
350
|
-
sig do
|
|
351
|
-
returns(
|
|
352
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Provider::OrSymbol
|
|
353
|
-
)
|
|
354
|
-
end
|
|
355
|
-
attr_accessor :provider
|
|
356
|
-
|
|
357
|
-
# Optional custom label describing the voice style.
|
|
358
|
-
sig { returns(T.nilable(String)) }
|
|
359
|
-
attr_reader :label
|
|
360
|
-
|
|
361
|
-
sig { params(label: String).void }
|
|
362
|
-
attr_writer :label
|
|
363
|
-
|
|
364
|
-
# Optional transcript of the audio file. Providing this improves clone quality.
|
|
365
|
-
sig { returns(T.nilable(String)) }
|
|
366
|
-
attr_reader :ref_text
|
|
367
|
-
|
|
368
|
-
sig { params(ref_text: String).void }
|
|
369
|
-
attr_writer :ref_text
|
|
370
|
-
|
|
371
|
-
# Upload-based voice clone using the Telnyx Ultra model.
|
|
372
|
-
sig do
|
|
373
|
-
params(
|
|
374
|
-
audio_file: Telnyx::Internal::FileInput,
|
|
375
|
-
gender:
|
|
376
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender::OrSymbol,
|
|
377
|
-
language: String,
|
|
378
|
-
model_id:
|
|
379
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::ModelID::OrSymbol,
|
|
380
|
-
name: String,
|
|
381
|
-
provider:
|
|
382
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Provider::OrSymbol,
|
|
383
|
-
label: String,
|
|
384
|
-
ref_text: String
|
|
385
|
-
).returns(T.attached_class)
|
|
386
|
-
end
|
|
387
|
-
def self.new(
|
|
388
|
-
# Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
|
|
389
|
-
# For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
|
|
390
|
-
# size: 5MB.
|
|
391
|
-
audio_file:,
|
|
392
|
-
# Gender of the voice clone.
|
|
393
|
-
gender:,
|
|
394
|
-
# ISO 639-1 language code from the Ultra language set (40 languages).
|
|
395
|
-
language:,
|
|
396
|
-
# TTS model identifier. Must be `Ultra`.
|
|
397
|
-
model_id:,
|
|
398
|
-
# Name for the voice clone.
|
|
399
|
-
name:,
|
|
400
|
-
# Voice synthesis provider. Must be `telnyx`.
|
|
401
|
-
provider:,
|
|
402
|
-
# Optional custom label describing the voice style.
|
|
403
|
-
label: nil,
|
|
404
|
-
# Optional transcript of the audio file. Providing this improves clone quality.
|
|
405
|
-
ref_text: nil
|
|
406
|
-
)
|
|
407
|
-
end
|
|
408
|
-
|
|
409
|
-
sig do
|
|
410
|
-
override.returns(
|
|
411
|
-
{
|
|
412
|
-
audio_file: Telnyx::Internal::FileInput,
|
|
413
|
-
gender:
|
|
414
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender::OrSymbol,
|
|
415
|
-
language: String,
|
|
416
|
-
model_id:
|
|
417
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::ModelID::OrSymbol,
|
|
418
|
-
name: String,
|
|
419
|
-
provider:
|
|
420
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Provider::OrSymbol,
|
|
421
|
-
label: String,
|
|
422
|
-
ref_text: String
|
|
423
|
-
}
|
|
424
|
-
)
|
|
425
|
-
end
|
|
426
|
-
def to_hash
|
|
427
|
-
end
|
|
428
|
-
|
|
429
|
-
# Gender of the voice clone.
|
|
430
|
-
module Gender
|
|
431
|
-
extend Telnyx::Internal::Type::Enum
|
|
432
|
-
|
|
433
|
-
TaggedSymbol =
|
|
434
|
-
T.type_alias do
|
|
435
|
-
T.all(
|
|
436
|
-
Symbol,
|
|
437
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender
|
|
438
|
-
)
|
|
439
|
-
end
|
|
440
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
441
|
-
|
|
442
|
-
MALE =
|
|
443
|
-
T.let(
|
|
444
|
-
:male,
|
|
445
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender::TaggedSymbol
|
|
446
|
-
)
|
|
447
|
-
FEMALE =
|
|
448
|
-
T.let(
|
|
449
|
-
:female,
|
|
450
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender::TaggedSymbol
|
|
451
|
-
)
|
|
452
|
-
NEUTRAL =
|
|
453
|
-
T.let(
|
|
454
|
-
:neutral,
|
|
455
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender::TaggedSymbol
|
|
456
|
-
)
|
|
457
|
-
|
|
458
|
-
sig do
|
|
459
|
-
override.returns(
|
|
460
|
-
T::Array[
|
|
461
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender::TaggedSymbol
|
|
462
|
-
]
|
|
463
|
-
)
|
|
464
|
-
end
|
|
465
|
-
def self.values
|
|
466
|
-
end
|
|
467
|
-
end
|
|
468
|
-
|
|
469
|
-
# TTS model identifier. Must be `Ultra`.
|
|
470
|
-
module ModelID
|
|
471
|
-
extend Telnyx::Internal::Type::Enum
|
|
472
|
-
|
|
473
|
-
TaggedSymbol =
|
|
474
|
-
T.type_alias do
|
|
475
|
-
T.all(
|
|
476
|
-
Symbol,
|
|
477
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::ModelID
|
|
478
|
-
)
|
|
479
|
-
end
|
|
480
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
481
|
-
|
|
482
|
-
ULTRA =
|
|
483
|
-
T.let(
|
|
484
|
-
:Ultra,
|
|
485
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::ModelID::TaggedSymbol
|
|
486
|
-
)
|
|
487
|
-
|
|
488
|
-
sig do
|
|
489
|
-
override.returns(
|
|
490
|
-
T::Array[
|
|
491
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::ModelID::TaggedSymbol
|
|
492
|
-
]
|
|
493
|
-
)
|
|
494
|
-
end
|
|
495
|
-
def self.values
|
|
496
|
-
end
|
|
497
|
-
end
|
|
498
|
-
|
|
499
|
-
# Voice synthesis provider. Must be `telnyx`.
|
|
500
|
-
module Provider
|
|
501
|
-
extend Telnyx::Internal::Type::Enum
|
|
502
|
-
|
|
503
|
-
TaggedSymbol =
|
|
504
|
-
T.type_alias do
|
|
505
|
-
T.all(
|
|
506
|
-
Symbol,
|
|
507
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Provider
|
|
508
|
-
)
|
|
509
|
-
end
|
|
510
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
511
|
-
|
|
512
|
-
TELNYX =
|
|
513
|
-
T.let(
|
|
514
|
-
:telnyx,
|
|
515
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Provider::TaggedSymbol
|
|
516
|
-
)
|
|
517
|
-
MINIMAX =
|
|
518
|
-
T.let(
|
|
519
|
-
:minimax,
|
|
520
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Provider::TaggedSymbol
|
|
521
|
-
)
|
|
522
|
-
|
|
523
|
-
sig do
|
|
524
|
-
override.returns(
|
|
525
|
-
T::Array[
|
|
526
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Provider::TaggedSymbol
|
|
527
|
-
]
|
|
528
|
-
)
|
|
529
|
-
end
|
|
530
|
-
def self.values
|
|
531
|
-
end
|
|
532
|
-
end
|
|
533
|
-
end
|
|
534
|
-
|
|
535
|
-
class MinimaxClone < Telnyx::Internal::Type::BaseModel
|
|
536
|
-
OrHash =
|
|
537
|
-
T.type_alias do
|
|
538
|
-
T.any(
|
|
539
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone,
|
|
540
|
-
Telnyx::Internal::AnyHash
|
|
541
|
-
)
|
|
542
|
-
end
|
|
543
|
-
|
|
544
|
-
# Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
|
|
545
|
-
# For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
|
|
546
|
-
# size: 20MB.
|
|
547
|
-
sig { returns(Telnyx::Internal::FileInput) }
|
|
548
|
-
attr_accessor :audio_file
|
|
549
|
-
|
|
550
|
-
# Gender of the voice clone.
|
|
551
|
-
sig do
|
|
552
|
-
returns(
|
|
553
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender::OrSymbol
|
|
554
|
-
)
|
|
555
|
-
end
|
|
556
|
-
attr_accessor :gender
|
|
557
|
-
|
|
558
|
-
# ISO 639-1 language code from the Minimax language set.
|
|
559
|
-
sig { returns(String) }
|
|
560
|
-
attr_accessor :language
|
|
561
|
-
|
|
562
|
-
# Name for the voice clone.
|
|
563
|
-
sig { returns(String) }
|
|
564
|
-
attr_accessor :name
|
|
565
|
-
|
|
566
|
-
# Voice synthesis provider. Must be `minimax`.
|
|
567
|
-
sig do
|
|
568
|
-
returns(
|
|
569
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Provider::OrSymbol
|
|
570
|
-
)
|
|
571
|
-
end
|
|
572
|
-
attr_accessor :provider
|
|
573
|
-
|
|
574
|
-
# Optional custom label describing the voice style.
|
|
575
|
-
sig { returns(T.nilable(String)) }
|
|
576
|
-
attr_reader :label
|
|
577
|
-
|
|
578
|
-
sig { params(label: String).void }
|
|
579
|
-
attr_writer :label
|
|
580
|
-
|
|
581
|
-
# TTS model identifier. Nullable — defaults to speech-2.8-turbo.
|
|
582
|
-
sig do
|
|
583
|
-
returns(
|
|
584
|
-
T.nilable(
|
|
585
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::ModelID::OrSymbol
|
|
586
|
-
)
|
|
587
|
-
)
|
|
588
|
-
end
|
|
589
|
-
attr_accessor :model_id
|
|
590
|
-
|
|
591
|
-
# Optional transcript of the audio file. Providing this improves clone quality.
|
|
592
|
-
sig { returns(T.nilable(String)) }
|
|
593
|
-
attr_reader :ref_text
|
|
594
|
-
|
|
595
|
-
sig { params(ref_text: String).void }
|
|
596
|
-
attr_writer :ref_text
|
|
597
|
-
|
|
598
|
-
# Upload-based voice clone using the Minimax provider.
|
|
599
|
-
sig do
|
|
600
|
-
params(
|
|
601
|
-
audio_file: Telnyx::Internal::FileInput,
|
|
602
|
-
gender:
|
|
603
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender::OrSymbol,
|
|
604
|
-
language: String,
|
|
605
|
-
name: String,
|
|
606
|
-
provider:
|
|
607
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Provider::OrSymbol,
|
|
608
|
-
label: String,
|
|
609
|
-
model_id:
|
|
610
|
-
T.nilable(
|
|
611
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::ModelID::OrSymbol
|
|
612
|
-
),
|
|
613
|
-
ref_text: String
|
|
614
|
-
).returns(T.attached_class)
|
|
615
|
-
end
|
|
616
|
-
def self.new(
|
|
617
|
-
# Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
|
|
618
|
-
# For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
|
|
619
|
-
# size: 20MB.
|
|
620
|
-
audio_file:,
|
|
621
|
-
# Gender of the voice clone.
|
|
622
|
-
gender:,
|
|
623
|
-
# ISO 639-1 language code from the Minimax language set.
|
|
624
|
-
language:,
|
|
625
|
-
# Name for the voice clone.
|
|
626
|
-
name:,
|
|
627
|
-
# Voice synthesis provider. Must be `minimax`.
|
|
628
|
-
provider:,
|
|
629
|
-
# Optional custom label describing the voice style.
|
|
630
|
-
label: nil,
|
|
631
|
-
# TTS model identifier. Nullable — defaults to speech-2.8-turbo.
|
|
632
|
-
model_id: nil,
|
|
633
|
-
# Optional transcript of the audio file. Providing this improves clone quality.
|
|
634
|
-
ref_text: nil
|
|
635
|
-
)
|
|
636
|
-
end
|
|
637
|
-
|
|
638
|
-
sig do
|
|
639
|
-
override.returns(
|
|
640
|
-
{
|
|
641
|
-
audio_file: Telnyx::Internal::FileInput,
|
|
642
|
-
gender:
|
|
643
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender::OrSymbol,
|
|
644
|
-
language: String,
|
|
645
|
-
name: String,
|
|
646
|
-
provider:
|
|
647
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Provider::OrSymbol,
|
|
648
|
-
label: String,
|
|
649
|
-
model_id:
|
|
650
|
-
T.nilable(
|
|
651
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::ModelID::OrSymbol
|
|
652
|
-
),
|
|
653
|
-
ref_text: String
|
|
654
|
-
}
|
|
655
|
-
)
|
|
656
|
-
end
|
|
657
|
-
def to_hash
|
|
658
|
-
end
|
|
659
|
-
|
|
660
|
-
# Gender of the voice clone.
|
|
661
|
-
module Gender
|
|
662
|
-
extend Telnyx::Internal::Type::Enum
|
|
663
|
-
|
|
664
|
-
TaggedSymbol =
|
|
665
|
-
T.type_alias do
|
|
666
|
-
T.all(
|
|
667
|
-
Symbol,
|
|
668
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender
|
|
669
|
-
)
|
|
670
|
-
end
|
|
671
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
672
|
-
|
|
673
|
-
MALE =
|
|
674
|
-
T.let(
|
|
675
|
-
:male,
|
|
676
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender::TaggedSymbol
|
|
677
|
-
)
|
|
678
|
-
FEMALE =
|
|
679
|
-
T.let(
|
|
680
|
-
:female,
|
|
681
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender::TaggedSymbol
|
|
682
|
-
)
|
|
683
|
-
NEUTRAL =
|
|
684
|
-
T.let(
|
|
685
|
-
:neutral,
|
|
686
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender::TaggedSymbol
|
|
687
|
-
)
|
|
688
|
-
|
|
689
|
-
sig do
|
|
690
|
-
override.returns(
|
|
691
|
-
T::Array[
|
|
692
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender::TaggedSymbol
|
|
693
|
-
]
|
|
694
|
-
)
|
|
695
|
-
end
|
|
696
|
-
def self.values
|
|
697
|
-
end
|
|
698
|
-
end
|
|
699
|
-
|
|
700
|
-
# Voice synthesis provider. Must be `minimax`.
|
|
701
|
-
module Provider
|
|
702
|
-
extend Telnyx::Internal::Type::Enum
|
|
703
|
-
|
|
704
|
-
TaggedSymbol =
|
|
705
|
-
T.type_alias do
|
|
706
|
-
T.all(
|
|
707
|
-
Symbol,
|
|
708
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Provider
|
|
709
|
-
)
|
|
710
|
-
end
|
|
711
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
712
|
-
|
|
713
|
-
TELNYX =
|
|
714
|
-
T.let(
|
|
715
|
-
:telnyx,
|
|
716
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Provider::TaggedSymbol
|
|
717
|
-
)
|
|
718
|
-
MINIMAX =
|
|
719
|
-
T.let(
|
|
720
|
-
:minimax,
|
|
721
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Provider::TaggedSymbol
|
|
722
|
-
)
|
|
723
|
-
|
|
724
|
-
sig do
|
|
725
|
-
override.returns(
|
|
726
|
-
T::Array[
|
|
727
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Provider::TaggedSymbol
|
|
728
|
-
]
|
|
729
|
-
)
|
|
730
|
-
end
|
|
731
|
-
def self.values
|
|
732
|
-
end
|
|
733
|
-
end
|
|
734
|
-
|
|
735
|
-
# TTS model identifier. Nullable — defaults to speech-2.8-turbo.
|
|
736
|
-
module ModelID
|
|
737
|
-
extend Telnyx::Internal::Type::Enum
|
|
738
|
-
|
|
739
|
-
TaggedSymbol =
|
|
740
|
-
T.type_alias do
|
|
741
|
-
T.all(
|
|
742
|
-
Symbol,
|
|
743
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::ModelID
|
|
744
|
-
)
|
|
745
|
-
end
|
|
746
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
747
|
-
|
|
748
|
-
SPEECH_2_8_TURBO =
|
|
749
|
-
T.let(
|
|
750
|
-
:"speech-2.8-turbo",
|
|
751
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::ModelID::TaggedSymbol
|
|
752
|
-
)
|
|
753
|
-
|
|
754
|
-
sig do
|
|
755
|
-
override.returns(
|
|
756
|
-
T::Array[
|
|
757
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::ModelID::TaggedSymbol
|
|
758
|
-
]
|
|
759
|
-
)
|
|
760
|
-
end
|
|
761
|
-
def self.values
|
|
762
|
-
end
|
|
763
|
-
end
|
|
764
|
-
end
|
|
765
|
-
|
|
766
|
-
sig do
|
|
767
|
-
override.returns(
|
|
768
|
-
T::Array[
|
|
769
|
-
Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::Variants
|
|
770
|
-
]
|
|
771
|
-
)
|
|
772
|
-
end
|
|
773
|
-
def self.variants
|
|
774
|
-
end
|
|
775
|
-
end
|
|
776
36
|
end
|
|
777
37
|
end
|
|
778
38
|
end
|