Go to file
2021-01-18 07:03:05 +01:00
img update REAMDE 2020-10-05 23:39:59 +02:00
patches faster Report Limits 2020-09-21 09:56:46 +02:00
src fix false return 2021-01-18 07:03:05 +01:00
.dockerignore extend dockerignore 2020-10-05 23:48:15 +02:00
.eslintrc.json fix lint 2020-09-23 17:06:20 +02:00
.gitignore added config to gitignore 2020-09-08 13:25:47 +02:00
config.json implement basic debug logging 2021-01-18 06:49:32 +01:00
Dockerfile only install production in docker 2020-09-21 05:39:22 +02:00
LICENSE.md Update messages sent to users 2020-09-22 15:37:45 +03:00
package.json implement basic debug logging 2021-01-18 06:49:32 +01:00
parseENV.js implement basic debug logging 2021-01-18 06:49:32 +01:00
README.md Update README.md 2020-10-26 08:06:34 -04:00

Jellyfin Discord Music Bot

Jellyfin Discord Music Bot is a Discord Bot for the Jellyfin Media Server!

Capabilities

Play to

Just summon the Bot into your Channel, than choose the Bot in Jellyfin as the Device you want to cast to

Image to Discord Play to Window

and start playing you favourite Music

Interactive Play Message

When you start playing something you can easily controll the Bot with just clicking on the Buttons under the Play Message

Image to Interactive Play Message

Commands

Beware that you'll always need to add your prefix(default: ?) in front of the command.

Command Description
summon Join the channel the author of the message(now you can cast to the Bot from within Jellyfin)
disconnect Disconnect from all current Voice Channels
play Play the following item(can be the name of the song or the Stream URL)
add Add the following item to the current playlist
pause/resume Pause/Resume audio
seek Where to Seek to in seconds or MM:SS
skip Skip this Song
spawn Spawns an Interactive Play Controller
help Display the help message

Limitations

  • No Playlist Repeat Mode.
  • Multi Server support.
  • Playing Video Content (if Discord ever adds this, I'll implement it into this Bot)

Getting Started

You'll need a Discord Application for this Bot to work, as you will host it yourself.

Generate an Api and bot here.

Click New Application.

image

The Name of the application will be the bot's name.

image

Go to the Bot tab.

image

Generate the bot, and grab the token. Also, recommend making the bot private.

image

Go to the OAuth2 page, click Bot Scope to get the url authorization link.

image

Authorize your room!

image

Next, join a voice channel and connect your bot with ?summon. This will connect your bot to the voice channel you're in and will create the device profile in Jellyfin.

Image to Discord Play to Window

From within Jellyfin, start playing content or from within Discord, use the bot commands to start enjoying music!

For official documentation to creating a bot.

How to retrieve your token

How to invite the Bot to your server

The simplest way to get started is using Docker:

docker run -d \
    --name jellyfin-discord-music-bot \
    -e DISCORD_PREFIX="?" \
    -e DISCORD_TOKEN="yourtokengoeshere" \
    -e JELLYFIN_SERVER_ADDRESS="https://jellyfin.DOMAIN" \
    -e JELLYFIN_USERNAME="" \
    -e JELLYFIN_PASSWORD="" \
    -e JELLYFIN_APP_NAME="Jellyfin Discord Music Bot" \
    -e MESSAGE_UPDATE_INTERVAL="2000" \
    --restart unless-stopped \
    kgt1/jellyfin-discord-music-bot

MESSAGE_UPDATE_INTERVAL is the amount of time in ms the play message gets updated with the current time

Alternatively you can run the Application natively with NodeJS:

Dependencies:

  • npm 6.14.6
  • NodeJS v12.18.3
  • ffmpeg 4.2.4
git clone https://github.com/kgt1/jellyfin-discord-music-bot.git
cd jellyfin-discord-music-bot
npm install

edit config.json and add your token,server-address etc.

npm run start

How to build

git clone https://github.com/kgt1/jellyfin-discord-music-bot.git
cd jellyfin-discord-music-bot
docker build -t YOUR_IMAGE_NAME .