[−][src]Struct serenity::voice::Manager
A manager is a struct responsible for managing Handler
s which belong to
a single Shard
. This is a fairly complex key-value store,
with a bit of extra utility for easily joining a "target".
The "target" used by the Manager is determined based on the guild_id
and
channel_id
provided. If a guild_id
is not provided to methods that
optionally require it, then the target is a group or 1-on-1 call with a
user. The channel_id
is then used as the target.
If a guild_id
is provided, then the target is the guild, as a user
can not be connected to two channels within one guild simultaneously.
Implementations
impl Manager
[src]
pub fn get<G: Into<GuildId>>(&self, guild_id: G) -> Option<&Handler>
[src]
Retrieves an immutable handler for the given target, if one exists.
pub fn get_mut<G: Into<GuildId>>(&mut self, guild_id: G) -> Option<&mut Handler>
[src]
Retrieves a mutable handler for the given target, if one exists.
pub fn join<C, G>(&mut self, guild_id: G, channel_id: C) -> &mut Handler where
C: Into<ChannelId>,
G: Into<GuildId>,
[src]
C: Into<ChannelId>,
G: Into<GuildId>,
Connects to a target by retrieving its relevant Handler
and
connecting, or creating the handler if required.
This can also switch to the given channel, if a handler already exists for the target and the current connected channel is not equal to the given channel.
In the case of channel targets, the same channel is used to connect to.
In the case of guilds, the provided channel is used to connect to. The channel must be in the provided guild. This is not checked by the library, and will result in an error. If there is already a connected handler for the guild, and the provided channel is different from the channel that the connection is already connected to, then the handler will switch the connection to the provided channel.
If you only need to retrieve the handler for a target, then use
get
.
pub fn leave<G: Into<GuildId>>(&mut self, guild_id: G)
[src]
Retrieves the handler for the given target and leaves the associated voice channel, if connected.
This will not drop the handler, and will preserve it and its settings.
This is a wrapper around getting a handler and calling
leave
on it.
pub fn remove<G: Into<GuildId>>(&mut self, guild_id: G)
[src]
Retrieves the Handler
for the given target and leaves the associated
voice channel, if connected.
The handler is then dropped, removing settings for the target.
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for Manager
impl Send for Manager
impl Sync for Manager
impl Unpin for Manager
impl !UnwindSafe for Manager
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
fn instrument(self, span: Span) -> Instrumented<Self>
[src]
fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T> Instrument for T
[src]
fn instrument(self, span: Span) -> Instrumented<Self>
[src]
fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,
pub fn vzip(self) -> V
impl<T> WithSubscriber for T
[src]
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
[src]
S: Into<Dispatch>,