vapi_client/models/
azure_speech_transcriber.rs

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