Migrate existing API functionality from general API #1

Closed
opened 2025-03-03 19:33:27 -05:00 by codey · 1 comment
Owner

Databases to migrate include:

Host: boats

  • /usr/local/share/sqlite_dbs/track_file_map.db

Database restructuring will likely occur as part of the larger project scope.

Current database structure:

1 table: tracks

Columns:

  • id (int) NOT NULL
  • artist (text) NOT NULL
  • song (text) NOT NULL
  • album (text) NOT NULL
  • file_path (text) NOT NULL
  • lastplayed (int) NULL (not presently used)
  • duration (int) NOT NULL
  • album_art (blob) NULL
  • genre (text) NULL

API Endpoints to migrate include:

  • radio/np: Provides information on the currently playing track
  • radio/request: Allows for song requests
  • radio/typeahead: Radio track DB typeahead (makes requesting songs easier esp for those with... memory issues), returns near matches
  • radio/get_queue: Returns the current play queue
  • radio/skip: Skip to either the next track in the play queue or a specified UUID
  • radio/queue_shift: (?? is this presently used)
  • radio/reshuffle: Reshuffle the play queue
  • radio/queue_remove: Allows for removal of a specified UUID from the play queue
  • radio/ls._next_: Internal/private method, called by LiquidSoap. Returns the next song to play (file path), also pops the track from the play queue in the process.

API Files to migrate include:

  • ./base.py
  • ./start.sh
  • ./constants.py
  • endpoints/radio.py
  • endpoints/constructors.py
  • utils/radio_util.py
# Databases to migrate include: Host: `boats` - `/usr/local/share/sqlite_dbs/track_file_map.db` Database restructuring will likely occur as part of the larger project scope. Current database structure: 1 table: `tracks` ### Columns: - `id` (int) NOT NULL - `artist` (text) NOT NULL - `song` (text) NOT NULL - `album` (text) NOT NULL - `file_path` (text) NOT NULL - `lastplayed` (int) NULL <small>(not presently used)</small> - `duration` (int) NOT NULL - `album_art` (blob) NULL - `genre` (text) NULL # API Endpoints to migrate include: - `radio/np`: Provides information on the currently playing track - `radio/request`: Allows for song requests - `radio/typeahead`: Radio track DB typeahead (makes requesting songs easier esp for those with... memory issues), returns near matches - `radio/get_queue`: Returns the current play queue - `radio/skip`: Skip to either the next track in the play queue or a specified UUID - `radio/queue_shift`: (?? is this presently used) - `radio/reshuffle`: Reshuffle the play queue - `radio/queue_remove`: Allows for removal of a specified UUID from the play queue - `radio/ls._next_`: Internal/private method, called by LiquidSoap. Returns the next song to play (file path), also pops the track from the play queue in the process. # API Files to migrate include: - `./base.py` - `./start.sh` - `./constants.py` - `endpoints/radio.py` - `endpoints/constructors.py` - `utils/radio_util.py`
codey added the
enhancement
label 2025-03-03 19:33:39 -05:00
codey self-assigned this 2025-03-03 19:33:46 -05:00
codey added the due date 2025-03-12 2025-03-03 19:33:57 -05:00
codey changed time estimate to 6h 2025-03-03 19:34:09 -05:00
codey added a new dependency 2025-03-04 09:53:04 -05:00
codey removed a dependency 2025-03-13 16:04:35 -04:00
Author
Owner

This work is no longer required due to consolidation of hardware resources.

This work is no longer required due to consolidation of hardware resources.
codey closed this issue 2025-03-14 13:54:58 -04:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
2025-03-12
Dependencies

No dependencies set.

Reference: codey/sfm#1
No description provided.