vapi_client/models/
twilio_phone_number.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct TwilioPhoneNumber {
16 #[serde(
17 rename = "fallbackDestination",
18 skip_serializing_if = "Option::is_none"
19 )]
20 pub fallback_destination: Option<models::ImportTwilioPhoneNumberDtoFallbackDestination>,
21 #[serde(rename = "hooks", skip_serializing_if = "Option::is_none")]
23 pub hooks: Option<Vec<models::ImportTwilioPhoneNumberDtoHooksInner>>,
24 #[serde(rename = "provider")]
26 pub provider: ProviderTrue,
27 #[serde(rename = "smsEnabled", skip_serializing_if = "Option::is_none")]
29 pub sms_enabled: Option<bool>,
30 #[serde(rename = "id")]
32 pub id: String,
33 #[serde(rename = "orgId")]
35 pub org_id: String,
36 #[serde(rename = "createdAt")]
38 pub created_at: String,
39 #[serde(rename = "updatedAt")]
41 pub updated_at: String,
42 #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
44 pub status: Option<StatusTrue>,
45 #[serde(rename = "twilioAuthToken", skip_serializing_if = "Option::is_none")]
47 pub twilio_auth_token: Option<String>,
48 #[serde(rename = "twilioApiKey", skip_serializing_if = "Option::is_none")]
50 pub twilio_api_key: Option<String>,
51 #[serde(rename = "twilioApiSecret", skip_serializing_if = "Option::is_none")]
53 pub twilio_api_secret: Option<String>,
54 #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
56 pub name: Option<String>,
57 #[serde(rename = "assistantId", skip_serializing_if = "Option::is_none")]
59 pub assistant_id: Option<String>,
60 #[serde(rename = "workflowId", skip_serializing_if = "Option::is_none")]
62 pub workflow_id: Option<String>,
63 #[serde(rename = "squadId", skip_serializing_if = "Option::is_none")]
65 pub squad_id: Option<String>,
66 #[serde(rename = "server", skip_serializing_if = "Option::is_none")]
68 pub server: Option<models::Server>,
69 #[serde(rename = "number")]
71 pub number: String,
72 #[serde(rename = "twilioAccountSid")]
74 pub twilio_account_sid: String,
75}
76
77impl TwilioPhoneNumber {
78 pub fn new(
79 provider: ProviderTrue,
80 id: String,
81 org_id: String,
82 created_at: String,
83 updated_at: String,
84 number: String,
85 twilio_account_sid: String,
86 ) -> TwilioPhoneNumber {
87 TwilioPhoneNumber {
88 fallback_destination: None,
89 hooks: None,
90 provider,
91 sms_enabled: None,
92 id,
93 org_id,
94 created_at,
95 updated_at,
96 status: None,
97 twilio_auth_token: None,
98 twilio_api_key: None,
99 twilio_api_secret: None,
100 name: None,
101 assistant_id: None,
102 workflow_id: None,
103 squad_id: None,
104 server: None,
105 number,
106 twilio_account_sid,
107 }
108 }
109}
110#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
112pub enum ProviderTrue {
113 #[serde(rename = "twilio")]
114 Twilio,
115}
116
117impl Default for ProviderTrue {
118 fn default() -> ProviderTrue {
119 Self::Twilio
120 }
121}
122#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
124pub enum StatusTrue {
125 #[serde(rename = "active")]
126 Active,
127 #[serde(rename = "activating")]
128 Activating,
129 #[serde(rename = "blocked")]
130 Blocked,
131}
132
133impl Default for StatusTrue {
134 fn default() -> StatusTrue {
135 Self::Active
136 }
137}