vapi_client/models/
assembly_ai_transcriber.rs1use serde::{Deserialize, Serialize};
12use utoipa::OpenApi;
13
14
15use crate::models;
16
17#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize, OpenApi)]
18pub struct AssemblyAiTranscriber {
19 #[serde(rename = "provider")]
21 pub provider: Provider,
22 #[serde(rename = "language", skip_serializing_if = "Option::is_none")]
24 pub language: Option<Language>,
25 #[serde(rename = "realtimeUrl", skip_serializing_if = "Option::is_none")]
27 pub realtime_url: Option<String>,
28 #[serde(rename = "wordBoost", skip_serializing_if = "Option::is_none")]
30 pub word_boost: Option<Vec<String>>,
31 #[serde(
33 rename = "endUtteranceSilenceThreshold",
34 skip_serializing_if = "Option::is_none"
35 )]
36 pub end_utterance_silence_threshold: Option<f64>,
37 #[serde(
39 rename = "disablePartialTranscripts",
40 skip_serializing_if = "Option::is_none"
41 )]
42 pub disable_partial_transcripts: Option<bool>,
43}
44
45impl AssemblyAiTranscriber {
46 pub fn new(provider: Provider) -> AssemblyAiTranscriber {
47 AssemblyAiTranscriber {
48 provider,
49 language: None,
50 realtime_url: None,
51 word_boost: None,
52 end_utterance_silence_threshold: None,
53 disable_partial_transcripts: None,
54 }
55 }
56}
57#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, OpenApi)]
59pub enum Provider {
60 #[serde(rename = "assembly-ai")]
61 AssemblyAi,
62}
63
64impl Default for Provider {
65 fn default() -> Provider {
66 Self::AssemblyAi
67 }
68}
69#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, OpenApi)]
71pub enum Language {
72 #[serde(rename = "en")]
73 En,
74}
75
76impl Default for Language {
77 fn default() -> Language {
78 Self::En
79 }
80}