Skip to main content

opentalk_roomserver_types_livekit/
state.rs

1// SPDX-FileCopyrightText: OpenTalk GmbH <mail@opentalk.eu>
2//
3// SPDX-License-Identifier: EUPL-1.2
4
5use crate::{Credentials, MicrophoneRestrictionState};
6
7/// Signaling event to pass information about the livekit server around
8#[derive(Clone, Debug, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
9pub struct LiveKitState {
10    /// The current credentials for accessing a room on the livekit instance
11    #[serde(flatten)]
12    pub credentials: Credentials,
13
14    /// The current state of microphone restrictions
15    pub microphone_restriction_state: MicrophoneRestrictionState,
16}
17
18impl opentalk_types_signaling::SignalingModuleFrontendData for LiveKitState {
19    const NAMESPACE: Option<opentalk_types_common::modules::ModuleId> =
20        Some(crate::LIVEKIT_MODULE_ID);
21}