vapi_client/models/
client_message_transfer_update.rs1use serde::{Deserialize, Serialize};
12use utoipa::OpenApi;
13
14
15use crate::models;
16
17#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize, OpenApi)]
18pub struct ClientMessageTransferUpdate {
19 #[serde(rename = "type")]
21 pub r#type: Type,
22 #[serde(rename = "destination", skip_serializing_if = "Option::is_none")]
23 pub destination: Option<models::ClientMessageTransferUpdateDestination>,
24 #[serde(rename = "toAssistant", skip_serializing_if = "Option::is_none")]
26 pub to_assistant: Option<models::CreateAssistantDto>,
27 #[serde(rename = "fromAssistant", skip_serializing_if = "Option::is_none")]
29 pub from_assistant: Option<models::CreateAssistantDto>,
30 #[serde(rename = "toStepRecord", skip_serializing_if = "Option::is_none")]
32 pub to_step_record: Option<serde_json::Value>,
33 #[serde(rename = "fromStepRecord", skip_serializing_if = "Option::is_none")]
35 pub from_step_record: Option<serde_json::Value>,
36}
37
38impl ClientMessageTransferUpdate {
39 pub fn new(r#type: Type) -> ClientMessageTransferUpdate {
40 ClientMessageTransferUpdate {
41 r#type,
42 destination: None,
43 to_assistant: None,
44 from_assistant: None,
45 to_step_record: None,
46 from_step_record: None,
47 }
48 }
49}
50#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, OpenApi)]
52pub enum Type {
53 #[serde(rename = "transfer-update")]
54 TransferUpdate,
55}
56
57impl Default for Type {
58 fn default() -> Type {
59 Self::TransferUpdate
60 }
61}