refactor: ♻️ error handling for permission and window

This commit is contained in:
Ahmet Kaan Gümüş 2025-05-06 04:58:03 +03:00
parent 97ff087111
commit 604806670e
3 changed files with 8 additions and 3 deletions

View file

@ -13,7 +13,7 @@ use crate::webrtc::WebRTC;
pub async fn get_audio_stream() -> Result<MediaStream, Error> {
let media_devices = window()
.ok_or(Error::MediaStream("Accessing Window".to_owned()))?
.ok_or(Error::Window)?
.navigator()
.media_devices()
.map_err(|err_val| Error::MediaStream(format!("{:?}", err_val)))?;
@ -31,7 +31,7 @@ pub async fn get_audio_stream() -> Result<MediaStream, Error> {
.map_err(|err_val| Error::MediaStream(format!("{:?}", err_val)))?;
let media_stream = JsFuture::from(media_stream_promise)
.await
.map_err(|err_val| Error::MediaStream(format!("{:?}", err_val)))?;
.map_err(|err_val| Error::Permission(format!("{:?}", err_val)))?;
let media_stream = media_stream.unchecked_ref::<MediaStream>();
let audio_stream_tracks = media_stream.get_audio_tracks();