Minimal subsonic functionality
This commit is contained in:
86
src/routes/subsonic/mod.rs
Normal file
86
src/routes/subsonic/mod.rs
Normal file
@@ -0,0 +1,86 @@
|
||||
mod annotation;
|
||||
mod auth;
|
||||
mod browsing;
|
||||
mod helpers;
|
||||
mod media;
|
||||
mod playlists;
|
||||
mod response;
|
||||
mod search;
|
||||
mod system;
|
||||
mod user;
|
||||
|
||||
use actix_web::web;
|
||||
|
||||
pub fn configure(cfg: &mut web::ServiceConfig) {
|
||||
cfg.service(
|
||||
web::scope("/rest")
|
||||
// System
|
||||
.route("/ping", web::get().to(system::ping))
|
||||
.route("/ping.view", web::get().to(system::ping))
|
||||
.route("/getLicense", web::get().to(system::get_license))
|
||||
.route("/getLicense.view", web::get().to(system::get_license))
|
||||
// Browsing
|
||||
.route(
|
||||
"/getMusicFolders",
|
||||
web::get().to(browsing::get_music_folders),
|
||||
)
|
||||
.route(
|
||||
"/getMusicFolders.view",
|
||||
web::get().to(browsing::get_music_folders),
|
||||
)
|
||||
.route("/getIndexes", web::get().to(browsing::get_indexes))
|
||||
.route("/getIndexes.view", web::get().to(browsing::get_indexes))
|
||||
.route(
|
||||
"/getMusicDirectory",
|
||||
web::get().to(browsing::get_music_directory),
|
||||
)
|
||||
.route(
|
||||
"/getMusicDirectory.view",
|
||||
web::get().to(browsing::get_music_directory),
|
||||
)
|
||||
.route("/getArtists", web::get().to(browsing::get_artists))
|
||||
.route("/getArtists.view", web::get().to(browsing::get_artists))
|
||||
.route("/getArtist", web::get().to(browsing::get_artist))
|
||||
.route("/getArtist.view", web::get().to(browsing::get_artist))
|
||||
.route("/getAlbum", web::get().to(browsing::get_album))
|
||||
.route("/getAlbum.view", web::get().to(browsing::get_album))
|
||||
.route("/getSong", web::get().to(browsing::get_song))
|
||||
.route("/getSong.view", web::get().to(browsing::get_song))
|
||||
.route("/getGenres", web::get().to(browsing::get_genres))
|
||||
.route("/getGenres.view", web::get().to(browsing::get_genres))
|
||||
// Search
|
||||
.route("/search3", web::get().to(search::search3))
|
||||
.route("/search3.view", web::get().to(search::search3))
|
||||
// Media
|
||||
.route("/stream", web::get().to(media::stream))
|
||||
.route("/stream.view", web::get().to(media::stream))
|
||||
.route("/download", web::get().to(media::download))
|
||||
.route("/download.view", web::get().to(media::download))
|
||||
.route("/getCoverArt", web::get().to(media::get_cover_art))
|
||||
.route("/getCoverArt.view", web::get().to(media::get_cover_art))
|
||||
// Playlists
|
||||
.route("/getPlaylists", web::get().to(playlists::get_playlists))
|
||||
.route(
|
||||
"/getPlaylists.view",
|
||||
web::get().to(playlists::get_playlists),
|
||||
)
|
||||
.route("/getPlaylist", web::get().to(playlists::get_playlist))
|
||||
.route("/getPlaylist.view", web::get().to(playlists::get_playlist))
|
||||
.route("/createPlaylist", web::get().to(playlists::create_playlist))
|
||||
.route(
|
||||
"/createPlaylist.view",
|
||||
web::get().to(playlists::create_playlist),
|
||||
)
|
||||
.route("/deletePlaylist", web::get().to(playlists::delete_playlist))
|
||||
.route(
|
||||
"/deletePlaylist.view",
|
||||
web::get().to(playlists::delete_playlist),
|
||||
)
|
||||
// Annotation
|
||||
.route("/scrobble", web::get().to(annotation::scrobble))
|
||||
.route("/scrobble.view", web::get().to(annotation::scrobble))
|
||||
// User
|
||||
.route("/getUser", web::get().to(user::get_user))
|
||||
.route("/getUser.view", web::get().to(user::get_user)),
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user