vapi_client/models/
azure_speech_transcriber.rs

1/*
2 * Vapi API
3 *
4 * Voice AI for developers.
5 *
6 * The version of the OpenAPI document: 1.0
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct AzureSpeechTranscriber {
16    /// This is the transcription provider that will be used.
17    #[serde(rename = "provider")]
18    pub provider: ProviderTrue,
19    /// This is the language that will be set for the transcription. The list of languages Azure supports can be found here: https://learn.microsoft.com/en-us/azure/ai-services/speech-service/language-support?tabs=stt
20    #[serde(rename = "language", skip_serializing_if = "Option::is_none")]
21    pub language: Option<LanguageTrue>,
22    /// This is the plan for voice provider fallbacks in the event that the primary voice provider fails.
23    #[serde(rename = "fallbackPlan", skip_serializing_if = "Option::is_none")]
24    pub fallback_plan: Option<models::FallbackTranscriberPlan>,
25}
26
27impl AzureSpeechTranscriber {
28    pub fn new(provider: ProviderTrue) -> AzureSpeechTranscriber {
29        AzureSpeechTranscriber {
30            provider,
31            language: None,
32            fallback_plan: None,
33        }
34    }
35}
36/// This is the transcription provider that will be used.
37#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
38pub enum ProviderTrue {
39    #[serde(rename = "azure")]
40    Azure,
41}
42
43impl Default for ProviderTrue {
44    fn default() -> ProviderTrue {
45        Self::Azure
46    }
47}
48/// This is the language that will be set for the transcription. The list of languages Azure supports can be found here: https://learn.microsoft.com/en-us/azure/ai-services/speech-service/language-support?tabs=stt
49#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
50pub enum LanguageTrue {
51    #[serde(rename = "af-ZA")]
52    AfZa,
53    #[serde(rename = "am-ET")]
54    AmEt,
55    #[serde(rename = "ar-AE")]
56    ArAe,
57    #[serde(rename = "ar-BH")]
58    ArBh,
59    #[serde(rename = "ar-DZ")]
60    ArDz,
61    #[serde(rename = "ar-EG")]
62    ArEg,
63    #[serde(rename = "ar-IL")]
64    ArIl,
65    #[serde(rename = "ar-IQ")]
66    ArIq,
67    #[serde(rename = "ar-JO")]
68    ArJo,
69    #[serde(rename = "ar-KW")]
70    ArKw,
71    #[serde(rename = "ar-LB")]
72    ArLb,
73    #[serde(rename = "ar-LY")]
74    ArLy,
75    #[serde(rename = "ar-MA")]
76    ArMa,
77    #[serde(rename = "ar-OM")]
78    ArOm,
79    #[serde(rename = "ar-PS")]
80    ArPs,
81    #[serde(rename = "ar-QA")]
82    ArQa,
83    #[serde(rename = "ar-SA")]
84    ArSa,
85    #[serde(rename = "ar-SY")]
86    ArSy,
87    #[serde(rename = "ar-TN")]
88    ArTn,
89    #[serde(rename = "ar-YE")]
90    ArYe,
91    #[serde(rename = "az-AZ")]
92    AzAz,
93    #[serde(rename = "bg-BG")]
94    BgBg,
95    #[serde(rename = "bn-IN")]
96    BnIn,
97    #[serde(rename = "bs-BA")]
98    BsBa,
99    #[serde(rename = "ca-ES")]
100    CaEs,
101    #[serde(rename = "cs-CZ")]
102    CsCz,
103    #[serde(rename = "cy-GB")]
104    CyGb,
105    #[serde(rename = "da-DK")]
106    DaDk,
107    #[serde(rename = "de-AT")]
108    DeAt,
109    #[serde(rename = "de-CH")]
110    DeCh,
111    #[serde(rename = "de-DE")]
112    DeDe,
113    #[serde(rename = "el-GR")]
114    ElGr,
115    #[serde(rename = "en-AU")]
116    EnAu,
117    #[serde(rename = "en-CA")]
118    EnCa,
119    #[serde(rename = "en-GB")]
120    EnGb,
121    #[serde(rename = "en-GH")]
122    EnGh,
123    #[serde(rename = "en-HK")]
124    EnHk,
125    #[serde(rename = "en-IE")]
126    EnIe,
127    #[serde(rename = "en-IN")]
128    EnIn,
129    #[serde(rename = "en-KE")]
130    EnKe,
131    #[serde(rename = "en-NG")]
132    EnNg,
133    #[serde(rename = "en-NZ")]
134    EnNz,
135    #[serde(rename = "en-PH")]
136    EnPh,
137    #[serde(rename = "en-SG")]
138    EnSg,
139    #[serde(rename = "en-TZ")]
140    EnTz,
141    #[serde(rename = "en-US")]
142    EnUs,
143    #[serde(rename = "en-ZA")]
144    EnZa,
145    #[serde(rename = "es-AR")]
146    EsAr,
147    #[serde(rename = "es-BO")]
148    EsBo,
149    #[serde(rename = "es-CL")]
150    EsCl,
151    #[serde(rename = "es-CO")]
152    EsCo,
153    #[serde(rename = "es-CR")]
154    EsCr,
155    #[serde(rename = "es-CU")]
156    EsCu,
157    #[serde(rename = "es-DO")]
158    EsDo,
159    #[serde(rename = "es-EC")]
160    EsEc,
161    #[serde(rename = "es-ES")]
162    EsEs,
163    #[serde(rename = "es-GQ")]
164    EsGq,
165    #[serde(rename = "es-GT")]
166    EsGt,
167    #[serde(rename = "es-HN")]
168    EsHn,
169    #[serde(rename = "es-MX")]
170    EsMx,
171    #[serde(rename = "es-NI")]
172    EsNi,
173    #[serde(rename = "es-PA")]
174    EsPa,
175    #[serde(rename = "es-PE")]
176    EsPe,
177    #[serde(rename = "es-PR")]
178    EsPr,
179    #[serde(rename = "es-PY")]
180    EsPy,
181    #[serde(rename = "es-SV")]
182    EsSv,
183    #[serde(rename = "es-US")]
184    EsUs,
185    #[serde(rename = "es-UY")]
186    EsUy,
187    #[serde(rename = "es-VE")]
188    EsVe,
189    #[serde(rename = "et-EE")]
190    EtEe,
191    #[serde(rename = "eu-ES")]
192    EuEs,
193    #[serde(rename = "fa-IR")]
194    FaIr,
195    #[serde(rename = "fi-FI")]
196    FiFi,
197    #[serde(rename = "fil-PH")]
198    FilPh,
199    #[serde(rename = "fr-BE")]
200    FrBe,
201    #[serde(rename = "fr-CA")]
202    FrCa,
203    #[serde(rename = "fr-CH")]
204    FrCh,
205    #[serde(rename = "fr-FR")]
206    FrFr,
207    #[serde(rename = "ga-IE")]
208    GaIe,
209    #[serde(rename = "gl-ES")]
210    GlEs,
211    #[serde(rename = "gu-IN")]
212    GuIn,
213    #[serde(rename = "he-IL")]
214    HeIl,
215    #[serde(rename = "hi-IN")]
216    HiIn,
217    #[serde(rename = "hr-HR")]
218    HrHr,
219    #[serde(rename = "hu-HU")]
220    HuHu,
221    #[serde(rename = "hy-AM")]
222    HyAm,
223    #[serde(rename = "id-ID")]
224    IdId,
225    #[serde(rename = "is-IS")]
226    IsIs,
227    #[serde(rename = "it-CH")]
228    ItCh,
229    #[serde(rename = "it-IT")]
230    ItIt,
231    #[serde(rename = "ja-JP")]
232    JaJp,
233    #[serde(rename = "jv-ID")]
234    JvId,
235    #[serde(rename = "ka-GE")]
236    KaGe,
237    #[serde(rename = "kk-KZ")]
238    KkKz,
239    #[serde(rename = "km-KH")]
240    KmKh,
241    #[serde(rename = "kn-IN")]
242    KnIn,
243    #[serde(rename = "ko-KR")]
244    KoKr,
245    #[serde(rename = "lo-LA")]
246    LoLa,
247    #[serde(rename = "lt-LT")]
248    LtLt,
249    #[serde(rename = "lv-LV")]
250    LvLv,
251    #[serde(rename = "mk-MK")]
252    MkMk,
253    #[serde(rename = "ml-IN")]
254    MlIn,
255    #[serde(rename = "mn-MN")]
256    MnMn,
257    #[serde(rename = "mr-IN")]
258    MrIn,
259    #[serde(rename = "ms-MY")]
260    MsMy,
261    #[serde(rename = "mt-MT")]
262    MtMt,
263    #[serde(rename = "my-MM")]
264    MyMm,
265    #[serde(rename = "nb-NO")]
266    NbNo,
267    #[serde(rename = "ne-NP")]
268    NeNp,
269    #[serde(rename = "nl-BE")]
270    NlBe,
271    #[serde(rename = "nl-NL")]
272    NlNl,
273    #[serde(rename = "pa-IN")]
274    PaIn,
275    #[serde(rename = "pl-PL")]
276    PlPl,
277    #[serde(rename = "ps-AF")]
278    PsAf,
279    #[serde(rename = "pt-BR")]
280    PtBr,
281    #[serde(rename = "pt-PT")]
282    PtPt,
283    #[serde(rename = "ro-RO")]
284    RoRo,
285    #[serde(rename = "ru-RU")]
286    RuRu,
287    #[serde(rename = "si-LK")]
288    SiLk,
289    #[serde(rename = "sk-SK")]
290    SkSk,
291    #[serde(rename = "sl-SI")]
292    SlSi,
293    #[serde(rename = "so-SO")]
294    SoSo,
295    #[serde(rename = "sq-AL")]
296    SqAl,
297    #[serde(rename = "sr-RS")]
298    SrRs,
299    #[serde(rename = "sv-SE")]
300    SvSe,
301    #[serde(rename = "sw-KE")]
302    SwKe,
303    #[serde(rename = "sw-TZ")]
304    SwTz,
305    #[serde(rename = "ta-IN")]
306    TaIn,
307    #[serde(rename = "te-IN")]
308    TeIn,
309    #[serde(rename = "th-TH")]
310    ThTh,
311    #[serde(rename = "tr-TR")]
312    TrTr,
313    #[serde(rename = "uk-UA")]
314    UkUa,
315    #[serde(rename = "ur-IN")]
316    UrIn,
317    #[serde(rename = "uz-UZ")]
318    UzUz,
319    #[serde(rename = "vi-VN")]
320    ViVn,
321    #[serde(rename = "wuu-CN")]
322    WuuCn,
323    #[serde(rename = "yue-CN")]
324    YueCn,
325    #[serde(rename = "zh-CN")]
326    ZhCn,
327    #[serde(rename = "zh-CN-shandong")]
328    ZhCnShandong,
329    #[serde(rename = "zh-CN-sichuan")]
330    ZhCnSichuan,
331    #[serde(rename = "zh-HK")]
332    ZhHk,
333    #[serde(rename = "zh-TW")]
334    ZhTw,
335    #[serde(rename = "zu-ZA")]
336    ZuZa,
337}
338
339impl Default for LanguageTrue {
340    fn default() -> LanguageTrue {
341        Self::AfZa
342    }
343}