Skip to main content

MusicPlayer

Trait MusicPlayer 

Source
pub trait MusicPlayer:
    Send
    + Sync
    + 'static {
Show 87 methods // Required methods fn register_listener<'async_trait>( self: Arc<Self>, request: Request<RegisterListenerRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn ping<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<PingResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn daemon_shutdown<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_rescan<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_rescan_in_progress<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<InProgressResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_analyze<'async_trait>( self: Arc<Self>, request: Request<LibraryAnalyzeRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_analyze_in_progress<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<InProgressResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_recluster<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_recluster_in_progress<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<InProgressResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_brief<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<LibraryBriefResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_full<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<LibraryFullResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_health<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<LibraryHealthResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_artists<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<ArtistBriefList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_albums<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<AlbumBriefList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_songs<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_playlists<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<PlaylistList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_collections<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<CollectionList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_dynamic_playlists<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<DynamicPlaylistList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_song_get<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongOption>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_song_get_by_path<'async_trait>( self: Arc<Self>, request: Request<Path>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongOption>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_song_get_artists<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<ArtistBriefList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_song_get_album<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<AlbumBriefOption>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_song_get_playlists<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<PlaylistList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_song_get_collections<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<CollectionList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_album_get<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<AlbumOption>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_album_get_artists<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<ArtistBriefList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_album_get_songs<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_artist_get<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<ArtistOption>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_artist_get_songs<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_artist_get_albums<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<AlbumBriefList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_playlist_get<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<PlaylistOption>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_playlist_get_by_name<'async_trait>( self: Arc<Self>, request: Request<PlaylistName>, ) -> Pin<Box<dyn Future<Output = Result<Response<PlaylistOption>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_playlist_get_songs<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_collection_get<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<CollectionOption>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_collection_get_songs<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_dynamic_playlist_get<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<DynamicPlaylistOption>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn library_dynamic_playlist_get_songs<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn state_audio<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<StateAudioResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn current_artists<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<ArtistBriefListOption>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn current_album<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<AlbumBriefOption>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn current_song<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefOption>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn rand_artist<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<ArtistBriefOption>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn rand_album<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<AlbumBriefOption>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn rand_song<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefOption>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn search<'async_trait>( self: Arc<Self>, request: Request<SearchRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<SearchResult>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn search_artist<'async_trait>( self: Arc<Self>, request: Request<SearchRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<ArtistBriefList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn search_album<'async_trait>( self: Arc<Self>, request: Request<SearchRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<AlbumBriefList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn search_song<'async_trait>( self: Arc<Self>, request: Request<SearchRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_toggle<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_play<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_pause<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_stop<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_restart<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_skip_forward<'async_trait>( self: Arc<Self>, request: Request<PlaybackSkipRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_skip_backward<'async_trait>( self: Arc<Self>, request: Request<PlaybackSkipRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_clear_player<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_clear<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_seek<'async_trait>( self: Arc<Self>, request: Request<PlaybackSeekRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_repeat<'async_trait>( self: Arc<Self>, request: Request<PlaybackRepeatRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_shuffle<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_volume<'async_trait>( self: Arc<Self>, request: Request<PlaybackVolumeSetRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_volume_up<'async_trait>( self: Arc<Self>, request: Request<PlaybackVolumeAdjustRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_volume_down<'async_trait>( self: Arc<Self>, request: Request<PlaybackVolumeAdjustRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_toggle_mute<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_mute<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playback_unmute<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn queue_add<'async_trait>( self: Arc<Self>, request: Request<RecordId>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn queue_add_list<'async_trait>( self: Arc<Self>, request: Request<RecordIdList>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn queue_set_index<'async_trait>( self: Arc<Self>, request: Request<QueueSetIndexRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn queue_remove_range<'async_trait>( self: Arc<Self>, request: Request<QueueRemoveRangeRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playlist_get_or_create<'async_trait>( self: Arc<Self>, request: Request<PlaylistName>, ) -> Pin<Box<dyn Future<Output = Result<Response<RecordId>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playlist_remove<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playlist_clone<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<RecordId>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playlist_remove_songs<'async_trait>( self: Arc<Self>, request: Request<PlaylistRemoveSongsRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playlist_add<'async_trait>( self: Arc<Self>, request: Request<PlaylistAddRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playlist_add_list<'async_trait>( self: Arc<Self>, request: Request<PlaylistAddListRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playlist_rename<'async_trait>( self: Arc<Self>, request: Request<PlaylistRenameRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<PlaylistBrief>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playlist_export<'async_trait>( self: Arc<Self>, request: Request<PlaylistExportRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn playlist_import<'async_trait>( self: Arc<Self>, request: Request<PlaylistImportRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<RecordId>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn collection_freeze<'async_trait>( self: Arc<Self>, request: Request<CollectionFreezeRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<RecordId>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn radio_get_similar<'async_trait>( self: Arc<Self>, request: Request<RadioSimilarRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn radio_get_similar_ids<'async_trait>( self: Arc<Self>, request: Request<RadioSimilarRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<RecordIdList>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn dynamic_playlist_create<'async_trait>( self: Arc<Self>, request: Request<DynamicPlaylistCreateRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<RecordId>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn dynamic_playlist_update<'async_trait>( self: Arc<Self>, request: Request<DynamicPlaylistUpdateRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<DynamicPlaylist>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn dynamic_playlist_remove<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn dynamic_playlist_export<'async_trait>( self: Arc<Self>, request: Request<Path>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>> where Self: 'async_trait; fn dynamic_playlist_import<'async_trait>( self: Arc<Self>, request: Request<Path>, ) -> Pin<Box<dyn Future<Output = Result<Response<DynamicPlaylistList>, Status>> + Send + 'async_trait>> where Self: 'async_trait;
}
Expand description

Generated trait containing gRPC methods that should be implemented for use with MusicPlayerServer.

Required Methodsยง

Source

fn register_listener<'async_trait>( self: Arc<Self>, request: Request<RegisterListenerRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Miscellaneous

Source

fn ping<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<PingResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn daemon_shutdown<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_rescan<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Library maintenance

Source

fn library_rescan_in_progress<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<InProgressResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_analyze<'async_trait>( self: Arc<Self>, request: Request<LibraryAnalyzeRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_analyze_in_progress<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<InProgressResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_recluster<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_recluster_in_progress<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<InProgressResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_brief<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<LibraryBriefResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Library inspection

Source

fn library_full<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<LibraryFullResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_health<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<LibraryHealthResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_artists<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<ArtistBriefList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_albums<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<AlbumBriefList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_songs<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_playlists<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<PlaylistList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_collections<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<CollectionList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_dynamic_playlists<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<DynamicPlaylistList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_song_get<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongOption>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Library lookup helpers

Source

fn library_song_get_by_path<'async_trait>( self: Arc<Self>, request: Request<Path>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongOption>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_song_get_artists<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<ArtistBriefList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_song_get_album<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<AlbumBriefOption>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_song_get_playlists<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<PlaylistList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_song_get_collections<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<CollectionList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_album_get<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<AlbumOption>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_album_get_artists<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<ArtistBriefList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_album_get_songs<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_artist_get<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<ArtistOption>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_artist_get_songs<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_artist_get_albums<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<AlbumBriefList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_playlist_get<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<PlaylistOption>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_playlist_get_by_name<'async_trait>( self: Arc<Self>, request: Request<PlaylistName>, ) -> Pin<Box<dyn Future<Output = Result<Response<PlaylistOption>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_playlist_get_songs<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_collection_get<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<CollectionOption>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_collection_get_songs<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_dynamic_playlist_get<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<DynamicPlaylistOption>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn library_dynamic_playlist_get_songs<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn state_audio<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<StateAudioResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

State inspection

Source

fn current_artists<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<ArtistBriefListOption>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn current_album<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<AlbumBriefOption>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn current_song<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefOption>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn rand_artist<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<ArtistBriefOption>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Random sampling

Source

fn rand_album<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<AlbumBriefOption>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn rand_song<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefOption>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn search<'async_trait>( self: Arc<Self>, request: Request<SearchRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<SearchResult>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Search

Source

fn search_artist<'async_trait>( self: Arc<Self>, request: Request<SearchRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<ArtistBriefList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn search_album<'async_trait>( self: Arc<Self>, request: Request<SearchRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<AlbumBriefList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn search_song<'async_trait>( self: Arc<Self>, request: Request<SearchRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_toggle<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Playback control

Source

fn playback_play<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_pause<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_stop<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_restart<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_skip_forward<'async_trait>( self: Arc<Self>, request: Request<PlaybackSkipRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_skip_backward<'async_trait>( self: Arc<Self>, request: Request<PlaybackSkipRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_clear_player<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_clear<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_seek<'async_trait>( self: Arc<Self>, request: Request<PlaybackSeekRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_repeat<'async_trait>( self: Arc<Self>, request: Request<PlaybackRepeatRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_shuffle<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_volume<'async_trait>( self: Arc<Self>, request: Request<PlaybackVolumeSetRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_volume_up<'async_trait>( self: Arc<Self>, request: Request<PlaybackVolumeAdjustRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_volume_down<'async_trait>( self: Arc<Self>, request: Request<PlaybackVolumeAdjustRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_toggle_mute<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_mute<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playback_unmute<'async_trait>( self: Arc<Self>, request: Request<()>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn queue_add<'async_trait>( self: Arc<Self>, request: Request<RecordId>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Queue management

Source

fn queue_add_list<'async_trait>( self: Arc<Self>, request: Request<RecordIdList>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn queue_set_index<'async_trait>( self: Arc<Self>, request: Request<QueueSetIndexRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn queue_remove_range<'async_trait>( self: Arc<Self>, request: Request<QueueRemoveRangeRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playlist_get_or_create<'async_trait>( self: Arc<Self>, request: Request<PlaylistName>, ) -> Pin<Box<dyn Future<Output = Result<Response<RecordId>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Playlist management

Source

fn playlist_remove<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playlist_clone<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<RecordId>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playlist_remove_songs<'async_trait>( self: Arc<Self>, request: Request<PlaylistRemoveSongsRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playlist_add<'async_trait>( self: Arc<Self>, request: Request<PlaylistAddRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playlist_add_list<'async_trait>( self: Arc<Self>, request: Request<PlaylistAddListRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playlist_rename<'async_trait>( self: Arc<Self>, request: Request<PlaylistRenameRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<PlaylistBrief>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playlist_export<'async_trait>( self: Arc<Self>, request: Request<PlaylistExportRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn playlist_import<'async_trait>( self: Arc<Self>, request: Request<PlaylistImportRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<RecordId>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn collection_freeze<'async_trait>( self: Arc<Self>, request: Request<CollectionFreezeRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<RecordId>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Collections

Source

fn radio_get_similar<'async_trait>( self: Arc<Self>, request: Request<RadioSimilarRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<SongBriefList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Radio

Source

fn radio_get_similar_ids<'async_trait>( self: Arc<Self>, request: Request<RadioSimilarRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<RecordIdList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn dynamic_playlist_create<'async_trait>( self: Arc<Self>, request: Request<DynamicPlaylistCreateRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<RecordId>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Dynamic playlists

Source

fn dynamic_playlist_update<'async_trait>( self: Arc<Self>, request: Request<DynamicPlaylistUpdateRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<DynamicPlaylist>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn dynamic_playlist_remove<'async_trait>( self: Arc<Self>, request: Request<Ulid>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn dynamic_playlist_export<'async_trait>( self: Arc<Self>, request: Request<Path>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Source

fn dynamic_playlist_import<'async_trait>( self: Arc<Self>, request: Request<Path>, ) -> Pin<Box<dyn Future<Output = Result<Response<DynamicPlaylistList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,

Implementorsยง