pub struct Member {
pub id: String,
pub on_join: String,
pub on_leave: String,
pub idle_timeout: Option<Duration>,
pub reconnect_timeout: Option<Duration>,
pub ping_interval: Option<Duration>,
pub pipeline: HashMap<String, Element>,
pub credentials: Option<Credentials>,
}Expand description
Media element representing a client authorized to participate in some bigger
media pipeline (Room, for example).
Fields§
§id: StringID of this Member.
on_join: StringURL of the callback to fire when this Member establishes a persistent
connection with a media server via Client API.
on_leave: StringURL of the callback to fire when this Member finishes a persistent
connection with a media server via Client API.
idle_timeout: Option<Duration>Timeout of receiving heartbeat messages from this Member via Client API.
Once reached, this Member is considered being idle.
reconnect_timeout: Option<Duration>Timeout of reconnecting this Member via Client API.
Once reached, this Member is considered disconnected.
ping_interval: Option<Duration>Interval of pinging with heartbeat messages this Member via Client API
by a media server.
If empty then the default interval of a media server is used, if
configured.
pipeline: HashMap<String, Element>Media pipeline representing this Member.
credentials: Option<Credentials>Credentials to authenticate this Member in Client API with.
Plain and hashed credentials are supported. If no credentials provided, then random plain string will be generated. If no authentication is required then empty plain string can be used.
Hashed variant only supports Argon2 hash at the moment.
Member sid won’t contain a token query parameter if hashed credentials
are used, so it should be appended manually on a client side.
Trait Implementations§
Source§impl Message for Member
impl Message for Member
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.impl StructuralPartialEq for Member
Auto Trait Implementations§
impl Freeze for Member
impl RefUnwindSafe for Member
impl Send for Member
impl Sync for Member
impl Unpin for Member
impl UnwindSafe for Member
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request