asterisk_ari/apis/bridges/
params.rs1use crate::apis::bridges::models;
2use crate::apis::params::{IfExists, TerminateOn};
3use derive_new::new;
4use derive_setters::Setters;
5use serde::Serialize;
6
7#[derive(Clone, Default, Debug, PartialEq, Serialize, new, Setters)]
8#[setters(prefix = "with_")]
9#[setters(into, strip_option)]
10pub struct CreateRequest {
11 #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
13 #[setters(rename = "with_type")]
14 #[new(default)]
15 r#type: Option<models::BridgeType>,
16
17 #[serde(rename = "bridgeId", skip_serializing_if = "Option::is_none")]
19 #[new(default)]
20 bridge_id: Option<String>,
21
22 #[serde(rename = "bridgeId", skip_serializing_if = "Option::is_none")]
24 #[new(default)]
25 name: Option<String>,
26}
27
28#[derive(Clone, Default, Debug, PartialEq, Serialize, new, Setters)]
29#[setters(prefix = "with_")]
30#[setters(into, strip_option)]
31pub struct CreateWithIdRequest {
32 #[serde(skip_serializing)]
34 #[setters(skip)]
35 #[new(into)]
36 pub(crate) bridge_id: String,
37
38 #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
40 #[setters(rename = "with_type")]
41 #[new(default)]
42 r#type: Option<models::BridgeType>,
43
44 #[serde(rename = "bridgeId", skip_serializing_if = "Option::is_none")]
46 #[new(default)]
47 name: Option<String>,
48}
49
50#[derive(Clone, Default, Debug, PartialEq, Serialize, new, Setters)]
51#[setters(prefix = "with_")]
52#[setters(into, strip_option)]
53pub struct AddChannelRequest {
54 #[serde(skip_serializing)]
56 #[setters(skip)]
57 #[new(into)]
58 pub(crate) bridge_id: String,
59
60 #[setters(skip)]
62 #[new(into)]
63 pub(crate) channel: String,
64
65 #[serde(rename = "role", skip_serializing_if = "Option::is_none")]
67 #[new(default)]
68 role: Option<String>,
69
70 #[serde(rename = "absorbDTMF", skip_serializing_if = "Option::is_none")]
72 #[new(default)]
73 absorb_dtmf: Option<bool>,
74
75 #[serde(rename = "mute", skip_serializing_if = "Option::is_none")]
77 #[new(default)]
78 mute: Option<bool>,
79
80 #[serde(
82 rename = "inhibitConnectedLineUpdates",
83 skip_serializing_if = "Option::is_none"
84 )]
85 #[new(default)]
86 inhibit_connected_line_updates: Option<bool>,
87}
88
89#[derive(Clone, Debug, Serialize, new, Setters)]
90#[setters(prefix = "with_")]
91#[setters(into, strip_option)]
92pub struct MohRequest {
93 #[serde(skip_serializing)]
95 #[setters(skip)]
96 #[new(into)]
97 pub(crate) bridge_id: String,
98
99 #[serde(rename = "mohClass", skip_serializing_if = "Option::is_none")]
101 #[new(default)]
102 moh_class: Option<String>,
103}
104
105#[derive(Clone, Debug, Serialize, new, Setters)]
106#[setters(prefix = "with_")]
107#[setters(into, strip_option)]
108pub struct PlayRequest {
109 #[serde(skip_serializing)]
111 #[setters(skip)]
112 #[new(into)]
113 pub(crate) bridge_id: String,
114
115 #[setters(skip)]
117 #[new(into)]
118 media: String,
119
120 #[serde(rename = "lang", skip_serializing_if = "Option::is_none")]
122 #[new(default)]
123 lang: Option<String>,
124
125 #[serde(rename = "offsetms", skip_serializing_if = "Option::is_none")]
127 #[new(default)]
128 offset_ms: Option<u32>,
129
130 #[serde(rename = "skipms", skip_serializing_if = "Option::is_none")]
132 #[new(default)]
133 skip_ms: Option<u32>,
134}
135
136#[derive(Clone, Debug, Serialize, new, Setters)]
137#[setters(prefix = "with_")]
138#[setters(into, strip_option)]
139pub struct PlayWithIdRequest {
140 #[serde(skip_serializing)]
142 #[setters(skip)]
143 #[new(into)]
144 pub(crate) bridge_id: String,
145
146 #[serde(skip_serializing)]
148 #[setters(skip)]
149 #[new(into)]
150 pub(crate) playback_id: String,
151
152 #[setters(skip)]
154 #[new(into)]
155 pub(crate) media: String,
156
157 #[serde(rename = "lang", skip_serializing_if = "Option::is_none")]
159 #[new(default)]
160 lang: Option<String>,
161
162 #[serde(rename = "offsetms", skip_serializing_if = "Option::is_none")]
164 #[new(default)]
165 offset_ms: Option<u32>,
166
167 #[serde(rename = "skipms", skip_serializing_if = "Option::is_none")]
169 #[new(default)]
170 skip_ms: Option<u32>,
171}
172
173#[derive(Clone, Debug, Serialize, new, Setters)]
174#[setters(prefix = "with_")]
175#[setters(into, strip_option)]
176pub struct RecordRequest {
177 #[serde(skip_serializing)]
179 #[setters(skip)]
180 #[new(into)]
181 pub(crate) bridge_id: String,
182
183 #[setters(skip)]
185 #[new(into)]
186 pub(crate) name: String,
187
188 #[setters(skip)]
190 #[new(into)]
191 pub(crate) format: String,
192
193 #[serde(rename = "maxDurationSeconds", skip_serializing_if = "Option::is_none")]
195 #[new(default)]
196 max_duration_seconds: Option<u32>,
197
198 #[serde(rename = "maxSilenceSeconds", skip_serializing_if = "Option::is_none")]
200 #[new(default)]
201 max_silence_seconds: Option<u32>,
202
203 #[serde(rename = "ifExists", skip_serializing_if = "Option::is_none")]
205 #[new(default)]
206 if_exists: Option<IfExists>,
207
208 #[serde(rename = "beep", skip_serializing_if = "Option::is_none")]
210 #[new(default)]
211 beep: Option<bool>,
212
213 #[serde(rename = "terminateOn", skip_serializing_if = "Option::is_none")]
215 #[new(default)]
216 terminate_on: Option<TerminateOn>,
217}