Skip to content

A simple and leightweight Discord Bot, that integrates with your Jellyfin Media server and enables you to listen to your favourite music directly from discord.

License

Notifications You must be signed in to change notification settings

manuel-rw/jellyfin-discord-music-bot

Repository files navigation

Nest Logo


Jellyfin Discord Bot

A simple Discord bot that enables you to broadcast
your Jellyfin Media Server music collection to voice channels.
It's Open Source and can easily be hosted by yourself!

Thank you KGT1 for starting this project!
This is a fork of their original repository and re-uses some of their code.

badge badge badge




✨ Features

  • Easy usage with the Discord command system (e.g. /play, /pause, ...)
  • Can broadcast audio from playlists, albums and songa directly to your audience in Discord
  • Control the bot via the player controls from Jellyfin itself
  • Playback reporting (aka. scrobbling)
  • Interactive playlist manager and pretty embed messages for user feedback
  • Shuffle mode to randomly play through your playlist
  • Random mode to add random songs from your library to the playlist ...and more!

⚙️ Commands

  • /play <search:string> <next:boolean?> <type:Type?> Play a song, album or playlist from your media server
  • /playlist <page:number?> Shows the current playlist in real time in pagination
  • /random <count:number?> Enque a random mix of songs from your media server
  • /volume <volume:number> Set the volume of the bot
  • /disconnect Disconnect the bot from voice channels
  • /help Show a help message with information regarding the bot
  • /next Skip the current song
  • /pause Pause or unpause playback
  • /previous Go back to the previous song
  • /shuffle Shuffle the current playlist randomly
  • /status Show the current bot status including connection information for Jellyfin
  • /stop Stop playback and clear the queue
  • /summon Summon the bot to your voice channel
  • /bot-status <activity:Activity> <status:Status> <text:string> Set the bot's status

Tip

<search:string> -> Equals to a required parameter.
<next:boolean?> -> Equals to an optional parameter.

🚀 Installation

Please check out the Wiki section in the repository for installation instructions:

https://github.com/manuel-rw/jellyfin-discord-music-bot/wiki

📌 About this project

This project was originally started by KGT1 on GitHub in 2020. I came across this project in late 2021, when I wanted to enjoy my music on Discord. I never got it to run as I wanted it to. Since the original project was created under the MIT license, I decided to make a fork in 2022 with my own version. Although this project re-uses some code of the original project, it has been completely rewritten in other parts using NestJs and features now a module-based approach.

⛔ Limitations

  • Bot does not support shards. This means you cannot use it in multiple servers concurrently.
  • Album covers are not visible unless they are remote (e.g., provided by an external metadata provider)
  • Streaming any video content in voice channels (See this issue)

💻 Development

I'm open to any contributions to this project. Start contributing by:

  • Installing Node.js 24.x or higher
  • Installing pnpm: https://pnpm.io/installation
  • Fork the repository and clone your fork using Git
  • Running pnpm install in the root director
  • Copy the .env.example file to .env and adjust the environment variables
  • Run pnpm start:dev to start the bot in the HMR (Hot Module Replacement) mode (recommended)

After you made the desired changes, run pnpm build to build the project. Make sure that the Docker build keeps working using docker built -t jellyfin-discord-music-bot:latest . and running docker run --name jellyfin-discord-music-bot -d jellyfin-discord-music-bot:latest to run the container with the local image. Afterward, please push the changes to your fork and create a pull request targeting this repository.

👤 Credits

About

A simple and leightweight Discord Bot, that integrates with your Jellyfin Media server and enables you to listen to your favourite music directly from discord.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors 17

Languages