Struct NowPlaying

Source
pub struct NowPlaying {
    pub user: String,
    pub minutes_ago: usize,
    pub player_id: usize,
    /* private fields */
}
Expand description

Information about currently playing media.

Due to the “now playing” information possibly containing both audio and video, compromises are made. NowPlaying only stores the ID, title, and content type of the media. This is most of the information afforded through the web interface. For more detailed information, song_info() or video_info() gives the full Song or Video struct, though requires another web request.

Fields§

§user: String

The user streaming the current media.

§minutes_ago: usize

How long ago the user sent an update to the server.

§player_id: usize

The ID of the player.

Implementations§

Source§

impl NowPlaying

Source

pub fn song_info(&self, client: &Client) -> Result<Song>

Fetches information about the currently playing song.

§Errors

Aside from the inherent errors from the Client, the method will error if the NowPlaying is not a song.

Source

pub fn video_info(&self, client: &Client) -> Result<Video>

Fetches information about the currently playing video.

§Errors

Aside from the inherent errors from the Client, the method will error if the NowPlaying is not a video.

Source

pub fn is_song(&self) -> bool

Returns true if the currently playing media is a song.

Source

pub fn is_video(&self) -> bool

Returns true if the currently playing media is a video.

Trait Implementations§

Source§

impl Debug for NowPlaying

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for NowPlaying

Source§

fn deserialize<D>(de: D) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Err = <U as TryFrom<T>>::Err

Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Err>

Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> ErasedDestructor for T
where T: 'static,