1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
/*
* Manager API
*
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
*
* The version of the OpenAPI document: 0.0.0-dev
* Contact: support@babelforce.com
* Generated by: https://openapi-generator.tech
*/
use crate::gen::manager::models;
use serde::{Deserialize, Serialize};
/// Recording : A voice recording of a call — its state, stored audio file, duration and the call and agent it belongs to.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Recording {
/// The unique Identifier (UUID) of the object
#[serde(rename = "id")]
pub id: uuid::Uuid,
/// Duration in Seconds
#[serde(rename = "duration")]
pub duration: i32,
/// Public URL to download the recording's audio file.
#[serde(rename = "url")]
pub url: String,
#[serde(rename = "state", skip_serializing_if = "Option::is_none")]
pub state: Option<models::RecordingState>,
#[serde(rename = "file")]
pub file: Box<models::FileReference>,
#[serde(rename = "call")]
pub call: Box<models::RecordingCall>,
#[serde(rename = "agent", skip_serializing_if = "Option::is_none")]
pub agent: Option<Box<models::RecordingAgent>>,
/// A List of Tags describing an Object
#[serde(rename = "tags")]
pub tags: Vec<String>,
}
impl Recording {
/// A voice recording of a call — its state, stored audio file, duration and the call and agent it belongs to.
pub fn new(
id: uuid::Uuid,
duration: i32,
url: String,
file: models::FileReference,
call: models::RecordingCall,
tags: Vec<String>,
) -> Recording {
Recording {
id,
duration,
url,
state: None,
file: Box::new(file),
call: Box::new(call),
agent: None,
tags,
}
}
}