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};
12
13use crate::models;
14
15/// ClientInboundMessageMessage : These are the messages that can be sent from client-side SDKs to control the call.
16/// These are the messages that can be sent from client-side SDKs to control the call.
17#[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/// This is the type of the message. Send \"add-message\" message to add a message to the conversation history.
33#[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/// This is the control action
53#[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}