Discodrome

Subsonic-compatible Discord music bot

Discodrome is a Discord bot that seamlessly streams music from your personal music server directly to your voice channels. It's compatible with any backend supporting version 1.15.0 of the Subsonic API. Older API versions may be compatible but are not guaranteed.

Discodrome is a fork of Submeister by Gimzie.

Recommended Backends

Commands

Slash commands

CommandDescription
/playQueue a track, album, or playlist and start playing.
Defaults to track if no querytype is selected.
/nextPlace a track next in the queue and start playing
/discoPlay an artist's entire discography
/queueView the current queue
/clearClear the current queue
/shuffleShuffle the current queue
/skipSkip the current track
/stopStop playing
/autoplayToggle autoplay
/playlistsList available playlists
/playlistList songs in a playlist

Prefix commands

CommandDescription
pQueue a track and start playing
nPlace a track next in the queue and start playing
sSkip the current track
qView the current queue

Quick Start

1. Create a Discord Application

  1. Go to the Discord Developer Portal
  2. Click New Application and give it a name
  3. Navigate to the Bot tab and click Add Bot
  4. Under TOKEN, click Reset Token and take note of it
  5. Enable these Privileged Gateway Intents: MESSAGE CONTENT, SERVER MEMBERS, PRESENCE
  6. Go to OAuth2 → URL Generator, select scopes bot and applications.commands
  7. Select permissions: Send Messages, Connect, Speak, Use Voice Activity, Read Message History
  8. Copy the generated URL and open it to invite the bot to your server

2. Create a config file

  1. Add the following:
  2. SUBSONIC_SERVER="" // The URL your Subsonic server is accessible at
    SUBSONIC_USER="" // Username for your Subsonic server
    SUBSONIC_PASSWORD="" // Password for your Subsonic server
    DISCORD_BOT_TOKEN="" // Token you took note of in step 1
    DISCORD_TEST_GUILD="" // (*with developer mode enabled*) Right click on your Discord server's icon -> Copy Server ID
    DISCORD_OWNER_ID="" // (*with developer mode enabled*) Left click on your Discord profile pic -> Copy User ID
  3. Save it as data.env

3. Deploy with Docker

docker run -d \
    --name discodrome \
    --restart unless-stopped \
    --env-file data.env \
    7eventy7/discodrome:latest

Configuration

VariableDescriptionRequired
SUBSONIC_SERVERURL of your Subsonic serverYes
SUBSONIC_USERUsername for your Subsonic serverYes
SUBSONIC_PASSWORDPassword for your Subsonic serverYes
DISCORD_BOT_TOKENYour Discord bot tokenYes
DISCORD_TEST_GUILDDiscord server ID for command registrationYes
DISCORD_OWNER_IDYour Discord user IDYes
BOT_STATUSCustom status message for the botNo
BOT_PREFIXText command prefix
Omit to use @mention only
Empty string treats all messages as commands
No
BOT_SEARCH_SUGGESTION_COUNTNumber of choices shown in autocomplete
(default: 5, max: 25)
No

Credits