README.md
Rama dev · réplica de lectura del repositorio original.
<p align="center">
<a href="https://nestjs.com/" target="blank"><img src="https://github.com/walkxcode/dashboard-icons/blob/main/png/jellyfin.png?raw=true" width="200" alt="Nest Logo" /></a>
</p>
<br/>
<h1 align="center">Jellyfin Discord Bot</h1>
<p align="center">A simple <a href="https://discord.com" target="_blank">Discord</a> bot that enables you to broadcast<br/>your <a href="https://jellyfin.org/" target="_blank">Jellyfin Media Server</a> music collection to voice channels.<br/>It's Open Source and can easily be hosted by yourself!</p>
<p align="center">
<small>Thank you <a href="https://github.com/KGT1/jellyfin-discord-music-bot/">KGT1</a> for starting this project!<br/>This is a fork of their original repository and re-uses some of their code.</small>
</p>
<p align="center">
<a href="https://github.com/manuel-rw/jellyfin-discord-music-bot/wiki/%F0%9F%9A%80-Installation"><img src="https://img.shields.io/badge/-Installation%20Guide-7289da?style=for-the-badge&logo=markdown" alt="badge" /></a>
<a href="https://discord.gg/hRHZ3q3VDX"><img src="https://img.shields.io/badge/-Community%20Discord-7289da?style=for-the-badge&logo=discord" alt="badge" /></a>
<a href='https://ko-fi.com/A0A42YZ7W' target='_blank'><img src="https://img.shields.io/badge/-Buy%20me%20a%20coffee-f1f1f1?style=for-the-badge&logo=kofi" alt="badge" /></a>
<br/>
<br/>
<img src="https://github.com/manuel-rw/jellyfin-discord-music-bot/actions/workflows/docker.yml/badge.svg?branch=master" />
<img src="https://deepsource.io/gh/manuel-rw/jellyfin-discord-music-bot.svg/?label=active+issues&show_trend=true&token=vhfm8cbHaoCyXTf7Gfs9FweR)](https://deepsource.io/gh/manuel-rw/jellyfin-discord-music-bot/?ref=repository-badge" />
</p>
<br/>
<hr/>
<br/>

## ✨ 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
- ``/playliked`` Plays songs, that you have liked
- ``/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
- ``/nowplaying`` Shows what the bot is currently playing.
> [!TIP]
> ``<search:string>`` -> Equals to a required parameter.<br/>
> ``<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](https://github.com/KGT1/jellyfin-discord-music-bot/) 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](https://github.com/discordjs/discord.js/issues/4116))
## 💻 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
- https://tabler-icons.io/
- https://docs.nestjs.com/
- https://discord.js.org/
- https://github.com/fjodor-rybakov/discord-nestjs
- https://github.com/jellyfin/jellyfin-sdk-typescript
- https://jellyfin.org/
- https://github.com/KGT1/jellyfin-discord-music-bot
- https://gitmoji.dev/