vapi_client/models/
client_inbound_message_message.rs1use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
18#[serde(untagged)]
19pub enum ClientInboundMessageMessage {
20 ClientInboundMessageAddMessage(models::ClientInboundMessageAddMessage),
21 ClientInboundMessageControl(models::ClientInboundMessageControl),
22 ClientInboundMessageSay(models::ClientInboundMessageSay),
23 ClientInboundMessageEndCall(models::ClientInboundMessageEndCall),
24 ClientInboundMessageTransfer(models::ClientInboundMessageTransfer),
25}
26
27impl Default for ClientInboundMessageMessage {
28 fn default() -> Self {
29 Self::ClientInboundMessageAddMessage(Default::default())
30 }
31}
32#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
34pub enum Type {
35 #[serde(rename = "add-message")]
36 AddMessage,
37 #[serde(rename = "control")]
38 Control,
39 #[serde(rename = "say")]
40 Say,
41 #[serde(rename = "end-call")]
42 EndCall,
43 #[serde(rename = "transfer")]
44 Transfer,
45}
46
47impl Default for Type {
48 fn default() -> Type {
49 Self::AddMessage
50 }
51}
52#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
54pub enum Control {
55 #[serde(rename = "mute-assistant")]
56 MuteAssistant,
57 #[serde(rename = "unmute-assistant")]
58 UnmuteAssistant,
59 #[serde(rename = "say-first-message")]
60 SayFirstMessage,
61}
62
63impl Default for Control {
64 fn default() -> Control {
65 Self::MuteAssistant
66 }
67}