use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
#[serde(untagged)]
pub enum ClientInboundMessageMessage {
ClientInboundMessageAddMessage(models::ClientInboundMessageAddMessage),
ClientInboundMessageControl(models::ClientInboundMessageControl),
ClientInboundMessageSay(models::ClientInboundMessageSay),
ClientInboundMessageEndCall(models::ClientInboundMessageEndCall),
ClientInboundMessageTransfer(models::ClientInboundMessageTransfer),
}
impl Default for ClientInboundMessageMessage {
fn default() -> Self {
Self::ClientInboundMessageAddMessage(Default::default())
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum TypeTrue {
#[serde(rename = "add-message")]
AddMessage,
#[serde(rename = "control")]
Control,
#[serde(rename = "say")]
Say,
#[serde(rename = "end-call")]
EndCall,
#[serde(rename = "transfer")]
Transfer,
}
impl Default for TypeTrue {
fn default() -> TypeTrue {
Self::AddMessage
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum ControlTrue {
#[serde(rename = "mute-assistant")]
MuteAssistant,
#[serde(rename = "unmute-assistant")]
UnmuteAssistant,
#[serde(rename = "say-first-message")]
SayFirstMessage,
}
impl Default for ControlTrue {
fn default() -> ControlTrue {
Self::MuteAssistant
}
}