rockbox/smart_playlists

Rule-based “smart” playlists that auto-update from listening stats.

Types

pub opaque type CreateInput
pub opaque type UpdateInput

Values

pub fn create(
  client: rockbox.Client,
  input: CreateInput,
) -> Result(types.SmartPlaylist, error.Error)
pub fn delete(
  client: rockbox.Client,
  id: String,
) -> Result(Nil, error.Error)
pub fn get(
  client: rockbox.Client,
  id: String,
) -> Result(option.Option(types.SmartPlaylist), error.Error)
pub fn list(
  client: rockbox.Client,
) -> Result(List(types.SmartPlaylist), error.Error)
pub fn new(name: String, rules: String) -> CreateInput

rules is the JSON-encoded smart-playlist rule set. The format matches the rockboxd schema — see the project README for details.

pub fn play(
  client: rockbox.Client,
  id: String,
) -> Result(Nil, error.Error)
pub fn record_played(
  client: rockbox.Client,
  track_id: String,
) -> Result(Nil, error.Error)
pub fn record_skipped(
  client: rockbox.Client,
  track_id: String,
) -> Result(Nil, error.Error)
pub fn save(
  client: rockbox.Client,
  id: String,
  input: UpdateInput,
) -> Result(Nil, error.Error)
pub fn track_ids(
  client: rockbox.Client,
  id: String,
) -> Result(List(String), error.Error)
pub fn track_stats(
  client: rockbox.Client,
  track_id: String,
) -> Result(option.Option(types.TrackStats), error.Error)
pub fn update(name: String, rules: String) -> UpdateInput
pub fn update_description(
  input: UpdateInput,
  value: String,
) -> UpdateInput
pub fn update_folder(
  input: UpdateInput,
  folder_id: String,
) -> UpdateInput
pub fn update_image(
  input: UpdateInput,
  value: String,
) -> UpdateInput
pub fn with_description(
  input: CreateInput,
  value: String,
) -> CreateInput
pub fn with_folder(
  input: CreateInput,
  folder_id: String,
) -> CreateInput
pub fn with_image(
  input: CreateInput,
  value: String,
) -> CreateInput
Search Document