DJ mode

With DJ mode off, anyone in the voice channel can use the music commands. That is the default and it suits most servers.

With DJ mode on, every music action is blocked unless a rule allows it. You then hand out actions to roles and to individual members.

Turning it on

Go to the dashboard, Music, then DJ Mode, and flip the switch at the top of the page. That page is also where every permission is configured.

/djmode in Discord shows the current state: on or off, what @everyone is allowed to do, how many roles and members have their own entry, and a button that opens the dashboard page. It is read only, so anyone can run it, and it changes nothing.

Careful. Turning DJ mode on with nothing allowed blocks every music command for everyone. The dashboard and /djmode both warn you when the server is in that state. Allow at least the basics on the @everyone base level.

How a decision is made

Permissions are a list of entries, each one attached to a member, a role, or the @everyone base level. Each entry sets every action to Allow, Deny or Inherit.

For a given action, FlaviBot walks the entries that apply to the member, in priority order:

  1. The member's own entry, if they have one.
  2. Their roles, in the order you arranged them.
  3. The @everyone base level.

The first Deny it meets refuses immediately. The first Allow it meets grants the action. Inherit means "no opinion", so it keeps looking. If it reaches the end with no explicit Allow, the action is denied.

That last rule is the one to remember: DJ mode is deny by default. Silence is not permission.

Roles are dragged into order on the dashboard, and the order is what sets priority. A Deny on a high-priority role beats an Allow further down.

All Permissions

Every entry has an All Permissions switch. Allowing it grants every music action, including ones added later. Denying it blocks everything for that entry, whatever the individual actions say.

The actions

PermissionCovers
Connect Bot/join, and starting playback
Add Songs/play, /play-file, /tts
Remove Songs/remove, /clearqueue
Disconnect/disconnect
Pause/Resume/pause, /resume
Stop/stop
Skip/skip, /previous, /jump
Volume/volume
View Queue/queue
Move Songs/move, /shuffle
Toggle Loop/loop
Toggle Autoplay/autoplay
Seek/seek, /fastforward, /rewind
Filter Effects/filter
Fix Audio/fix

One special case: Connect Bot is treated as allowed when the bot is already connected to a voice channel, so someone who may add songs but not summon the bot can still queue tracks into a running session.

A worked example

A common setup: everyone may queue and vote, only the DJ role may control playback.

  1. On the @everyone base level, allow Connect Bot, Add Songs and View Queue. Leave the rest on Inherit.
  2. Add your DJ role and allow All Permissions on it.

Members get music, the DJ role gets control, and nobody has to be an administrator.

To silence a specific troublemaker without touching roles, add them as a member entry and deny what they abused. Member entries are always checked first, so they win over any role they hold.

How many entries you get

Free servers get 2 permission entries, and the @everyone base level counts as one of them. Premium removes the limit.

Where DJ mode applies

Everywhere: slash commands, prefix commands, the buttons on the now playing message, the controller panel and the web player. The web player greys out what you are not allowed to do instead of failing after the click.

Music actions run by an autoresponder are the one exception. They were configured by someone with Manage Server, and they have no member in a voice channel, so they are not subject to DJ mode.

flav-codeWritten on 8 August 2026