vapi_client/models/
transfer_destination_sip.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct TransferDestinationSip {
16 #[serde(rename = "message", skip_serializing_if = "Option::is_none")]
17 pub message: Option<models::TransferDestinationAssistantMessage>,
18 #[serde(rename = "type")]
19 pub r#type: TypeTrue,
20 #[serde(rename = "sipUri")]
22 pub sip_uri: String,
23 #[serde(rename = "transferPlan", skip_serializing_if = "Option::is_none")]
25 pub transfer_plan: Option<models::TransferPlan>,
26 #[serde(rename = "sipHeaders", skip_serializing_if = "Option::is_none")]
28 pub sip_headers: Option<serde_json::Value>,
29 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
31 pub description: Option<String>,
32}
33
34impl TransferDestinationSip {
35 pub fn new(r#type: TypeTrue, sip_uri: String) -> TransferDestinationSip {
36 TransferDestinationSip {
37 message: None,
38 r#type,
39 sip_uri,
40 transfer_plan: None,
41 sip_headers: None,
42 description: None,
43 }
44 }
45}
46#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
48pub enum TypeTrue {
49 #[serde(rename = "sip")]
50 Sip,
51}
52
53impl Default for TypeTrue {
54 fn default() -> TypeTrue {
55 Self::Sip
56 }
57}