use serde::Deserialize;
#[derive(Clone, Default, Debug, PartialEq, Deserialize)]
pub struct LiveRecording {
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "format")]
pub format: String,
#[serde(rename = "target_uri")]
pub target_uri: String,
#[serde(rename = "state")]
pub state: LiveRecordingState,
#[serde(rename = "duration", skip_serializing_if = "Option::is_none")]
pub duration: Option<u32>,
#[serde(rename = "talking_duration", skip_serializing_if = "Option::is_none")]
pub talking_duration: Option<u32>,
#[serde(rename = "silence_duration", skip_serializing_if = "Option::is_none")]
pub silence_duration: Option<u32>,
#[serde(rename = "cause", skip_serializing_if = "Option::is_none")]
pub cause: Option<String>,
}
#[derive(Clone, Debug, PartialEq, Deserialize, Default)]
pub enum LiveRecordingState {
#[serde(rename = "recording")]
#[default]
Recording,
#[serde(rename = "paused")]
Paused,
#[serde(rename = "done")]
Done,
#[serde(rename = "failed")]
Failed,
}
#[derive(Clone, Default, Debug, PartialEq, Deserialize)]
pub struct StoredRecording {
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "format")]
pub format: String,
}