telnyx 5.72.1 → 5.74.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2de57d095a499f65deaa5ff6f238906900c1766a326406dde046422b6691fb5f
4
- data.tar.gz: 550620f1f61305b5119584f3e60d16c6c18c526a4c3c191f0501f612074b6e69
3
+ metadata.gz: 3a63840b6d62d78c92e676dcffa073416c3cf781629166435660d28fba295c7d
4
+ data.tar.gz: 41092a2300c55af70ec28f3c0f75560bfa8833651d7923abb8f2443ca961f1c0
5
5
  SHA512:
6
- metadata.gz: 85ac4fafc5e4458591fcad7fde672442fe5911599c77340be6e76132ea6b5e19961910e5c8cb1cd85c606d41a2c685aa761c0367115005a268629eff54272121
7
- data.tar.gz: 1e279b0daca717647d517581733faa38c1a57d351b3d8949ca16413f2b5c66a8f5857846e12f4d62932b682a5d568a7714c3bcf6d89409fc2d2d48a4e5d80c4a
6
+ metadata.gz: 3f16b474f8372408ecf9d1ae765876ab0da779eba35493cf980af96e8535c670f413a48140c5f2950cd9a0a72a62abbbc143698690f49cc68ac48c6f5df9f3cf
7
+ data.tar.gz: 49817e6d09be27a4b8d08292eefb4976c8bf5fcb7a342ebe9371d3724a4ab9ed98f5f1a9aa04c38da423f56b57e1be9764493202c81377f4a8694e8197b42f04
data/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## 5.74.0 (2026-04-13)
4
+
5
+ Full Changelog: [v5.73.0...v5.74.0](https://github.com/team-telnyx/telnyx-ruby/compare/v5.73.0...v5.74.0)
6
+
7
+ ### Features
8
+
9
+ * [TDA-6425] Fix session analysis API spec: relaxed date_time, remove status & completed_at ([1c2276b](https://github.com/team-telnyx/telnyx-ruby/commit/1c2276b72104e961911861e73d991cdaf264fe6f))
10
+
11
+ ## 5.73.0 (2026-04-13)
12
+
13
+ Full Changelog: [v5.72.1...v5.73.0](https://github.com/team-telnyx/telnyx-ruby/compare/v5.72.1...v5.73.0)
14
+
15
+ ### Features
16
+
17
+ * Add webhook_urls, webhook_urls_method, webhook_retries_policies to Dial endpoint ([c513a2b](https://github.com/team-telnyx/telnyx-ruby/commit/c513a2bac4f4a731fb819f1aa18bce276fa12dec))
18
+
3
19
  ## 5.72.1 (2026-04-12)
4
20
 
5
21
  Full Changelog: [v5.72.0...v5.72.1](https://github.com/team-telnyx/telnyx-ruby/compare/v5.72.0...v5.72.1)
data/README.md CHANGED
@@ -24,7 +24,7 @@ To use this gem, install via Bundler by adding the following to your application
24
24
  <!-- x-release-please-start-version -->
25
25
 
26
26
  ```ruby
27
- gem "telnyx", "~> 5.72.1"
27
+ gem "telnyx", "~> 5.74.0"
28
28
  ```
29
29
 
30
30
  <!-- x-release-please-end -->
@@ -402,6 +402,15 @@ module Telnyx
402
402
  # @return [Telnyx::Models::Calls::TranscriptionStartRequest, nil]
403
403
  optional :transcription_config, -> { Telnyx::Calls::TranscriptionStartRequest }
404
404
 
405
+ # @!attribute webhook_retries_policies
406
+ # A map of event types to retry policies. Each retry policy contains an array of
407
+ # `retries_ms` specifying the delays between retry attempts in milliseconds.
408
+ # Maximum 5 retries, total delay cannot exceed 60 seconds.
409
+ #
410
+ # @return [Hash{Symbol=>Telnyx::Models::CallDialParams::WebhookRetriesPolicy}, nil]
411
+ optional :webhook_retries_policies,
412
+ -> { Telnyx::Internal::Type::HashOf[Telnyx::CallDialParams::WebhookRetriesPolicy] }
413
+
405
414
  # @!attribute webhook_url
406
415
  # Use this field to override the URL for which Telnyx will send subsequent
407
416
  # webhooks to for this call.
@@ -415,7 +424,22 @@ module Telnyx
415
424
  # @return [Symbol, Telnyx::Models::CallDialParams::WebhookURLMethod, nil]
416
425
  optional :webhook_url_method, enum: -> { Telnyx::CallDialParams::WebhookURLMethod }
417
426
 
418
- # @!method initialize(connection_id:, from:, to:, answering_machine_detection: nil, answering_machine_detection_config: nil, assistant: nil, audio_url: nil, billing_group_id: nil, bridge_intent: nil, bridge_on_answer: nil, client_state: nil, command_id: nil, conference_config: nil, custom_headers: nil, dialogflow_config: nil, enable_dialogflow: nil, from_display_name: nil, link_to: nil, media_encryption: nil, media_name: nil, park_after_unbridge: nil, preferred_codecs: nil, prevent_double_bridge: nil, privacy: nil, record: nil, record_channels: nil, record_custom_file_name: nil, record_format: nil, record_max_length: nil, record_timeout_secs: nil, record_track: nil, record_trim: nil, send_silence_when_idle: nil, sip_auth_password: nil, sip_auth_username: nil, sip_headers: nil, sip_region: nil, sip_transport_protocol: nil, sound_modifications: nil, stream_auth_token: nil, stream_bidirectional_codec: nil, stream_bidirectional_mode: nil, stream_bidirectional_sampling_rate: nil, stream_bidirectional_target_legs: nil, stream_codec: nil, stream_establish_before_call_originate: nil, stream_track: nil, stream_url: nil, supervise_call_control_id: nil, supervisor_role: nil, time_limit_secs: nil, timeout_secs: nil, transcription: nil, transcription_config: nil, webhook_url: nil, webhook_url_method: nil, request_options: {})
427
+ # @!attribute webhook_urls
428
+ # A map of event types to webhook URLs. When an event of the specified type
429
+ # occurs, the webhook URL associated with that event type will be called instead
430
+ # of the default webhook URL. Events not mapped here will use the default webhook
431
+ # URL.
432
+ #
433
+ # @return [Hash{Symbol=>String}, nil]
434
+ optional :webhook_urls, Telnyx::Internal::Type::HashOf[String]
435
+
436
+ # @!attribute webhook_urls_method
437
+ # HTTP request method to invoke `webhook_urls`.
438
+ #
439
+ # @return [Symbol, Telnyx::Models::CallDialParams::WebhookURLsMethod, nil]
440
+ optional :webhook_urls_method, enum: -> { Telnyx::CallDialParams::WebhookURLsMethod }
441
+
442
+ # @!method initialize(connection_id:, from:, to:, answering_machine_detection: nil, answering_machine_detection_config: nil, assistant: nil, audio_url: nil, billing_group_id: nil, bridge_intent: nil, bridge_on_answer: nil, client_state: nil, command_id: nil, conference_config: nil, custom_headers: nil, dialogflow_config: nil, enable_dialogflow: nil, from_display_name: nil, link_to: nil, media_encryption: nil, media_name: nil, park_after_unbridge: nil, preferred_codecs: nil, prevent_double_bridge: nil, privacy: nil, record: nil, record_channels: nil, record_custom_file_name: nil, record_format: nil, record_max_length: nil, record_timeout_secs: nil, record_track: nil, record_trim: nil, send_silence_when_idle: nil, sip_auth_password: nil, sip_auth_username: nil, sip_headers: nil, sip_region: nil, sip_transport_protocol: nil, sound_modifications: nil, stream_auth_token: nil, stream_bidirectional_codec: nil, stream_bidirectional_mode: nil, stream_bidirectional_sampling_rate: nil, stream_bidirectional_target_legs: nil, stream_codec: nil, stream_establish_before_call_originate: nil, stream_track: nil, stream_url: nil, supervise_call_control_id: nil, supervisor_role: nil, time_limit_secs: nil, timeout_secs: nil, transcription: nil, transcription_config: nil, webhook_retries_policies: nil, webhook_url: nil, webhook_url_method: nil, webhook_urls: nil, webhook_urls_method: nil, request_options: {})
419
443
  # Some parameter documentations has been truncated, see
420
444
  # {Telnyx::Models::CallDialParams} for more details.
421
445
  #
@@ -528,10 +552,16 @@ module Telnyx
528
552
  #
529
553
  # @param transcription_config [Telnyx::Models::Calls::TranscriptionStartRequest]
530
554
  #
555
+ # @param webhook_retries_policies [Hash{Symbol=>Telnyx::Models::CallDialParams::WebhookRetriesPolicy}] A map of event types to retry policies. Each retry policy contains an array of `
556
+ #
531
557
  # @param webhook_url [String] Use this field to override the URL for which Telnyx will send subsequent webhook
532
558
  #
533
559
  # @param webhook_url_method [Symbol, Telnyx::Models::CallDialParams::WebhookURLMethod] HTTP request type used for `webhook_url`.
534
560
  #
561
+ # @param webhook_urls [Hash{Symbol=>String}] A map of event types to webhook URLs. When an event of the specified type occurs
562
+ #
563
+ # @param webhook_urls_method [Symbol, Telnyx::Models::CallDialParams::WebhookURLsMethod] HTTP request method to invoke `webhook_urls`.
564
+ #
535
565
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
536
566
 
537
567
  # The DID or SIP URI to dial out to. Multiple DID or SIP URIs can be provided
@@ -993,6 +1023,21 @@ module Telnyx
993
1023
  # @return [Array<Symbol>]
994
1024
  end
995
1025
 
1026
+ class WebhookRetriesPolicy < Telnyx::Internal::Type::BaseModel
1027
+ # @!attribute retries_ms
1028
+ # Array of delays in milliseconds between retry attempts. Total sum cannot exceed
1029
+ # 60000ms.
1030
+ #
1031
+ # @return [Array<Integer>, nil]
1032
+ optional :retries_ms, Telnyx::Internal::Type::ArrayOf[Integer]
1033
+
1034
+ # @!method initialize(retries_ms: nil)
1035
+ # Some parameter documentations has been truncated, see
1036
+ # {Telnyx::Models::CallDialParams::WebhookRetriesPolicy} for more details.
1037
+ #
1038
+ # @param retries_ms [Array<Integer>] Array of delays in milliseconds between retry attempts. Total sum cannot exceed
1039
+ end
1040
+
996
1041
  # HTTP request type used for `webhook_url`.
997
1042
  module WebhookURLMethod
998
1043
  extend Telnyx::Internal::Type::Enum
@@ -1003,6 +1048,17 @@ module Telnyx
1003
1048
  # @!method self.values
1004
1049
  # @return [Array<Symbol>]
1005
1050
  end
1051
+
1052
+ # HTTP request method to invoke `webhook_urls`.
1053
+ module WebhookURLsMethod
1054
+ extend Telnyx::Internal::Type::Enum
1055
+
1056
+ POST = :POST
1057
+ GET = :GET
1058
+
1059
+ # @!method self.values
1060
+ # @return [Array<Symbol>]
1061
+ end
1006
1062
  end
1007
1063
  end
1008
1064
  end
@@ -18,7 +18,9 @@ module Telnyx
18
18
  required :event_id, String
19
19
 
20
20
  # @!attribute date_time
21
- # ISO 8601 timestamp to narrow index selection for faster lookups.
21
+ # ISO 8601 timestamp or date to narrow index selection for faster lookups. Accepts
22
+ # full datetime (e.g., 2026-03-17T10:00:00Z) or date-only format (e.g.,
23
+ # 2026-03-17).
22
24
  #
23
25
  # @return [Time, nil]
24
26
  optional :date_time, Time
@@ -42,11 +44,14 @@ module Telnyx
42
44
  optional :max_depth, Integer
43
45
 
44
46
  # @!method initialize(record_type:, event_id:, date_time: nil, expand: nil, include_children: nil, max_depth: nil, request_options: {})
47
+ # Some parameter documentations has been truncated, see
48
+ # {Telnyx::Models::SessionAnalysisRetrieveParams} for more details.
49
+ #
45
50
  # @param record_type [String]
46
51
  #
47
52
  # @param event_id [String]
48
53
  #
49
- # @param date_time [Time] ISO 8601 timestamp to narrow index selection for faster lookups.
54
+ # @param date_time [Time] ISO 8601 timestamp or date to narrow index selection for faster lookups. Accepts
50
55
  #
51
56
  # @param expand [Symbol, Telnyx::Models::SessionAnalysisRetrieveParams::Expand] Controls what data to expand on each event node.
52
57
  #
@@ -9,12 +9,6 @@ module Telnyx
9
9
  # @return [Telnyx::Models::SessionAnalysisRetrieveResponse::Cost]
10
10
  required :cost, -> { Telnyx::Models::SessionAnalysisRetrieveResponse::Cost }
11
11
 
12
- # @!attribute created_at
13
- # When the session started.
14
- #
15
- # @return [Time]
16
- required :created_at, Time
17
-
18
12
  # @!attribute meta
19
13
  #
20
14
  # @return [Telnyx::Models::SessionAnalysisRetrieveResponse::Meta]
@@ -31,32 +25,14 @@ module Telnyx
31
25
  # @return [String]
32
26
  required :session_id, String
33
27
 
34
- # @!attribute status
35
- # Analysis status (e.g. "completed").
36
- #
37
- # @return [String]
38
- required :status, String
39
-
40
- # @!attribute completed_at
41
- # When the session completed.
42
- #
43
- # @return [Time, nil]
44
- optional :completed_at, Time, nil?: true
45
-
46
- # @!method initialize(cost:, created_at:, meta:, root:, session_id:, status:, completed_at: nil)
28
+ # @!method initialize(cost:, meta:, root:, session_id:)
47
29
  # @param cost [Telnyx::Models::SessionAnalysisRetrieveResponse::Cost]
48
30
  #
49
- # @param created_at [Time] When the session started.
50
- #
51
31
  # @param meta [Telnyx::Models::SessionAnalysisRetrieveResponse::Meta]
52
32
  #
53
33
  # @param root [Telnyx::Models::EventNode]
54
34
  #
55
35
  # @param session_id [String] Identifier for the analyzed session.
56
- #
57
- # @param status [String] Analysis status (e.g. "completed").
58
- #
59
- # @param completed_at [Time, nil] When the session completed.
60
36
 
61
37
  # @see Telnyx::Models::SessionAnalysisRetrieveResponse#cost
62
38
  class Cost < Telnyx::Internal::Type::BaseModel
@@ -7,14 +7,390 @@ module Telnyx
7
7
  extend Telnyx::Internal::Type::RequestParameters::Converter
8
8
  include Telnyx::Internal::Type::RequestParameters
9
9
 
10
- # @!attribute upload_params
10
+ # @!attribute params
11
+ # Multipart form data for creating a voice clone from a direct audio upload.
12
+ # Maximum file size: 5MB for Telnyx, 20MB for Minimax.
11
13
  #
12
- # @return [Object]
13
- required :upload_params, Telnyx::Internal::Type::Unknown
14
+ # @return [Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::MinimaxClone]
15
+ required :params, union: -> { Telnyx::VoiceCloneCreateFromUploadParams::Params }
14
16
 
15
- # @!method initialize(upload_params:, request_options: {})
16
- # @param upload_params [Object]
17
+ # @!method initialize(params:, request_options: {})
18
+ # Some parameter documentations has been truncated, see
19
+ # {Telnyx::Models::VoiceCloneCreateFromUploadParams} for more details.
20
+ #
21
+ # @param params [Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::MinimaxClone] Multipart form data for creating a voice clone from a direct audio upload. Maxim
22
+ #
17
23
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
24
+
25
+ # Multipart form data for creating a voice clone from a direct audio upload.
26
+ # Maximum file size: 5MB for Telnyx, 20MB for Minimax.
27
+ module Params
28
+ extend Telnyx::Internal::Type::Union
29
+
30
+ # Upload-based voice clone using the Telnyx Qwen3TTS model (default).
31
+ variant -> { Telnyx::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone }
32
+
33
+ # Upload-based voice clone using the Telnyx Ultra model.
34
+ variant -> { Telnyx::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone }
35
+
36
+ # Upload-based voice clone using the Minimax provider.
37
+ variant -> { Telnyx::VoiceCloneCreateFromUploadParams::Params::MinimaxClone }
38
+
39
+ class TelnyxQwen3TtsClone < Telnyx::Internal::Type::BaseModel
40
+ # @!attribute audio_file
41
+ # Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
42
+ # For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
43
+ # size: 5MB.
44
+ #
45
+ # @return [Pathname, StringIO, IO, String, Telnyx::FilePart]
46
+ required :audio_file, Telnyx::Internal::Type::FileInput
47
+
48
+ # @!attribute gender
49
+ # Gender of the voice clone.
50
+ #
51
+ # @return [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone::Gender]
52
+ required :gender,
53
+ enum: -> { Telnyx::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone::Gender }
54
+
55
+ # @!attribute language
56
+ # ISO 639-1 language code from the Qwen language set.
57
+ #
58
+ # @return [String]
59
+ required :language, String
60
+
61
+ # @!attribute name
62
+ # Name for the voice clone.
63
+ #
64
+ # @return [String]
65
+ required :name, String
66
+
67
+ # @!attribute provider
68
+ # Voice synthesis provider. Must be `telnyx`.
69
+ #
70
+ # @return [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone::Provider]
71
+ required :provider,
72
+ enum: -> { Telnyx::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone::Provider }
73
+
74
+ # @!attribute label
75
+ # Optional custom label describing the voice style.
76
+ #
77
+ # @return [String, nil]
78
+ optional :label, String
79
+
80
+ # @!attribute model_id
81
+ # TTS model identifier. Nullable/omittable — defaults to Qwen3TTS.
82
+ #
83
+ # @return [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone::ModelID, nil]
84
+ optional :model_id,
85
+ enum: -> {
86
+ Telnyx::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone::ModelID
87
+ },
88
+ nil?: true
89
+
90
+ # @!attribute ref_text
91
+ # Optional transcript of the audio file. Providing this improves clone quality.
92
+ #
93
+ # @return [String, nil]
94
+ optional :ref_text, String
95
+
96
+ # @!method initialize(audio_file:, gender:, language:, name:, provider:, label: nil, model_id: nil, ref_text: nil)
97
+ # Some parameter documentations has been truncated, see
98
+ # {Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone}
99
+ # for more details.
100
+ #
101
+ # Upload-based voice clone using the Telnyx Qwen3TTS model (default).
102
+ #
103
+ # @param audio_file [Pathname, StringIO, IO, String, Telnyx::FilePart] Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
104
+ #
105
+ # @param gender [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone::Gender] Gender of the voice clone.
106
+ #
107
+ # @param language [String] ISO 639-1 language code from the Qwen language set.
108
+ #
109
+ # @param name [String] Name for the voice clone.
110
+ #
111
+ # @param provider [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone::Provider] Voice synthesis provider. Must be `telnyx`.
112
+ #
113
+ # @param label [String] Optional custom label describing the voice style.
114
+ #
115
+ # @param model_id [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone::ModelID, nil] TTS model identifier. Nullable/omittable — defaults to Qwen3TTS.
116
+ #
117
+ # @param ref_text [String] Optional transcript of the audio file. Providing this improves clone quality.
118
+
119
+ # Gender of the voice clone.
120
+ #
121
+ # @see Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone#gender
122
+ module Gender
123
+ extend Telnyx::Internal::Type::Enum
124
+
125
+ MALE = :male
126
+ FEMALE = :female
127
+ NEUTRAL = :neutral
128
+
129
+ # @!method self.values
130
+ # @return [Array<Symbol>]
131
+ end
132
+
133
+ # Voice synthesis provider. Must be `telnyx`.
134
+ #
135
+ # @see Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone#provider
136
+ module Provider
137
+ extend Telnyx::Internal::Type::Enum
138
+
139
+ TELNYX = :telnyx
140
+ MINIMAX = :minimax
141
+
142
+ # @!method self.values
143
+ # @return [Array<Symbol>]
144
+ end
145
+
146
+ # TTS model identifier. Nullable/omittable — defaults to Qwen3TTS.
147
+ #
148
+ # @see Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone#model_id
149
+ module ModelID
150
+ extend Telnyx::Internal::Type::Enum
151
+
152
+ QWEN3_TTS = :Qwen3TTS
153
+
154
+ # @!method self.values
155
+ # @return [Array<Symbol>]
156
+ end
157
+ end
158
+
159
+ class TelnyxUltraClone < Telnyx::Internal::Type::BaseModel
160
+ # @!attribute audio_file
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
+ #
165
+ # @return [Pathname, StringIO, IO, String, Telnyx::FilePart]
166
+ required :audio_file, Telnyx::Internal::Type::FileInput
167
+
168
+ # @!attribute gender
169
+ # Gender of the voice clone.
170
+ #
171
+ # @return [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone::Gender]
172
+ required :gender, enum: -> { Telnyx::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone::Gender }
173
+
174
+ # @!attribute language
175
+ # ISO 639-1 language code from the Ultra language set (40 languages).
176
+ #
177
+ # @return [String]
178
+ required :language, String
179
+
180
+ # @!attribute model_id
181
+ # TTS model identifier. Must be `Ultra`.
182
+ #
183
+ # @return [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone::ModelID]
184
+ required :model_id,
185
+ enum: -> { Telnyx::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone::ModelID }
186
+
187
+ # @!attribute name
188
+ # Name for the voice clone.
189
+ #
190
+ # @return [String]
191
+ required :name, String
192
+
193
+ # @!attribute provider
194
+ # Voice synthesis provider. Must be `telnyx`.
195
+ #
196
+ # @return [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone::Provider]
197
+ required :provider,
198
+ enum: -> { Telnyx::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone::Provider }
199
+
200
+ # @!attribute label
201
+ # Optional custom label describing the voice style.
202
+ #
203
+ # @return [String, nil]
204
+ optional :label, String
205
+
206
+ # @!attribute ref_text
207
+ # Optional transcript of the audio file. Providing this improves clone quality.
208
+ #
209
+ # @return [String, nil]
210
+ optional :ref_text, String
211
+
212
+ # @!method initialize(audio_file:, gender:, language:, model_id:, name:, provider:, label: nil, ref_text: nil)
213
+ # Some parameter documentations has been truncated, see
214
+ # {Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone} for
215
+ # more details.
216
+ #
217
+ # Upload-based voice clone using the Telnyx Ultra model.
218
+ #
219
+ # @param audio_file [Pathname, StringIO, IO, String, Telnyx::FilePart] Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
220
+ #
221
+ # @param gender [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone::Gender] Gender of the voice clone.
222
+ #
223
+ # @param language [String] ISO 639-1 language code from the Ultra language set (40 languages).
224
+ #
225
+ # @param model_id [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone::ModelID] TTS model identifier. Must be `Ultra`.
226
+ #
227
+ # @param name [String] Name for the voice clone.
228
+ #
229
+ # @param provider [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone::Provider] Voice synthesis provider. Must be `telnyx`.
230
+ #
231
+ # @param label [String] Optional custom label describing the voice style.
232
+ #
233
+ # @param ref_text [String] Optional transcript of the audio file. Providing this improves clone quality.
234
+
235
+ # Gender of the voice clone.
236
+ #
237
+ # @see Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone#gender
238
+ module Gender
239
+ extend Telnyx::Internal::Type::Enum
240
+
241
+ MALE = :male
242
+ FEMALE = :female
243
+ NEUTRAL = :neutral
244
+
245
+ # @!method self.values
246
+ # @return [Array<Symbol>]
247
+ end
248
+
249
+ # TTS model identifier. Must be `Ultra`.
250
+ #
251
+ # @see Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone#model_id
252
+ module ModelID
253
+ extend Telnyx::Internal::Type::Enum
254
+
255
+ ULTRA = :Ultra
256
+
257
+ # @!method self.values
258
+ # @return [Array<Symbol>]
259
+ end
260
+
261
+ # Voice synthesis provider. Must be `telnyx`.
262
+ #
263
+ # @see Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone#provider
264
+ module Provider
265
+ extend Telnyx::Internal::Type::Enum
266
+
267
+ TELNYX = :telnyx
268
+ MINIMAX = :minimax
269
+
270
+ # @!method self.values
271
+ # @return [Array<Symbol>]
272
+ end
273
+ end
274
+
275
+ class MinimaxClone < Telnyx::Internal::Type::BaseModel
276
+ # @!attribute audio_file
277
+ # Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
278
+ # For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
279
+ # size: 20MB.
280
+ #
281
+ # @return [Pathname, StringIO, IO, String, Telnyx::FilePart]
282
+ required :audio_file, Telnyx::Internal::Type::FileInput
283
+
284
+ # @!attribute gender
285
+ # Gender of the voice clone.
286
+ #
287
+ # @return [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::MinimaxClone::Gender]
288
+ required :gender, enum: -> { Telnyx::VoiceCloneCreateFromUploadParams::Params::MinimaxClone::Gender }
289
+
290
+ # @!attribute language
291
+ # ISO 639-1 language code from the Minimax language set.
292
+ #
293
+ # @return [String]
294
+ required :language, String
295
+
296
+ # @!attribute name
297
+ # Name for the voice clone.
298
+ #
299
+ # @return [String]
300
+ required :name, String
301
+
302
+ # @!attribute provider
303
+ # Voice synthesis provider. Must be `minimax`.
304
+ #
305
+ # @return [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::MinimaxClone::Provider]
306
+ required :provider, enum: -> { Telnyx::VoiceCloneCreateFromUploadParams::Params::MinimaxClone::Provider }
307
+
308
+ # @!attribute label
309
+ # Optional custom label describing the voice style.
310
+ #
311
+ # @return [String, nil]
312
+ optional :label, String
313
+
314
+ # @!attribute model_id
315
+ # TTS model identifier. Nullable — defaults to speech-2.8-turbo.
316
+ #
317
+ # @return [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::MinimaxClone::ModelID, nil]
318
+ optional :model_id,
319
+ enum: -> { Telnyx::VoiceCloneCreateFromUploadParams::Params::MinimaxClone::ModelID },
320
+ nil?: true
321
+
322
+ # @!attribute ref_text
323
+ # Optional transcript of the audio file. Providing this improves clone quality.
324
+ #
325
+ # @return [String, nil]
326
+ optional :ref_text, String
327
+
328
+ # @!method initialize(audio_file:, gender:, language:, name:, provider:, label: nil, model_id: nil, ref_text: nil)
329
+ # Some parameter documentations has been truncated, see
330
+ # {Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::MinimaxClone} for
331
+ # more details.
332
+ #
333
+ # Upload-based voice clone using the Minimax provider.
334
+ #
335
+ # @param audio_file [Pathname, StringIO, IO, String, Telnyx::FilePart] Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
336
+ #
337
+ # @param gender [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::MinimaxClone::Gender] Gender of the voice clone.
338
+ #
339
+ # @param language [String] ISO 639-1 language code from the Minimax language set.
340
+ #
341
+ # @param name [String] Name for the voice clone.
342
+ #
343
+ # @param provider [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::MinimaxClone::Provider] Voice synthesis provider. Must be `minimax`.
344
+ #
345
+ # @param label [String] Optional custom label describing the voice style.
346
+ #
347
+ # @param model_id [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::MinimaxClone::ModelID, nil] TTS model identifier. Nullable — defaults to speech-2.8-turbo.
348
+ #
349
+ # @param ref_text [String] Optional transcript of the audio file. Providing this improves clone quality.
350
+
351
+ # Gender of the voice clone.
352
+ #
353
+ # @see Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::MinimaxClone#gender
354
+ module Gender
355
+ extend Telnyx::Internal::Type::Enum
356
+
357
+ MALE = :male
358
+ FEMALE = :female
359
+ NEUTRAL = :neutral
360
+
361
+ # @!method self.values
362
+ # @return [Array<Symbol>]
363
+ end
364
+
365
+ # Voice synthesis provider. Must be `minimax`.
366
+ #
367
+ # @see Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::MinimaxClone#provider
368
+ module Provider
369
+ extend Telnyx::Internal::Type::Enum
370
+
371
+ TELNYX = :telnyx
372
+ MINIMAX = :minimax
373
+
374
+ # @!method self.values
375
+ # @return [Array<Symbol>]
376
+ end
377
+
378
+ # TTS model identifier. Nullable — defaults to speech-2.8-turbo.
379
+ #
380
+ # @see Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::MinimaxClone#model_id
381
+ module ModelID
382
+ extend Telnyx::Internal::Type::Enum
383
+
384
+ SPEECH_2_8_TURBO = :"speech-2.8-turbo"
385
+
386
+ # @!method self.values
387
+ # @return [Array<Symbol>]
388
+ end
389
+ end
390
+
391
+ # @!method self.variants
392
+ # @return [Array(Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxQwen3TtsClone, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::TelnyxUltraClone, Telnyx::Models::VoiceCloneCreateFromUploadParams::Params::MinimaxClone)]
393
+ end
18
394
  end
19
395
  end
20
396
  end
@@ -31,7 +31,7 @@ module Telnyx
31
31
  # When the `record` parameter is set to `record-from-answer`, the response will
32
32
  # include a `recording_id` field.
33
33
  #
34
- # @overload dial(connection_id:, from:, to:, answering_machine_detection: nil, answering_machine_detection_config: nil, assistant: nil, audio_url: nil, billing_group_id: nil, bridge_intent: nil, bridge_on_answer: nil, client_state: nil, command_id: nil, conference_config: nil, custom_headers: nil, dialogflow_config: nil, enable_dialogflow: nil, from_display_name: nil, link_to: nil, media_encryption: nil, media_name: nil, park_after_unbridge: nil, preferred_codecs: nil, prevent_double_bridge: nil, privacy: nil, record: nil, record_channels: nil, record_custom_file_name: nil, record_format: nil, record_max_length: nil, record_timeout_secs: nil, record_track: nil, record_trim: nil, send_silence_when_idle: nil, sip_auth_password: nil, sip_auth_username: nil, sip_headers: nil, sip_region: nil, sip_transport_protocol: nil, sound_modifications: nil, stream_auth_token: nil, stream_bidirectional_codec: nil, stream_bidirectional_mode: nil, stream_bidirectional_sampling_rate: nil, stream_bidirectional_target_legs: nil, stream_codec: nil, stream_establish_before_call_originate: nil, stream_track: nil, stream_url: nil, supervise_call_control_id: nil, supervisor_role: nil, time_limit_secs: nil, timeout_secs: nil, transcription: nil, transcription_config: nil, webhook_url: nil, webhook_url_method: nil, request_options: {})
34
+ # @overload dial(connection_id:, from:, to:, answering_machine_detection: nil, answering_machine_detection_config: nil, assistant: nil, audio_url: nil, billing_group_id: nil, bridge_intent: nil, bridge_on_answer: nil, client_state: nil, command_id: nil, conference_config: nil, custom_headers: nil, dialogflow_config: nil, enable_dialogflow: nil, from_display_name: nil, link_to: nil, media_encryption: nil, media_name: nil, park_after_unbridge: nil, preferred_codecs: nil, prevent_double_bridge: nil, privacy: nil, record: nil, record_channels: nil, record_custom_file_name: nil, record_format: nil, record_max_length: nil, record_timeout_secs: nil, record_track: nil, record_trim: nil, send_silence_when_idle: nil, sip_auth_password: nil, sip_auth_username: nil, sip_headers: nil, sip_region: nil, sip_transport_protocol: nil, sound_modifications: nil, stream_auth_token: nil, stream_bidirectional_codec: nil, stream_bidirectional_mode: nil, stream_bidirectional_sampling_rate: nil, stream_bidirectional_target_legs: nil, stream_codec: nil, stream_establish_before_call_originate: nil, stream_track: nil, stream_url: nil, supervise_call_control_id: nil, supervisor_role: nil, time_limit_secs: nil, timeout_secs: nil, transcription: nil, transcription_config: nil, webhook_retries_policies: nil, webhook_url: nil, webhook_url_method: nil, webhook_urls: nil, webhook_urls_method: nil, request_options: {})
35
35
  #
36
36
  # @param connection_id [String] The ID of the Call Control App (formerly ID of the connection) to be used when d
37
37
  #
@@ -142,10 +142,16 @@ module Telnyx
142
142
  #
143
143
  # @param transcription_config [Telnyx::Models::Calls::TranscriptionStartRequest]
144
144
  #
145
+ # @param webhook_retries_policies [Hash{Symbol=>Telnyx::Models::CallDialParams::WebhookRetriesPolicy}] A map of event types to retry policies. Each retry policy contains an array of `
146
+ #
145
147
  # @param webhook_url [String] Use this field to override the URL for which Telnyx will send subsequent webhook
146
148
  #
147
149
  # @param webhook_url_method [Symbol, Telnyx::Models::CallDialParams::WebhookURLMethod] HTTP request type used for `webhook_url`.
148
150
  #
151
+ # @param webhook_urls [Hash{Symbol=>String}] A map of event types to webhook URLs. When an event of the specified type occurs
152
+ #
153
+ # @param webhook_urls_method [Symbol, Telnyx::Models::CallDialParams::WebhookURLsMethod] HTTP request method to invoke `webhook_urls`.
154
+ #
149
155
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
150
156
  #
151
157
  # @return [Telnyx::Models::CallDialResponse]
@@ -8,6 +8,9 @@ module Telnyx
8
8
  # @return [Telnyx::Resources::SessionAnalysis::Metadata]
9
9
  attr_reader :metadata
10
10
 
11
+ # Some parameter documentations has been truncated, see
12
+ # {Telnyx::Models::SessionAnalysisRetrieveParams} for more details.
13
+ #
11
14
  # Retrieves a full session analysis tree for a given event, including costs, child
12
15
  # events, and product linkages.
13
16
  #
@@ -17,7 +20,7 @@ module Telnyx
17
20
  #
18
21
  # @param record_type [String] Path param: The record type identifier.
19
22
  #
20
- # @param date_time [Time] Query param: ISO 8601 timestamp to narrow index selection for faster lookups.
23
+ # @param date_time [Time] Query param: ISO 8601 timestamp or date to narrow index selection for faster loo
21
24
  #
22
25
  # @param expand [Symbol, Telnyx::Models::SessionAnalysisRetrieveParams::Expand] Query param: Controls what data to expand on each event node.
23
26
  #