telnyx 5.60.0 → 5.62.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 (171) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +37 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +10 -5
  5. data/lib/telnyx/errors.rb +0 -10
  6. data/lib/telnyx/lib/webhook_verification.rb +172 -0
  7. data/lib/telnyx/models/ai/assistants/{tag_delete_params.rb → tag_add_params.rb} +2 -2
  8. data/lib/telnyx/models/ai/assistants/{tag_delete_response.rb → tag_add_response.rb} +2 -2
  9. data/lib/telnyx/models/ai/assistants/{tag_create_params.rb → tag_remove_params.rb} +2 -2
  10. data/lib/telnyx/models/ai/assistants/{tag_create_response.rb → tag_remove_response.rb} +2 -2
  11. data/lib/telnyx/models/call_cost_webhook_event.rb +242 -0
  12. data/lib/telnyx/models/calls/action_start_noise_suppression_params.rb +135 -8
  13. data/lib/telnyx/models/text_to_speech_generate_params.rb +3 -3
  14. data/lib/telnyx/models/unsafe_unwrap_webhook_event.rb +3 -1
  15. data/lib/telnyx/models/unwrap_webhook_event.rb +3 -1
  16. data/lib/telnyx/models/voice_clone_create_from_design_params.rb +27 -6
  17. data/lib/telnyx/models/voice_clone_create_from_upload_params.rb +23 -2
  18. data/lib/telnyx/models/voice_clone_create_params.rb +79 -0
  19. data/lib/telnyx/models/voice_clone_create_response.rb +19 -0
  20. data/lib/telnyx/models/voice_clone_data.rb +41 -1
  21. data/lib/telnyx/models/voice_clone_list_params.rb +22 -1
  22. data/lib/telnyx/models/voice_design_create_params.rb +24 -1
  23. data/lib/telnyx/models/voice_design_data.rb +45 -1
  24. data/lib/telnyx/models/voice_design_list_response.rb +32 -1
  25. data/lib/telnyx/models/{voice_design_update_params.rb → voice_design_rename_params.rb} +2 -2
  26. data/lib/telnyx/models/{voice_design_update_response.rb → voice_design_rename_response.rb} +42 -11
  27. data/lib/telnyx/models/whatsapp/business_accounts/{phone_number_create_verification_params.rb → phone_number_initialize_verification_params.rb} +5 -5
  28. data/lib/telnyx/models/whatsapp/template_create_params.rb +530 -0
  29. data/lib/telnyx/models/whatsapp/{message_template_create_response.rb → template_create_response.rb} +2 -2
  30. data/lib/telnyx/models/whatsapp/{message_template_list_params.rb → template_list_params.rb} +5 -5
  31. data/lib/telnyx/models/whatsapp_message_template_delete_params.rb +20 -0
  32. data/lib/telnyx/models/whatsapp_message_template_retrieve_params.rb +20 -0
  33. data/lib/telnyx/models/whatsapp_message_template_retrieve_response.rb +16 -0
  34. data/lib/telnyx/models/whatsapp_message_template_update_params.rb +504 -0
  35. data/lib/telnyx/models/whatsapp_message_template_update_response.rb +16 -0
  36. data/lib/telnyx/models/whatsapp_template_data.rb +10 -3
  37. data/lib/telnyx/models/x402/{credit_account_create_payment_quote_params.rb → credit_account_create_quote_params.rb} +2 -2
  38. data/lib/telnyx/models/x402/{credit_account_create_payment_quote_response.rb → credit_account_create_quote_response.rb} +31 -32
  39. data/lib/telnyx/models/x402/{credit_account_settle_payment_params.rb → credit_account_settle_params.rb} +3 -3
  40. data/lib/telnyx/models/x402/{credit_account_settle_payment_response.rb → credit_account_settle_response.rb} +14 -15
  41. data/lib/telnyx/models.rb +12 -4
  42. data/lib/telnyx/resources/ai/assistants/tags.rb +28 -28
  43. data/lib/telnyx/resources/calls/actions.rb +1 -1
  44. data/lib/telnyx/resources/voice_clones.rb +38 -31
  45. data/lib/telnyx/resources/voice_designs.rb +27 -25
  46. data/lib/telnyx/resources/webhooks.rb +10 -183
  47. data/lib/telnyx/resources/whatsapp/business_accounts/phone_numbers.rb +5 -5
  48. data/lib/telnyx/resources/whatsapp/phone_numbers/profile.rb +0 -4
  49. data/lib/telnyx/resources/whatsapp/templates.rb +91 -0
  50. data/lib/telnyx/resources/whatsapp.rb +3 -3
  51. data/lib/telnyx/resources/whatsapp_message_templates.rb +81 -0
  52. data/lib/telnyx/resources/x402/credit_account.rb +13 -13
  53. data/lib/telnyx/version.rb +1 -1
  54. data/lib/telnyx.rb +25 -24
  55. data/rbi/telnyx/client.rbi +8 -4
  56. data/rbi/telnyx/models/ai/assistants/{tag_create_params.rbi → tag_add_params.rbi} +2 -2
  57. data/rbi/telnyx/models/ai/assistants/{tag_delete_response.rbi → tag_add_response.rbi} +2 -2
  58. data/rbi/telnyx/models/ai/assistants/{tag_delete_params.rbi → tag_remove_params.rbi} +2 -2
  59. data/rbi/telnyx/models/ai/assistants/{tag_create_response.rbi → tag_remove_response.rbi} +2 -2
  60. data/rbi/telnyx/models/call_cost_webhook_event.rbi +485 -0
  61. data/rbi/telnyx/models/calls/action_start_noise_suppression_params.rbi +338 -12
  62. data/rbi/telnyx/models/text_to_speech_generate_params.rbi +2 -1
  63. data/rbi/telnyx/models/unsafe_unwrap_webhook_event.rbi +1 -0
  64. data/rbi/telnyx/models/unwrap_webhook_event.rbi +1 -0
  65. data/rbi/telnyx/models/voice_clone_create_from_design_params.rbi +51 -0
  66. data/rbi/telnyx/models/voice_clone_create_from_upload_params.rbi +67 -2
  67. data/rbi/telnyx/models/voice_clone_create_params.rbi +142 -0
  68. data/rbi/telnyx/models/voice_clone_create_response.rbi +36 -0
  69. data/rbi/telnyx/models/voice_clone_data.rbi +57 -0
  70. data/rbi/telnyx/models/voice_clone_list_params.rbi +62 -0
  71. data/rbi/telnyx/models/voice_design_create_params.rbi +60 -0
  72. data/rbi/telnyx/models/voice_design_data.rbi +59 -0
  73. data/rbi/telnyx/models/voice_design_list_response.rbi +73 -0
  74. data/rbi/telnyx/models/{voice_design_update_params.rbi → voice_design_rename_params.rbi} +2 -2
  75. data/rbi/telnyx/models/{voice_design_update_response.rbi → voice_design_rename_response.rbi} +90 -14
  76. data/rbi/telnyx/models/whatsapp/business_accounts/{phone_number_create_verification_params.rbi → phone_number_initialize_verification_params.rbi} +10 -10
  77. data/rbi/telnyx/models/whatsapp/template_create_params.rbi +1177 -0
  78. data/rbi/telnyx/models/whatsapp/{message_template_create_response.rbi → template_create_response.rbi} +2 -2
  79. data/rbi/telnyx/models/whatsapp/{message_template_list_params.rbi → template_list_params.rbi} +11 -11
  80. data/rbi/telnyx/models/whatsapp_message_template_delete_params.rbi +38 -0
  81. data/rbi/telnyx/models/whatsapp_message_template_retrieve_params.rbi +38 -0
  82. data/rbi/telnyx/models/whatsapp_message_template_retrieve_response.rbi +33 -0
  83. data/rbi/telnyx/models/whatsapp_message_template_update_params.rbi +1178 -0
  84. data/rbi/telnyx/models/whatsapp_message_template_update_response.rbi +33 -0
  85. data/rbi/telnyx/models/whatsapp_template_data.rbi +10 -2
  86. data/rbi/telnyx/models/x402/{credit_account_create_payment_quote_params.rbi → credit_account_create_quote_params.rbi} +2 -2
  87. data/rbi/telnyx/models/x402/{credit_account_create_payment_quote_response.rbi → credit_account_create_quote_response.rbi} +41 -42
  88. data/rbi/telnyx/models/x402/{credit_account_settle_payment_params.rbi → credit_account_settle_params.rbi} +2 -2
  89. data/rbi/telnyx/models/x402/{credit_account_settle_payment_response.rbi → credit_account_settle_response.rbi} +21 -26
  90. data/rbi/telnyx/models.rbi +29 -3
  91. data/rbi/telnyx/resources/ai/assistants/tags.rbi +13 -13
  92. data/rbi/telnyx/resources/calls/actions.rbi +4 -3
  93. data/rbi/telnyx/resources/voice_clones.rbi +36 -25
  94. data/rbi/telnyx/resources/voice_designs.rbi +21 -17
  95. data/rbi/telnyx/resources/webhooks.rbi +12 -2
  96. data/rbi/telnyx/resources/whatsapp/business_accounts/phone_numbers.rbi +2 -2
  97. data/rbi/telnyx/resources/whatsapp/phone_numbers/profile.rbi +0 -5
  98. data/rbi/telnyx/resources/whatsapp/templates.rbi +85 -0
  99. data/rbi/telnyx/resources/whatsapp.rbi +2 -2
  100. data/rbi/telnyx/resources/whatsapp_message_templates.rbi +67 -0
  101. data/rbi/telnyx/resources/x402/credit_account.rbi +4 -6
  102. data/sig/telnyx/client.rbs +4 -2
  103. data/sig/telnyx/models/ai/assistants/{tag_delete_params.rbs → tag_add_params.rbs} +2 -2
  104. data/sig/telnyx/models/ai/assistants/{tag_delete_response.rbs → tag_add_response.rbs} +2 -2
  105. data/sig/telnyx/models/ai/assistants/{tag_create_params.rbs → tag_remove_params.rbs} +2 -2
  106. data/sig/telnyx/models/ai/assistants/{tag_create_response.rbs → tag_remove_response.rbs} +2 -2
  107. data/sig/telnyx/models/call_cost_webhook_event.rbs +235 -0
  108. data/sig/telnyx/models/calls/action_start_noise_suppression_params.rbs +124 -4
  109. data/sig/telnyx/models/unsafe_unwrap_webhook_event.rbs +1 -0
  110. data/sig/telnyx/models/unwrap_webhook_event.rbs +1 -0
  111. data/sig/telnyx/models/voice_clone_create_from_design_params.rbs +23 -1
  112. data/sig/telnyx/models/voice_clone_create_from_upload_params.rbs +22 -0
  113. data/sig/telnyx/models/voice_clone_create_params.rbs +75 -0
  114. data/sig/telnyx/models/voice_clone_create_response.rbs +15 -0
  115. data/sig/telnyx/models/voice_clone_data.rbs +34 -0
  116. data/sig/telnyx/models/voice_clone_list_params.rbs +22 -0
  117. data/sig/telnyx/models/voice_design_create_params.rbs +22 -0
  118. data/sig/telnyx/models/voice_design_data.rbs +30 -0
  119. data/sig/telnyx/models/voice_design_list_response.rbs +25 -0
  120. data/sig/telnyx/models/{voice_design_update_params.rbs → voice_design_rename_params.rbs} +2 -2
  121. data/sig/telnyx/models/voice_design_rename_response.rbs +104 -0
  122. data/sig/telnyx/models/whatsapp/business_accounts/{phone_number_create_verification_params.rbs → phone_number_initialize_verification_params.rbs} +9 -9
  123. data/sig/telnyx/models/whatsapp/template_create_params.rbs +479 -0
  124. data/sig/telnyx/models/whatsapp/{message_template_update_response.rbs → template_create_response.rbs} +2 -3
  125. data/sig/telnyx/models/whatsapp/{message_template_list_params.rbs → template_list_params.rbs} +9 -9
  126. data/sig/telnyx/models/whatsapp_message_template_delete_params.rbs +20 -0
  127. data/sig/telnyx/models/whatsapp_message_template_retrieve_params.rbs +20 -0
  128. data/sig/telnyx/models/whatsapp_message_template_retrieve_response.rbs +16 -0
  129. data/sig/telnyx/models/whatsapp_message_template_update_params.rbs +473 -0
  130. data/sig/telnyx/models/whatsapp_message_template_update_response.rbs +16 -0
  131. data/sig/telnyx/models/x402/{credit_account_create_payment_quote_params.rbs → credit_account_create_quote_params.rbs} +2 -2
  132. data/sig/telnyx/models/x402/{credit_account_create_payment_quote_response.rbs → credit_account_create_quote_response.rbs} +46 -48
  133. data/sig/telnyx/models/x402/{credit_account_settle_payment_params.rbs → credit_account_settle_params.rbs} +2 -2
  134. data/sig/telnyx/models/x402/{credit_account_settle_payment_response.rbs → credit_account_settle_response.rbs} +22 -22
  135. data/sig/telnyx/models.rbs +12 -4
  136. data/sig/telnyx/resources/ai/assistants/tags.rbs +8 -8
  137. data/sig/telnyx/resources/voice_clones.rbs +11 -8
  138. data/sig/telnyx/resources/voice_designs.rbs +7 -6
  139. data/sig/telnyx/resources/webhooks.rbs +5 -1
  140. data/sig/telnyx/resources/whatsapp/business_accounts/phone_numbers.rbs +2 -2
  141. data/sig/telnyx/resources/whatsapp/phone_numbers/profile.rbs +0 -2
  142. data/sig/telnyx/resources/whatsapp/templates.rbs +28 -0
  143. data/sig/telnyx/resources/whatsapp.rbs +1 -1
  144. data/sig/telnyx/resources/whatsapp_message_templates.rbs +21 -0
  145. data/sig/telnyx/resources/x402/credit_account.rbs +4 -4
  146. metadata +75 -65
  147. data/lib/telnyx/models/whatsapp/message_template_create_params.rb +0 -58
  148. data/lib/telnyx/models/whatsapp/message_template_delete_params.rb +0 -22
  149. data/lib/telnyx/models/whatsapp/message_template_retrieve_params.rb +0 -22
  150. data/lib/telnyx/models/whatsapp/message_template_retrieve_response.rb +0 -18
  151. data/lib/telnyx/models/whatsapp/message_template_update_params.rb +0 -46
  152. data/lib/telnyx/models/whatsapp/message_template_update_response.rb +0 -18
  153. data/lib/telnyx/resources/whatsapp/message_templates.rb +0 -149
  154. data/lib/telnyx/resources/whatsapp/phone_numbers/profile/models.rb +0 -20
  155. data/rbi/telnyx/models/whatsapp/message_template_create_params.rbi +0 -115
  156. data/rbi/telnyx/models/whatsapp/message_template_delete_params.rbi +0 -40
  157. data/rbi/telnyx/models/whatsapp/message_template_retrieve_params.rbi +0 -40
  158. data/rbi/telnyx/models/whatsapp/message_template_retrieve_response.rbi +0 -35
  159. data/rbi/telnyx/models/whatsapp/message_template_update_params.rbi +0 -111
  160. data/rbi/telnyx/models/whatsapp/message_template_update_response.rbi +0 -35
  161. data/rbi/telnyx/resources/whatsapp/message_templates.rbi +0 -116
  162. data/rbi/telnyx/resources/whatsapp/phone_numbers/profile/models.rbi +0 -18
  163. data/sig/telnyx/models/voice_design_update_response.rbs +0 -79
  164. data/sig/telnyx/models/whatsapp/message_template_create_params.rbs +0 -60
  165. data/sig/telnyx/models/whatsapp/message_template_create_response.rbs +0 -20
  166. data/sig/telnyx/models/whatsapp/message_template_delete_params.rbs +0 -22
  167. data/sig/telnyx/models/whatsapp/message_template_retrieve_params.rbs +0 -22
  168. data/sig/telnyx/models/whatsapp/message_template_retrieve_response.rbs +0 -20
  169. data/sig/telnyx/models/whatsapp/message_template_update_params.rbs +0 -58
  170. data/sig/telnyx/resources/whatsapp/message_templates.rbs +0 -42
  171. data/sig/telnyx/resources/whatsapp/phone_numbers/profile/models.rbs +0 -13
@@ -35,15 +35,16 @@ module Telnyx
35
35
 
36
36
  # @!attribute noise_suppression_engine
37
37
  # The engine to use for noise suppression. For backward compatibility, engines A,
38
- # B, and C are also supported, but are deprecated: A - Denoiser B - DeepFilterNet
39
- # C - Krisp
38
+ # B, C, and D are also supported, but are deprecated: A - Denoiser B -
39
+ # DeepFilterNet C - Krisp D - AiCoustics
40
40
  #
41
41
  # @return [Symbol, Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngine, nil]
42
42
  optional :noise_suppression_engine,
43
43
  enum: -> { Telnyx::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngine }
44
44
 
45
45
  # @!attribute noise_suppression_engine_config
46
- # Configuration parameters for noise suppression engines.
46
+ # Configuration parameters for noise suppression engines. Different engines
47
+ # support different parameters.
47
48
  #
48
49
  # @return [Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig, nil]
49
50
  optional :noise_suppression_engine_config,
@@ -63,7 +64,7 @@ module Telnyx
63
64
  #
64
65
  # @param noise_suppression_engine [Symbol, Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngine] The engine to use for noise suppression.
65
66
  #
66
- # @param noise_suppression_engine_config [Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig] Configuration parameters for noise suppression engines.
67
+ # @param noise_suppression_engine_config [Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig] Configuration parameters for noise suppression engines. Different engines suppor
67
68
  #
68
69
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
69
70
 
@@ -80,14 +81,15 @@ module Telnyx
80
81
  end
81
82
 
82
83
  # The engine to use for noise suppression. For backward compatibility, engines A,
83
- # B, and C are also supported, but are deprecated: A - Denoiser B - DeepFilterNet
84
- # C - Krisp
84
+ # B, C, and D are also supported, but are deprecated: A - Denoiser B -
85
+ # DeepFilterNet C - Krisp D - AiCoustics
85
86
  module NoiseSuppressionEngine
86
87
  extend Telnyx::Internal::Type::Enum
87
88
 
88
89
  DENOISER = :Denoiser
89
90
  DEEP_FILTER_NET = :DeepFilterNet
90
91
  KRISP = :Krisp
92
+ AI_COUSTICS = :AiCoustics
91
93
 
92
94
  # @!method self.values
93
95
  # @return [Array<Symbol>]
@@ -101,14 +103,139 @@ module Telnyx
101
103
  # @return [Integer, nil]
102
104
  optional :attenuation_limit, Integer
103
105
 
104
- # @!method initialize(attenuation_limit: nil)
106
+ # @!attribute enhancement_level
107
+ # Enhancement intensity (0.0-1.0). Only applicable for AiCoustics.
108
+ #
109
+ # @return [Float, nil]
110
+ optional :enhancement_level, Float
111
+
112
+ # @!attribute family
113
+ # AiCoustics model family. 'sparrow' optimized for human-to-human calls, 'quail'
114
+ # optimized for Voice AI/STT. Only applicable for AiCoustics.
115
+ #
116
+ # @return [Symbol, Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig::Family, nil]
117
+ optional :family,
118
+ enum: -> { Telnyx::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig::Family }
119
+
120
+ # @!attribute mode
121
+ # Processing mode. Only applicable for DeepFilterNet.
122
+ #
123
+ # @return [Symbol, Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig::Mode, nil]
124
+ optional :mode,
125
+ enum: -> { Telnyx::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig::Mode }
126
+
127
+ # @!attribute model
128
+ # The Krisp model to use. Only applicable for Krisp.
129
+ #
130
+ # @return [Symbol, Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig::Model, nil]
131
+ optional :model,
132
+ enum: -> { Telnyx::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig::Model }
133
+
134
+ # @!attribute size
135
+ # AiCoustics model size. 's' and 'l' work with both families. 'xs' and 'xxs' are
136
+ # sparrow-only. 'vf_l' and 'vf_1_1_l' are quail-only. Only applicable for
137
+ # AiCoustics.
138
+ #
139
+ # @return [Symbol, Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig::Size, nil]
140
+ optional :size,
141
+ enum: -> { Telnyx::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig::Size }
142
+
143
+ # @!attribute suppression_level
144
+ # Suppression level (0.0-100.0). Only applicable for Krisp.
145
+ #
146
+ # @return [Float, nil]
147
+ optional :suppression_level, Float
148
+
149
+ # @!attribute voice_gain
150
+ # Voice gain multiplier (0.1-4.0). Only applicable for AiCoustics.
151
+ #
152
+ # @return [Float, nil]
153
+ optional :voice_gain, Float
154
+
155
+ # @!method initialize(attenuation_limit: nil, enhancement_level: nil, family: nil, mode: nil, model: nil, size: nil, suppression_level: nil, voice_gain: nil)
105
156
  # Some parameter documentations has been truncated, see
106
157
  # {Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig}
107
158
  # for more details.
108
159
  #
109
- # Configuration parameters for noise suppression engines.
160
+ # Configuration parameters for noise suppression engines. Different engines
161
+ # support different parameters.
110
162
  #
111
163
  # @param attenuation_limit [Integer] The attenuation limit for noise suppression (0-100). Only applicable for DeepFil
164
+ #
165
+ # @param enhancement_level [Float] Enhancement intensity (0.0-1.0). Only applicable for AiCoustics.
166
+ #
167
+ # @param family [Symbol, Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig::Family] AiCoustics model family. 'sparrow' optimized for human-to-human calls, 'quail' o
168
+ #
169
+ # @param mode [Symbol, Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig::Mode] Processing mode. Only applicable for DeepFilterNet.
170
+ #
171
+ # @param model [Symbol, Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig::Model] The Krisp model to use. Only applicable for Krisp.
172
+ #
173
+ # @param size [Symbol, Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig::Size] AiCoustics model size. 's' and 'l' work with both families. 'xs' and 'xxs' are s
174
+ #
175
+ # @param suppression_level [Float] Suppression level (0.0-100.0). Only applicable for Krisp.
176
+ #
177
+ # @param voice_gain [Float] Voice gain multiplier (0.1-4.0). Only applicable for AiCoustics.
178
+
179
+ # AiCoustics model family. 'sparrow' optimized for human-to-human calls, 'quail'
180
+ # optimized for Voice AI/STT. Only applicable for AiCoustics.
181
+ #
182
+ # @see Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig#family
183
+ module Family
184
+ extend Telnyx::Internal::Type::Enum
185
+
186
+ SPARROW = :sparrow
187
+ QUAIL = :quail
188
+
189
+ # @!method self.values
190
+ # @return [Array<Symbol>]
191
+ end
192
+
193
+ # Processing mode. Only applicable for DeepFilterNet.
194
+ #
195
+ # @see Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig#mode
196
+ module Mode
197
+ extend Telnyx::Internal::Type::Enum
198
+
199
+ STANDARD = :standard
200
+ ADVANCED = :advanced
201
+
202
+ # @!method self.values
203
+ # @return [Array<Symbol>]
204
+ end
205
+
206
+ # The Krisp model to use. Only applicable for Krisp.
207
+ #
208
+ # @see Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig#model
209
+ module Model
210
+ extend Telnyx::Internal::Type::Enum
211
+
212
+ KRISP_VIVA_TEL_V2_KEF = :"krisp-viva-tel-v2.kef"
213
+ KRISP_VIVA_TEL_LITE_V1_KEF = :"krisp-viva-tel-lite-v1.kef"
214
+ KRISP_VIVA_PRO_V1_KEF = :"krisp-viva-pro-v1.kef"
215
+ KRISP_VIVA_SS_V1_KEF = :"krisp-viva-ss-v1.kef"
216
+
217
+ # @!method self.values
218
+ # @return [Array<Symbol>]
219
+ end
220
+
221
+ # AiCoustics model size. 's' and 'l' work with both families. 'xs' and 'xxs' are
222
+ # sparrow-only. 'vf_l' and 'vf_1_1_l' are quail-only. Only applicable for
223
+ # AiCoustics.
224
+ #
225
+ # @see Telnyx::Models::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngineConfig#size
226
+ module Size
227
+ extend Telnyx::Internal::Type::Enum
228
+
229
+ S = :s
230
+ L = :l
231
+ XS = :xs
232
+ XXS = :xxs
233
+ VF_L = :vf_l
234
+ VF_1_1_L = :vf_1_1_l
235
+
236
+ # @!method self.values
237
+ # @return [Array<Symbol>]
238
+ end
112
239
  end
113
240
  end
114
241
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Telnyx
4
4
  module Models
5
- # @see ::Telnyx::Resources::TextToSpeech#generate
5
+ # @see Telnyx::Resources::TextToSpeech#generate
6
6
  class TextToSpeechGenerateParams < ::Telnyx::Internal::Type::BaseModel
7
7
  extend ::Telnyx::Internal::Type::RequestParameters::Converter
8
8
  include ::Telnyx::Internal::Type::RequestParameters
@@ -188,7 +188,7 @@ module Telnyx
188
188
 
189
189
  # Input text type.
190
190
  #
191
- # @see ::Telnyx::Models::TextToSpeechGenerateParams::Aws#text_type
191
+ # @see Telnyx::Models::TextToSpeechGenerateParams::Aws#text_type
192
192
  module TextType
193
193
  extend ::Telnyx::Internal::Type::Enum
194
194
 
@@ -270,7 +270,7 @@ module Telnyx
270
270
 
271
271
  # Input text type. Use `ssml` for SSML-formatted input.
272
272
  #
273
- # @see ::Telnyx::Models::TextToSpeechGenerateParams::Azure#text_type
273
+ # @see Telnyx::Models::TextToSpeechGenerateParams::Azure#text_type
274
274
  module TextType
275
275
  extend ::Telnyx::Internal::Type::Enum
276
276
 
@@ -19,6 +19,8 @@ module Telnyx
19
19
 
20
20
  variant -> { Telnyx::CallConversationInsightsGeneratedWebhookEvent }
21
21
 
22
+ variant -> { Telnyx::CallCostWebhookEvent }
23
+
22
24
  variant -> { Telnyx::CallDtmfReceivedWebhookEvent }
23
25
 
24
26
  variant -> { Telnyx::CallEnqueuedWebhookEvent }
@@ -126,7 +128,7 @@ module Telnyx
126
128
  variant -> { Telnyx::TranscriptionWebhookEvent }
127
129
 
128
130
  # @!method self.variants
129
- # @return [Array(Telnyx::Models::CallAIGatherEndedWebhookEvent, Telnyx::Models::CallAIGatherMessageHistoryUpdatedWebhookEvent, Telnyx::Models::CallAIGatherPartialResultsWebhookEvent, Telnyx::Models::CallAnsweredWebhookEvent, Telnyx::Models::CallBridgedWebhookEvent, Telnyx::Models::CallConversationEndedWebhookEvent, Telnyx::Models::CallConversationInsightsGeneratedWebhookEvent, Telnyx::Models::CallDtmfReceivedWebhookEvent, Telnyx::Models::CallEnqueuedWebhookEvent, Telnyx::Models::CallForkStartedWebhookEvent, Telnyx::Models::CallForkStoppedWebhookEvent, Telnyx::Models::CallGatherEndedWebhookEvent, Telnyx::Models::CallHangupWebhookEvent, Telnyx::Models::CallInitiatedWebhookEvent, Telnyx::Models::CallLeftQueueWebhookEvent, Telnyx::Models::CallMachineDetectionEndedWebhookEvent, Telnyx::Models::CallMachineGreetingEndedWebhookEvent, Telnyx::Models::CallMachinePremiumDetectionEndedWebhookEvent, Telnyx::Models::CallMachinePremiumGreetingEndedWebhookEvent, Telnyx::Models::CallPlaybackEndedWebhookEvent, Telnyx::Models::CallPlaybackStartedWebhookEvent, Telnyx::Models::CallRecordingErrorWebhookEvent, Telnyx::Models::CallRecordingSavedWebhookEvent, Telnyx::Models::CallRecordingTranscriptionSavedWebhookEvent, Telnyx::Models::CallReferCompletedWebhookEvent, Telnyx::Models::CallReferFailedWebhookEvent, Telnyx::Models::CallReferStartedWebhookEvent, Telnyx::Models::CallSiprecFailedWebhookEvent, Telnyx::Models::CallSiprecStartedWebhookEvent, Telnyx::Models::CallSiprecStoppedWebhookEvent, Telnyx::Models::CallSpeakEndedWebhookEvent, Telnyx::Models::CallSpeakStartedWebhookEvent, Telnyx::Models::CallStreamingFailedWebhookEvent, Telnyx::Models::CallStreamingStartedWebhookEvent, Telnyx::Models::CallStreamingStoppedWebhookEvent, Telnyx::Models::CampaignStatusUpdate, Telnyx::Models::ConferenceCreatedWebhookEvent, Telnyx::Models::ConferenceEndedWebhookEvent, Telnyx::Models::ConferenceFloorChanged, Telnyx::Models::ConferenceParticipantJoinedWebhookEvent, Telnyx::Models::ConferenceParticipantLeftWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackEndedWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackStartedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakEndedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakStartedWebhookEvent, Telnyx::Models::ConferencePlaybackEndedWebhookEvent, Telnyx::Models::ConferencePlaybackStartedWebhookEvent, Telnyx::Models::ConferenceRecordingSavedWebhookEvent, Telnyx::Models::ConferenceSpeakEndedWebhookEvent, Telnyx::Models::ConferenceSpeakStartedWebhookEvent, Telnyx::Models::DeliveryUpdateWebhookEvent, Telnyx::Models::FaxDelivered, Telnyx::Models::FaxFailed, Telnyx::Models::FaxMediaProcessed, Telnyx::Models::FaxQueued, Telnyx::Models::FaxSendingStarted, Telnyx::Models::InboundMessageWebhookEvent, Telnyx::Models::NumberOrderStatusUpdate, Telnyx::Models::ReplacedLinkClickWebhookEvent, Telnyx::Models::TranscriptionWebhookEvent)]
131
+ # @return [Array(Telnyx::Models::CallAIGatherEndedWebhookEvent, Telnyx::Models::CallAIGatherMessageHistoryUpdatedWebhookEvent, Telnyx::Models::CallAIGatherPartialResultsWebhookEvent, Telnyx::Models::CallAnsweredWebhookEvent, Telnyx::Models::CallBridgedWebhookEvent, Telnyx::Models::CallConversationEndedWebhookEvent, Telnyx::Models::CallConversationInsightsGeneratedWebhookEvent, Telnyx::Models::CallCostWebhookEvent, Telnyx::Models::CallDtmfReceivedWebhookEvent, Telnyx::Models::CallEnqueuedWebhookEvent, Telnyx::Models::CallForkStartedWebhookEvent, Telnyx::Models::CallForkStoppedWebhookEvent, Telnyx::Models::CallGatherEndedWebhookEvent, Telnyx::Models::CallHangupWebhookEvent, Telnyx::Models::CallInitiatedWebhookEvent, Telnyx::Models::CallLeftQueueWebhookEvent, Telnyx::Models::CallMachineDetectionEndedWebhookEvent, Telnyx::Models::CallMachineGreetingEndedWebhookEvent, Telnyx::Models::CallMachinePremiumDetectionEndedWebhookEvent, Telnyx::Models::CallMachinePremiumGreetingEndedWebhookEvent, Telnyx::Models::CallPlaybackEndedWebhookEvent, Telnyx::Models::CallPlaybackStartedWebhookEvent, Telnyx::Models::CallRecordingErrorWebhookEvent, Telnyx::Models::CallRecordingSavedWebhookEvent, Telnyx::Models::CallRecordingTranscriptionSavedWebhookEvent, Telnyx::Models::CallReferCompletedWebhookEvent, Telnyx::Models::CallReferFailedWebhookEvent, Telnyx::Models::CallReferStartedWebhookEvent, Telnyx::Models::CallSiprecFailedWebhookEvent, Telnyx::Models::CallSiprecStartedWebhookEvent, Telnyx::Models::CallSiprecStoppedWebhookEvent, Telnyx::Models::CallSpeakEndedWebhookEvent, Telnyx::Models::CallSpeakStartedWebhookEvent, Telnyx::Models::CallStreamingFailedWebhookEvent, Telnyx::Models::CallStreamingStartedWebhookEvent, Telnyx::Models::CallStreamingStoppedWebhookEvent, Telnyx::Models::CampaignStatusUpdate, Telnyx::Models::ConferenceCreatedWebhookEvent, Telnyx::Models::ConferenceEndedWebhookEvent, Telnyx::Models::ConferenceFloorChanged, Telnyx::Models::ConferenceParticipantJoinedWebhookEvent, Telnyx::Models::ConferenceParticipantLeftWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackEndedWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackStartedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakEndedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakStartedWebhookEvent, Telnyx::Models::ConferencePlaybackEndedWebhookEvent, Telnyx::Models::ConferencePlaybackStartedWebhookEvent, Telnyx::Models::ConferenceRecordingSavedWebhookEvent, Telnyx::Models::ConferenceSpeakEndedWebhookEvent, Telnyx::Models::ConferenceSpeakStartedWebhookEvent, Telnyx::Models::DeliveryUpdateWebhookEvent, Telnyx::Models::FaxDelivered, Telnyx::Models::FaxFailed, Telnyx::Models::FaxMediaProcessed, Telnyx::Models::FaxQueued, Telnyx::Models::FaxSendingStarted, Telnyx::Models::InboundMessageWebhookEvent, Telnyx::Models::NumberOrderStatusUpdate, Telnyx::Models::ReplacedLinkClickWebhookEvent, Telnyx::Models::TranscriptionWebhookEvent)]
130
132
  end
131
133
  end
132
134
  end
@@ -19,6 +19,8 @@ module Telnyx
19
19
 
20
20
  variant -> { Telnyx::CallConversationInsightsGeneratedWebhookEvent }
21
21
 
22
+ variant -> { Telnyx::CallCostWebhookEvent }
23
+
22
24
  variant -> { Telnyx::CallDtmfReceivedWebhookEvent }
23
25
 
24
26
  variant -> { Telnyx::CallEnqueuedWebhookEvent }
@@ -126,7 +128,7 @@ module Telnyx
126
128
  variant -> { Telnyx::TranscriptionWebhookEvent }
127
129
 
128
130
  # @!method self.variants
129
- # @return [Array(Telnyx::Models::CallAIGatherEndedWebhookEvent, Telnyx::Models::CallAIGatherMessageHistoryUpdatedWebhookEvent, Telnyx::Models::CallAIGatherPartialResultsWebhookEvent, Telnyx::Models::CallAnsweredWebhookEvent, Telnyx::Models::CallBridgedWebhookEvent, Telnyx::Models::CallConversationEndedWebhookEvent, Telnyx::Models::CallConversationInsightsGeneratedWebhookEvent, Telnyx::Models::CallDtmfReceivedWebhookEvent, Telnyx::Models::CallEnqueuedWebhookEvent, Telnyx::Models::CallForkStartedWebhookEvent, Telnyx::Models::CallForkStoppedWebhookEvent, Telnyx::Models::CallGatherEndedWebhookEvent, Telnyx::Models::CallHangupWebhookEvent, Telnyx::Models::CallInitiatedWebhookEvent, Telnyx::Models::CallLeftQueueWebhookEvent, Telnyx::Models::CallMachineDetectionEndedWebhookEvent, Telnyx::Models::CallMachineGreetingEndedWebhookEvent, Telnyx::Models::CallMachinePremiumDetectionEndedWebhookEvent, Telnyx::Models::CallMachinePremiumGreetingEndedWebhookEvent, Telnyx::Models::CallPlaybackEndedWebhookEvent, Telnyx::Models::CallPlaybackStartedWebhookEvent, Telnyx::Models::CallRecordingErrorWebhookEvent, Telnyx::Models::CallRecordingSavedWebhookEvent, Telnyx::Models::CallRecordingTranscriptionSavedWebhookEvent, Telnyx::Models::CallReferCompletedWebhookEvent, Telnyx::Models::CallReferFailedWebhookEvent, Telnyx::Models::CallReferStartedWebhookEvent, Telnyx::Models::CallSiprecFailedWebhookEvent, Telnyx::Models::CallSiprecStartedWebhookEvent, Telnyx::Models::CallSiprecStoppedWebhookEvent, Telnyx::Models::CallSpeakEndedWebhookEvent, Telnyx::Models::CallSpeakStartedWebhookEvent, Telnyx::Models::CallStreamingFailedWebhookEvent, Telnyx::Models::CallStreamingStartedWebhookEvent, Telnyx::Models::CallStreamingStoppedWebhookEvent, Telnyx::Models::CampaignStatusUpdate, Telnyx::Models::ConferenceCreatedWebhookEvent, Telnyx::Models::ConferenceEndedWebhookEvent, Telnyx::Models::ConferenceFloorChanged, Telnyx::Models::ConferenceParticipantJoinedWebhookEvent, Telnyx::Models::ConferenceParticipantLeftWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackEndedWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackStartedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakEndedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakStartedWebhookEvent, Telnyx::Models::ConferencePlaybackEndedWebhookEvent, Telnyx::Models::ConferencePlaybackStartedWebhookEvent, Telnyx::Models::ConferenceRecordingSavedWebhookEvent, Telnyx::Models::ConferenceSpeakEndedWebhookEvent, Telnyx::Models::ConferenceSpeakStartedWebhookEvent, Telnyx::Models::DeliveryUpdateWebhookEvent, Telnyx::Models::FaxDelivered, Telnyx::Models::FaxFailed, Telnyx::Models::FaxMediaProcessed, Telnyx::Models::FaxQueued, Telnyx::Models::FaxSendingStarted, Telnyx::Models::InboundMessageWebhookEvent, Telnyx::Models::NumberOrderStatusUpdate, Telnyx::Models::ReplacedLinkClickWebhookEvent, Telnyx::Models::TranscriptionWebhookEvent)]
131
+ # @return [Array(Telnyx::Models::CallAIGatherEndedWebhookEvent, Telnyx::Models::CallAIGatherMessageHistoryUpdatedWebhookEvent, Telnyx::Models::CallAIGatherPartialResultsWebhookEvent, Telnyx::Models::CallAnsweredWebhookEvent, Telnyx::Models::CallBridgedWebhookEvent, Telnyx::Models::CallConversationEndedWebhookEvent, Telnyx::Models::CallConversationInsightsGeneratedWebhookEvent, Telnyx::Models::CallCostWebhookEvent, Telnyx::Models::CallDtmfReceivedWebhookEvent, Telnyx::Models::CallEnqueuedWebhookEvent, Telnyx::Models::CallForkStartedWebhookEvent, Telnyx::Models::CallForkStoppedWebhookEvent, Telnyx::Models::CallGatherEndedWebhookEvent, Telnyx::Models::CallHangupWebhookEvent, Telnyx::Models::CallInitiatedWebhookEvent, Telnyx::Models::CallLeftQueueWebhookEvent, Telnyx::Models::CallMachineDetectionEndedWebhookEvent, Telnyx::Models::CallMachineGreetingEndedWebhookEvent, Telnyx::Models::CallMachinePremiumDetectionEndedWebhookEvent, Telnyx::Models::CallMachinePremiumGreetingEndedWebhookEvent, Telnyx::Models::CallPlaybackEndedWebhookEvent, Telnyx::Models::CallPlaybackStartedWebhookEvent, Telnyx::Models::CallRecordingErrorWebhookEvent, Telnyx::Models::CallRecordingSavedWebhookEvent, Telnyx::Models::CallRecordingTranscriptionSavedWebhookEvent, Telnyx::Models::CallReferCompletedWebhookEvent, Telnyx::Models::CallReferFailedWebhookEvent, Telnyx::Models::CallReferStartedWebhookEvent, Telnyx::Models::CallSiprecFailedWebhookEvent, Telnyx::Models::CallSiprecStartedWebhookEvent, Telnyx::Models::CallSiprecStoppedWebhookEvent, Telnyx::Models::CallSpeakEndedWebhookEvent, Telnyx::Models::CallSpeakStartedWebhookEvent, Telnyx::Models::CallStreamingFailedWebhookEvent, Telnyx::Models::CallStreamingStartedWebhookEvent, Telnyx::Models::CallStreamingStoppedWebhookEvent, Telnyx::Models::CampaignStatusUpdate, Telnyx::Models::ConferenceCreatedWebhookEvent, Telnyx::Models::ConferenceEndedWebhookEvent, Telnyx::Models::ConferenceFloorChanged, Telnyx::Models::ConferenceParticipantJoinedWebhookEvent, Telnyx::Models::ConferenceParticipantLeftWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackEndedWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackStartedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakEndedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakStartedWebhookEvent, Telnyx::Models::ConferencePlaybackEndedWebhookEvent, Telnyx::Models::ConferencePlaybackStartedWebhookEvent, Telnyx::Models::ConferenceRecordingSavedWebhookEvent, Telnyx::Models::ConferenceSpeakEndedWebhookEvent, Telnyx::Models::ConferenceSpeakStartedWebhookEvent, Telnyx::Models::DeliveryUpdateWebhookEvent, Telnyx::Models::FaxDelivered, Telnyx::Models::FaxFailed, Telnyx::Models::FaxMediaProcessed, Telnyx::Models::FaxQueued, Telnyx::Models::FaxSendingStarted, Telnyx::Models::InboundMessageWebhookEvent, Telnyx::Models::NumberOrderStatusUpdate, Telnyx::Models::ReplacedLinkClickWebhookEvent, Telnyx::Models::TranscriptionWebhookEvent)]
130
132
  end
131
133
  end
132
134
  end
@@ -2,16 +2,16 @@
2
2
 
3
3
  module Telnyx
4
4
  module Models
5
- # @see Telnyx::Resources::VoiceClones#create_from_design
6
- class VoiceCloneCreateFromDesignParams < Telnyx::Internal::Type::BaseModel
5
+ # @see Telnyx::Resources::VoiceClones#create
6
+ class VoiceCloneCreateParams < Telnyx::Internal::Type::BaseModel
7
7
  extend Telnyx::Internal::Type::RequestParameters::Converter
8
8
  include Telnyx::Internal::Type::RequestParameters
9
9
 
10
10
  # @!attribute gender
11
11
  # Gender of the voice clone.
12
12
  #
13
- # @return [Symbol, Telnyx::Models::VoiceCloneCreateFromDesignParams::Gender]
14
- required :gender, enum: -> { Telnyx::VoiceCloneCreateFromDesignParams::Gender }
13
+ # @return [Symbol, Telnyx::Models::VoiceCloneCreateParams::Gender]
14
+ required :gender, enum: -> { Telnyx::VoiceCloneCreateParams::Gender }
15
15
 
16
16
  # @!attribute language
17
17
  # ISO 639-1 language code for the clone (e.g. `en`, `fr`, `de`).
@@ -31,8 +31,14 @@ module Telnyx
31
31
  # @return [String]
32
32
  required :voice_design_id, String
33
33
 
34
- # @!method initialize(gender:, language:, name:, voice_design_id:, request_options: {})
35
- # @param gender [Symbol, Telnyx::Models::VoiceCloneCreateFromDesignParams::Gender] Gender of the voice clone.
34
+ # @!attribute provider
35
+ # Voice synthesis provider. Case-insensitive. Defaults to `telnyx`.
36
+ #
37
+ # @return [Symbol, Telnyx::Models::VoiceCloneCreateParams::Provider, nil]
38
+ optional :provider, enum: -> { Telnyx::VoiceCloneCreateParams::Provider }
39
+
40
+ # @!method initialize(gender:, language:, name:, voice_design_id:, provider: nil, request_options: {})
41
+ # @param gender [Symbol, Telnyx::Models::VoiceCloneCreateParams::Gender] Gender of the voice clone.
36
42
  #
37
43
  # @param language [String] ISO 639-1 language code for the clone (e.g. `en`, `fr`, `de`).
38
44
  #
@@ -40,6 +46,8 @@ module Telnyx
40
46
  #
41
47
  # @param voice_design_id [String] UUID of the source voice design to clone.
42
48
  #
49
+ # @param provider [Symbol, Telnyx::Models::VoiceCloneCreateParams::Provider] Voice synthesis provider. Case-insensitive. Defaults to `telnyx`.
50
+ #
43
51
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
44
52
 
45
53
  # Gender of the voice clone.
@@ -53,6 +61,19 @@ module Telnyx
53
61
  # @!method self.values
54
62
  # @return [Array<Symbol>]
55
63
  end
64
+
65
+ # Voice synthesis provider. Case-insensitive. Defaults to `telnyx`.
66
+ module Provider
67
+ extend Telnyx::Internal::Type::Enum
68
+
69
+ TELNYX = :telnyx
70
+ TELNYX_2 = :Telnyx
71
+ MINIMAX = :minimax
72
+ MINIMAX_2 = :Minimax
73
+
74
+ # @!method self.values
75
+ # @return [Array<Symbol>]
76
+ end
56
77
  end
57
78
  end
58
79
  end
@@ -10,7 +10,7 @@ module Telnyx
10
10
  # @!attribute audio_file
11
11
  # Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
12
12
  # For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
13
- # size: 2MB.
13
+ # size: 5MB for Telnyx, 20MB for Minimax.
14
14
  #
15
15
  # @return [Pathname, StringIO, IO, String, Telnyx::FilePart]
16
16
  required :audio_file, Telnyx::Internal::Type::FileInput
@@ -40,13 +40,19 @@ module Telnyx
40
40
  # @return [String, nil]
41
41
  optional :label, String
42
42
 
43
+ # @!attribute provider
44
+ # Voice synthesis provider. Case-insensitive. Defaults to `telnyx`.
45
+ #
46
+ # @return [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Provider, nil]
47
+ optional :provider, enum: -> { Telnyx::VoiceCloneCreateFromUploadParams::Provider }
48
+
43
49
  # @!attribute ref_text
44
50
  # Optional transcript of the audio file. Providing this improves clone quality.
45
51
  #
46
52
  # @return [String, nil]
47
53
  optional :ref_text, String
48
54
 
49
- # @!method initialize(audio_file:, language:, name:, gender: nil, label: nil, ref_text: nil, request_options: {})
55
+ # @!method initialize(audio_file:, language:, name:, gender: nil, label: nil, provider: nil, ref_text: nil, request_options: {})
50
56
  # Some parameter documentations has been truncated, see
51
57
  # {Telnyx::Models::VoiceCloneCreateFromUploadParams} for more details.
52
58
  #
@@ -60,6 +66,8 @@ module Telnyx
60
66
  #
61
67
  # @param label [String] Optional custom label describing the voice style. If omitted, falls back to the
62
68
  #
69
+ # @param provider [Symbol, Telnyx::Models::VoiceCloneCreateFromUploadParams::Provider] Voice synthesis provider. Case-insensitive. Defaults to `telnyx`.
70
+ #
63
71
  # @param ref_text [String] Optional transcript of the audio file. Providing this improves clone quality.
64
72
  #
65
73
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
@@ -75,6 +83,19 @@ module Telnyx
75
83
  # @!method self.values
76
84
  # @return [Array<Symbol>]
77
85
  end
86
+
87
+ # Voice synthesis provider. Case-insensitive. Defaults to `telnyx`.
88
+ module Provider
89
+ extend Telnyx::Internal::Type::Enum
90
+
91
+ TELNYX = :telnyx
92
+ TELNYX_2 = :Telnyx
93
+ MINIMAX = :minimax
94
+ MINIMAX_2 = :Minimax
95
+
96
+ # @!method self.values
97
+ # @return [Array<Symbol>]
98
+ end
78
99
  end
79
100
  end
80
101
  end
@@ -0,0 +1,79 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Models
5
+ # @see Telnyx::Resources::VoiceClones#create
6
+ class VoiceCloneCreateParams < Telnyx::Internal::Type::BaseModel
7
+ extend Telnyx::Internal::Type::RequestParameters::Converter
8
+ include Telnyx::Internal::Type::RequestParameters
9
+
10
+ # @!attribute gender
11
+ # Gender of the voice clone.
12
+ #
13
+ # @return [Symbol, Telnyx::Models::VoiceCloneCreateParams::Gender]
14
+ required :gender, enum: -> { Telnyx::VoiceCloneCreateParams::Gender }
15
+
16
+ # @!attribute language
17
+ # ISO 639-1 language code for the clone (e.g. `en`, `fr`, `de`).
18
+ #
19
+ # @return [String]
20
+ required :language, String
21
+
22
+ # @!attribute name
23
+ # Name for the voice clone.
24
+ #
25
+ # @return [String]
26
+ required :name, String
27
+
28
+ # @!attribute voice_design_id
29
+ # UUID of the source voice design to clone.
30
+ #
31
+ # @return [String]
32
+ required :voice_design_id, String
33
+
34
+ # @!attribute provider
35
+ # Voice synthesis provider. Case-insensitive. Defaults to `telnyx`.
36
+ #
37
+ # @return [Symbol, Telnyx::Models::VoiceCloneCreateParams::Provider, nil]
38
+ optional :provider, enum: -> { Telnyx::VoiceCloneCreateParams::Provider }
39
+
40
+ # @!method initialize(gender:, language:, name:, voice_design_id:, provider: nil, request_options: {})
41
+ # @param gender [Symbol, Telnyx::Models::VoiceCloneCreateParams::Gender] Gender of the voice clone.
42
+ #
43
+ # @param language [String] ISO 639-1 language code for the clone (e.g. `en`, `fr`, `de`).
44
+ #
45
+ # @param name [String] Name for the voice clone.
46
+ #
47
+ # @param voice_design_id [String] UUID of the source voice design to clone.
48
+ #
49
+ # @param provider [Symbol, Telnyx::Models::VoiceCloneCreateParams::Provider] Voice synthesis provider. Case-insensitive. Defaults to `telnyx`.
50
+ #
51
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
52
+
53
+ # Gender of the voice clone.
54
+ module Gender
55
+ extend Telnyx::Internal::Type::Enum
56
+
57
+ MALE = :male
58
+ FEMALE = :female
59
+ NEUTRAL = :neutral
60
+
61
+ # @!method self.values
62
+ # @return [Array<Symbol>]
63
+ end
64
+
65
+ # Voice synthesis provider. Case-insensitive. Defaults to `telnyx`.
66
+ module Provider
67
+ extend Telnyx::Internal::Type::Enum
68
+
69
+ TELNYX = :telnyx
70
+ TELNYX_2 = :Telnyx
71
+ MINIMAX = :minimax
72
+ MINIMAX_2 = :Minimax
73
+
74
+ # @!method self.values
75
+ # @return [Array<Symbol>]
76
+ end
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Models
5
+ # @see Telnyx::Resources::VoiceClones#create
6
+ class VoiceCloneCreateResponse < Telnyx::Internal::Type::BaseModel
7
+ # @!attribute data
8
+ # A voice clone object.
9
+ #
10
+ # @return [Telnyx::Models::VoiceCloneData, nil]
11
+ optional :data, -> { Telnyx::VoiceCloneData }
12
+
13
+ # @!method initialize(data: nil)
14
+ # Response envelope for a single voice clone.
15
+ #
16
+ # @param data [Telnyx::Models::VoiceCloneData] A voice clone object.
17
+ end
18
+ end
19
+ end
@@ -41,6 +41,25 @@ module Telnyx
41
41
  # @return [String, nil]
42
42
  optional :name, String
43
43
 
44
+ # @!attribute provider
45
+ # Voice synthesis provider used for this clone.
46
+ #
47
+ # @return [Symbol, Telnyx::Models::VoiceCloneData::Provider, nil]
48
+ optional :provider, enum: -> { Telnyx::VoiceCloneData::Provider }
49
+
50
+ # @!attribute provider_supported_models
51
+ # List of TTS model identifiers supported by this clone's provider.
52
+ #
53
+ # @return [Array<String>, nil]
54
+ optional :provider_supported_models, Telnyx::Internal::Type::ArrayOf[String]
55
+
56
+ # @!attribute provider_voice_id
57
+ # Provider-specific voice identifier used for TTS synthesis. For Telnyx clones
58
+ # this equals the clone ID; for Minimax it is the Minimax-assigned voice ID.
59
+ #
60
+ # @return [String, nil]
61
+ optional :provider_voice_id, String, nil?: true
62
+
44
63
  # @!attribute record_type
45
64
  # Identifies the resource type.
46
65
  #
@@ -65,7 +84,7 @@ module Telnyx
65
84
  # @return [Time, nil]
66
85
  optional :updated_at, Time
67
86
 
68
- # @!method initialize(id: nil, created_at: nil, gender: nil, label: nil, language: nil, name: nil, record_type: nil, source_voice_design_id: nil, source_voice_design_version: nil, updated_at: nil)
87
+ # @!method initialize(id: nil, created_at: nil, gender: nil, label: nil, language: nil, name: nil, provider: nil, provider_supported_models: nil, provider_voice_id: nil, record_type: nil, source_voice_design_id: nil, source_voice_design_version: nil, updated_at: nil)
69
88
  # Some parameter documentations has been truncated, see
70
89
  # {Telnyx::Models::VoiceCloneData} for more details.
71
90
  #
@@ -83,6 +102,12 @@ module Telnyx
83
102
  #
84
103
  # @param name [String] Name of the voice clone.
85
104
  #
105
+ # @param provider [Symbol, Telnyx::Models::VoiceCloneData::Provider] Voice synthesis provider used for this clone.
106
+ #
107
+ # @param provider_supported_models [Array<String>] List of TTS model identifiers supported by this clone's provider.
108
+ #
109
+ # @param provider_voice_id [String, nil] Provider-specific voice identifier used for TTS synthesis. For Telnyx clones thi
110
+ #
86
111
  # @param record_type [Symbol, Telnyx::Models::VoiceCloneData::RecordType] Identifies the resource type.
87
112
  #
88
113
  # @param source_voice_design_id [String, nil] UUID of the source voice design. `null` for upload-based clones.
@@ -105,6 +130,21 @@ module Telnyx
105
130
  # @return [Array<Symbol>]
106
131
  end
107
132
 
133
+ # Voice synthesis provider used for this clone.
134
+ #
135
+ # @see Telnyx::Models::VoiceCloneData#provider
136
+ module Provider
137
+ extend Telnyx::Internal::Type::Enum
138
+
139
+ TELNYX = :telnyx
140
+ TELNYX_2 = :Telnyx
141
+ MINIMAX = :minimax
142
+ MINIMAX_2 = :Minimax
143
+
144
+ # @!method self.values
145
+ # @return [Array<Symbol>]
146
+ end
147
+
108
148
  # Identifies the resource type.
109
149
  #
110
150
  # @see Telnyx::Models::VoiceCloneData#record_type
@@ -13,6 +13,12 @@ module Telnyx
13
13
  # @return [String, nil]
14
14
  optional :filter_name, String
15
15
 
16
+ # @!attribute filter_provider
17
+ # Filter by voice synthesis provider. Case-insensitive.
18
+ #
19
+ # @return [Symbol, Telnyx::Models::VoiceCloneListParams::FilterProvider, nil]
20
+ optional :filter_provider, enum: -> { Telnyx::VoiceCloneListParams::FilterProvider }
21
+
16
22
  # @!attribute page_number
17
23
  # Page number for pagination (1-based).
18
24
  #
@@ -31,9 +37,11 @@ module Telnyx
31
37
  # @return [Symbol, Telnyx::Models::VoiceCloneListParams::Sort, nil]
32
38
  optional :sort, enum: -> { Telnyx::VoiceCloneListParams::Sort }
33
39
 
34
- # @!method initialize(filter_name: nil, page_number: nil, page_size: nil, sort: nil, request_options: {})
40
+ # @!method initialize(filter_name: nil, filter_provider: nil, page_number: nil, page_size: nil, sort: nil, request_options: {})
35
41
  # @param filter_name [String] Case-insensitive substring filter on the name field.
36
42
  #
43
+ # @param filter_provider [Symbol, Telnyx::Models::VoiceCloneListParams::FilterProvider] Filter by voice synthesis provider. Case-insensitive.
44
+ #
37
45
  # @param page_number [Integer] Page number for pagination (1-based).
38
46
  #
39
47
  # @param page_size [Integer] Number of results per page.
@@ -42,6 +50,19 @@ module Telnyx
42
50
  #
43
51
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
44
52
 
53
+ # Filter by voice synthesis provider. Case-insensitive.
54
+ module FilterProvider
55
+ extend Telnyx::Internal::Type::Enum
56
+
57
+ TELNYX = :telnyx
58
+ TELNYX_2 = :Telnyx
59
+ MINIMAX = :minimax
60
+ MINIMAX_2 = :Minimax
61
+
62
+ # @!method self.values
63
+ # @return [Array<Symbol>]
64
+ end
65
+
45
66
  # Sort order. Prefix with `-` for descending. Defaults to `-created_at`.
46
67
  module Sort
47
68
  extend Telnyx::Internal::Type::Enum
@@ -41,6 +41,13 @@ module Telnyx
41
41
  # @return [String, nil]
42
42
  optional :name, String
43
43
 
44
+ # @!attribute provider
45
+ # Voice synthesis provider. `telnyx` uses the Qwen3TTS model; `minimax` uses the
46
+ # Minimax speech models. Case-insensitive. Defaults to `telnyx`.
47
+ #
48
+ # @return [Symbol, Telnyx::Models::VoiceDesignCreateParams::Provider, nil]
49
+ optional :provider, enum: -> { Telnyx::VoiceDesignCreateParams::Provider }
50
+
44
51
  # @!attribute repetition_penalty
45
52
  # Repetition penalty to reduce repeated patterns in generated audio. Default:
46
53
  # 1.05.
@@ -76,7 +83,7 @@ module Telnyx
76
83
  # @return [String, nil]
77
84
  optional :voice_design_id, String
78
85
 
79
- # @!method initialize(prompt:, text:, language: nil, max_new_tokens: nil, name: nil, repetition_penalty: nil, temperature: nil, top_k: nil, top_p: nil, voice_design_id: nil, request_options: {})
86
+ # @!method initialize(prompt:, text:, language: nil, max_new_tokens: nil, name: nil, provider: nil, repetition_penalty: nil, temperature: nil, top_k: nil, top_p: nil, voice_design_id: nil, request_options: {})
80
87
  # Some parameter documentations has been truncated, see
81
88
  # {Telnyx::Models::VoiceDesignCreateParams} for more details.
82
89
  #
@@ -90,6 +97,8 @@ module Telnyx
90
97
  #
91
98
  # @param name [String] Name for the voice design. Required when creating a new design (`voice_design_id
92
99
  #
100
+ # @param provider [Symbol, Telnyx::Models::VoiceDesignCreateParams::Provider] Voice synthesis provider. `telnyx` uses the Qwen3TTS model; `minimax` uses the M
101
+ #
93
102
  # @param repetition_penalty [Float] Repetition penalty to reduce repeated patterns in generated audio. Default: 1.05
94
103
  #
95
104
  # @param temperature [Float] Sampling temperature controlling randomness. Higher values produce more varied o
@@ -101,6 +110,20 @@ module Telnyx
101
110
  # @param voice_design_id [String] ID of an existing voice design to add a new version to. When provided, a new ver
102
111
  #
103
112
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
113
+
114
+ # Voice synthesis provider. `telnyx` uses the Qwen3TTS model; `minimax` uses the
115
+ # Minimax speech models. Case-insensitive. Defaults to `telnyx`.
116
+ module Provider
117
+ extend Telnyx::Internal::Type::Enum
118
+
119
+ TELNYX = :telnyx
120
+ TELNYX_2 = :Telnyx
121
+ MINIMAX = :minimax
122
+ MINIMAX_2 = :Minimax
123
+
124
+ # @!method self.values
125
+ # @return [Array<Symbol>]
126
+ end
104
127
  end
105
128
  end
106
129
  end