vapi_client/models/
transport.rs1use serde::{Deserialize, Serialize};
12use utoipa::ToSchema;
13
14
15use crate::models;
16
17#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize, ToSchema)]
18pub struct Transport {
19 #[serde(rename = "provider", skip_serializing_if = "Option::is_none")]
21 pub provider: Option<Provider>,
22 #[serde(
24 rename = "assistantVideoEnabled",
25 skip_serializing_if = "Option::is_none"
26 )]
27 pub assistant_video_enabled: Option<bool>,
28}
29
30impl Transport {
31 pub fn new() -> Transport {
32 Transport {
33 provider: None,
34 assistant_video_enabled: None,
35 }
36 }
37}
38#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, ToSchema)]
40pub enum Provider {
41 #[serde(rename = "twilio")]
42 Twilio,
43 #[serde(rename = "vonage")]
44 Vonage,
45 #[serde(rename = "vapi")]
46 Vapi,
47 #[serde(rename = "daily")]
48 Daily,
49}
50
51impl Default for Provider {
52 fn default() -> Provider {
53 Self::Twilio
54 }
55}