Documentation menu

Docs/Plugins/Music

Music

Voice-channel music playback with a queue and DJ role.

Requires the MUSIC feature.

Queue-based music playback in voice channels, with high-quality streaming handled by a dedicated audio backend.

plugins:
  music:
    dj_role: 674638268135047186   # optional: who may control playback
    max_queue_length: 200
    default_volume: 100           # 0-200; applied when the player connects

The dashboard's Setup → Music page edits these settings with a role picker, and saving it is what enables the plugin.

With a dj_role set, playback controls (pause, resume, skip, stop, leave, volume) are restricted to that role - moderators always bypass. Without one, normal command levels apply. max_queue_length caps how much can be queued.

The volume command shows the current level with no argument, or sets it from 0 to 200 - 100 is the stream's own level. default_volume is what a fresh player starts at, so a server that finds the stream loud can pin it lower once and forget about it.

Playback activity can be logged to your modlog: MUSIC_PLAY fires when a member queues a track, and MUSIC_CONTROL fires on each playback control (pause, resume, skip, stop, leave, volume). Both are normal modlog events - add or remove them from a log channel's include/exclude lists like any other event, so a server that finds them noisy can turn them off in one edit.

Playback feedback comes as rich cards: a Now Playing card with artwork, requester and up-next preview on every track change, an Added to Queue card with your position and how long until it plays, a live progress bar on nowplaying, and a queue view with total time lined up. Search results show as a picker with titled buttons - only the person who searched can pick.

Who can control playback

You must be in the same voice channel as the bot to use the playback controls - pause, resume, skip, stop, leave, and volume all refuse from outside it, dj_role or not. That check comes first, so a DJ standing in another channel is still turned away.

max_queue_length (default 100) caps how many tracks can be queued at once.

The bot posts exactly one message when it leaves, whether the queue ran dry, someone stopped it, or it was dragged out of the channel.

Commands

Command What it does
/play Play a track from the HQ music library.
/pause Pause the current track.
/resume Resume the paused track.
/skip Skip to the next track.
/stop Stop playback, clear the queue, and leave.
/queue Show the music queue.
/nowplaying Show the current track.
/volume Show or set the playback volume (0-200, default 100).
/leave Disconnect the bot from voice.