printnanny_api_client/apis/
janus_api.rs1use reqwest;
13
14use bytes::Bytes;
15use crate::apis::ResponseContent;
16use super::{Error, configuration};
17
18
19#[derive(Debug, Clone, Serialize, Deserialize)]
21#[serde(untagged)]
22pub enum PisWebrtcStreamsCreateError {
23 Status409(crate::models::ErrorDetail),
24 Status400(crate::models::ErrorDetail),
25 Status401(crate::models::ErrorDetail),
26 Status403(crate::models::ErrorDetail),
27 Status500(crate::models::ErrorDetail),
28 UnknownValue(serde_json::Value),
29}
30
31#[derive(Debug, Clone, Serialize, Deserialize)]
33#[serde(untagged)]
34pub enum PisWebrtcStreamsListError {
35 Status400(crate::models::ErrorDetail),
36 Status401(crate::models::ErrorDetail),
37 Status403(crate::models::ErrorDetail),
38 Status500(crate::models::ErrorDetail),
39 UnknownValue(serde_json::Value),
40}
41
42#[derive(Debug, Clone, Serialize, Deserialize)]
44#[serde(untagged)]
45pub enum PisWebrtcStreamsPartialUpdateError {
46 Status409(crate::models::ErrorDetail),
47 Status400(crate::models::ErrorDetail),
48 Status401(crate::models::ErrorDetail),
49 Status403(crate::models::ErrorDetail),
50 Status500(crate::models::ErrorDetail),
51 UnknownValue(serde_json::Value),
52}
53
54#[derive(Debug, Clone, Serialize, Deserialize)]
56#[serde(untagged)]
57pub enum PisWebrtcStreamsRetrieveError {
58 Status404(crate::models::ErrorDetail),
59 Status400(crate::models::ErrorDetail),
60 Status401(crate::models::ErrorDetail),
61 Status403(crate::models::ErrorDetail),
62 Status500(crate::models::ErrorDetail),
63 UnknownValue(serde_json::Value),
64}
65
66#[derive(Debug, Clone, Serialize, Deserialize)]
68#[serde(untagged)]
69pub enum PisWebrtcStreamsUpdateError {
70 Status409(crate::models::ErrorDetail),
71 Status400(crate::models::ErrorDetail),
72 Status401(crate::models::ErrorDetail),
73 Status403(crate::models::ErrorDetail),
74 Status500(crate::models::ErrorDetail),
75 UnknownValue(serde_json::Value),
76}
77
78
79pub async fn pis_webrtc_streams_create(configuration: &configuration::Configuration, pi_id: i32, webrtc_stream_request: Option<crate::models::WebrtcStreamRequest>) -> Result<crate::models::WebrtcStream, Error<PisWebrtcStreamsCreateError>> {
80 let local_var_configuration = configuration;
81
82 let local_var_client = &local_var_configuration.client;
83
84 let local_var_uri_str = format!("{}/api/pis/{pi_id}/webrtc-streams/", local_var_configuration.base_path, pi_id=pi_id);
85 let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
86
87 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
88 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
89 }
90 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
91 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
92 };
93 local_var_req_builder = local_var_req_builder.json(&webrtc_stream_request);
94
95 let local_var_req = local_var_req_builder.build()?;
96 let local_var_resp = local_var_client.execute(local_var_req).await?;
97
98 let local_var_status = local_var_resp.status();
99 let local_var_content = local_var_resp.text().await?;
100
101 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
102 serde_json::from_str(&local_var_content).map_err(Error::from)
103 } else {
104 let local_var_entity: Option<PisWebrtcStreamsCreateError> = serde_json::from_str(&local_var_content).ok();
105 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
106 Err(Error::ResponseError(local_var_error))
107 }
108}
109
110pub async fn pis_webrtc_streams_list(configuration: &configuration::Configuration, pi_id: i32, page: Option<i32>) -> Result<crate::models::PaginatedWebrtcStreamList, Error<PisWebrtcStreamsListError>> {
111 let local_var_configuration = configuration;
112
113 let local_var_client = &local_var_configuration.client;
114
115 let local_var_uri_str = format!("{}/api/pis/{pi_id}/webrtc-streams/", local_var_configuration.base_path, pi_id=pi_id);
116 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
117
118 if let Some(ref local_var_str) = page {
119 local_var_req_builder = local_var_req_builder.query(&[("page", &local_var_str.to_string())]);
120 }
121 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
122 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
123 }
124 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
125 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
126 };
127
128 let local_var_req = local_var_req_builder.build()?;
129 let local_var_resp = local_var_client.execute(local_var_req).await?;
130
131 let local_var_status = local_var_resp.status();
132 let local_var_content = local_var_resp.text().await?;
133
134 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
135 serde_json::from_str(&local_var_content).map_err(Error::from)
136 } else {
137 let local_var_entity: Option<PisWebrtcStreamsListError> = serde_json::from_str(&local_var_content).ok();
138 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
139 Err(Error::ResponseError(local_var_error))
140 }
141}
142
143pub async fn pis_webrtc_streams_partial_update(configuration: &configuration::Configuration, id: i32, pi_id: i32, patched_webrtc_stream_request: Option<crate::models::PatchedWebrtcStreamRequest>) -> Result<crate::models::WebrtcStream, Error<PisWebrtcStreamsPartialUpdateError>> {
144 let local_var_configuration = configuration;
145
146 let local_var_client = &local_var_configuration.client;
147
148 let local_var_uri_str = format!("{}/api/pis/{pi_id}/webrtc-streams/{id}/", local_var_configuration.base_path, id=id, pi_id=pi_id);
149 let mut local_var_req_builder = local_var_client.request(reqwest::Method::PATCH, local_var_uri_str.as_str());
150
151 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
152 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
153 }
154 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
155 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
156 };
157 local_var_req_builder = local_var_req_builder.json(&patched_webrtc_stream_request);
158
159 let local_var_req = local_var_req_builder.build()?;
160 let local_var_resp = local_var_client.execute(local_var_req).await?;
161
162 let local_var_status = local_var_resp.status();
163 let local_var_content = local_var_resp.text().await?;
164
165 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
166 serde_json::from_str(&local_var_content).map_err(Error::from)
167 } else {
168 let local_var_entity: Option<PisWebrtcStreamsPartialUpdateError> = serde_json::from_str(&local_var_content).ok();
169 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
170 Err(Error::ResponseError(local_var_error))
171 }
172}
173
174pub async fn pis_webrtc_streams_retrieve(configuration: &configuration::Configuration, id: i32, pi_id: i32) -> Result<crate::models::WebrtcStream, Error<PisWebrtcStreamsRetrieveError>> {
175 let local_var_configuration = configuration;
176
177 let local_var_client = &local_var_configuration.client;
178
179 let local_var_uri_str = format!("{}/api/pis/{pi_id}/webrtc-streams/{id}/", local_var_configuration.base_path, id=id, pi_id=pi_id);
180 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
181
182 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
183 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
184 }
185 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
186 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
187 };
188
189 let local_var_req = local_var_req_builder.build()?;
190 let local_var_resp = local_var_client.execute(local_var_req).await?;
191
192 let local_var_status = local_var_resp.status();
193 let local_var_content = local_var_resp.text().await?;
194
195 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
196 serde_json::from_str(&local_var_content).map_err(Error::from)
197 } else {
198 let local_var_entity: Option<PisWebrtcStreamsRetrieveError> = serde_json::from_str(&local_var_content).ok();
199 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
200 Err(Error::ResponseError(local_var_error))
201 }
202}
203
204pub async fn pis_webrtc_streams_update(configuration: &configuration::Configuration, id: i32, pi_id: i32, webrtc_stream_request: Option<crate::models::WebrtcStreamRequest>) -> Result<crate::models::WebrtcStream, Error<PisWebrtcStreamsUpdateError>> {
205 let local_var_configuration = configuration;
206
207 let local_var_client = &local_var_configuration.client;
208
209 let local_var_uri_str = format!("{}/api/pis/{pi_id}/webrtc-streams/{id}/", local_var_configuration.base_path, id=id, pi_id=pi_id);
210 let mut local_var_req_builder = local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
211
212 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
213 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
214 }
215 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
216 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
217 };
218 local_var_req_builder = local_var_req_builder.json(&webrtc_stream_request);
219
220 let local_var_req = local_var_req_builder.build()?;
221 let local_var_resp = local_var_client.execute(local_var_req).await?;
222
223 let local_var_status = local_var_resp.status();
224 let local_var_content = local_var_resp.text().await?;
225
226 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
227 serde_json::from_str(&local_var_content).map_err(Error::from)
228 } else {
229 let local_var_entity: Option<PisWebrtcStreamsUpdateError> = serde_json::from_str(&local_var_content).ok();
230 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
231 Err(Error::ResponseError(local_var_error))
232 }
233}
234