vapi_client/models/
client_inbound_message_message.rs

1/*
2 * Vapi API
3 *
4 * API for building voice assistants
5 *
6 * The version of the OpenAPI document: 1.0
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use serde::{Deserialize, Serialize};
12use utoipa::ToSchema;
13
14
15use crate::models;
16
17/// ClientInboundMessageMessage : These are the messages that can be sent from client-side SDKs to control the call.
18/// These are the messages that can be sent from client-side SDKs to control the call.
19#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, ToSchema)]
20#[serde(untagged)]
21pub enum ClientInboundMessageMessage {
22    ClientInboundMessageAddMessage(models::ClientInboundMessageAddMessage),
23    ClientInboundMessageControl(models::ClientInboundMessageControl),
24    ClientInboundMessageSay(models::ClientInboundMessageSay),
25    ClientInboundMessageEndCall(models::ClientInboundMessageEndCall),
26    ClientInboundMessageTransfer(models::ClientInboundMessageTransfer),
27}
28
29impl Default for ClientInboundMessageMessage {
30    fn default() -> Self {
31        Self::ClientInboundMessageAddMessage(Default::default())
32    }
33}
34/// This is the type of the message. Send \"add-message\" message to add a message to the conversation history.
35#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, ToSchema)]
36pub enum Type {
37    #[serde(rename = "add-message")]
38    AddMessage,
39    #[serde(rename = "control")]
40    Control,
41    #[serde(rename = "say")]
42    Say,
43    #[serde(rename = "end-call")]
44    EndCall,
45    #[serde(rename = "transfer")]
46    Transfer,
47}
48
49impl Default for Type {
50    fn default() -> Type {
51        Self::AddMessage
52    }
53}
54/// This is the control action
55#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, ToSchema)]
56pub enum Control {
57    #[serde(rename = "mute-assistant")]
58    MuteAssistant,
59    #[serde(rename = "unmute-assistant")]
60    UnmuteAssistant,
61    #[serde(rename = "say-first-message")]
62    SayFirstMessage,
63}
64
65impl Default for Control {
66    fn default() -> Control {
67        Self::MuteAssistant
68    }
69}