Song requests.
Viewers request YouTube songs by name or link and the bot builds a play queue, with a now-playing card on a dashboard tab or a dedicated overlay.
What it does
Viewers request a song with !sr and the bot resolves it on YouTube and adds it to the queue. Playback happens either in a dashboard tab or on a dedicated overlay you add to your stream, with a now-playing card.
Song requests use the YouTube Data API, so this module asks you to add a YouTube API key. It is encrypted at rest and only used to search and play.
Commands
| Command | Does | Who (default) |
|---|---|---|
!sr <song or link> | Request a song. | Per your request gate |
!song | Show what is playing. | Everyone |
!wrongsong | Remove your last request. | Everyone |
!skip | Skip to the next song. | Mods |
!steal | Save the current song to your playlist. | Mods |
!volume <0-100> | Set the music volume. | Mods |
!pausesong | Pause or resume. | Mods |
!sron / !sroff | Open or close requests. | Mods |
Settings
| Option | What it does |
|---|---|
| Who can request | From everyone up to subscribers. |
| Max song length | Cap how long a single request can be. |
| Per-person limit | How many requests one viewer can hold at once. |
| Block duplicates | Stop the same song being queued twice. |
| Volume & playback | Set the volume, audio-only mode, and where it plays. |
| Fallback playlist | Music that plays when no requests are queued (see below). |
Use in commands
Read state with $(media.current), $(media.next), $(media.queue) and $(media.count).
Fallback playlists
A playlist is the music that plays when the request queue is empty, so there is always something on while you wait for the next !sr. Viewer requests always take priority: the moment someone requests a song it plays next, and the playlist resumes only once the queue runs dry again.
Open Manage Playlists to build as many as you like, up to 25 per channel. For each playlist you can:
- Create a new empty playlist, or Clone an existing one to start from its tracks.
- Rename it, Reorder the list to suit you, and Delete ones you no longer need.
- Set as default: there is always exactly one default playlist. The first one you make is the default, and if you delete the default the next playlist is promoted automatically.
Per-category defaults
You can map a Twitch category (the game or section you are streaming) to a specific playlist, so your idle music matches what you are doing. Category mapping drives idle playback only when Auto-switch while live is on. With it on, going live in a mapped category fills idle playback from that category's playlist; otherwise the default playlist plays. Changing category only affects future fills, so the track that is already playing is never cut off mid-song.
A separate Auto-match playlist on load toggle is about your dashboard view, not playback: when you open Manage Playlists it opens on your live category's mapped playlist if one exists, so you land on the right list straight away. It works independently of auto-switch.
No matter which playlist is filling idle time, a viewer request jumps ahead and plays first. Playlists are only ever the fallback for an empty queue.