Giter VIP home page Giter VIP logo

bnfone / discordmusicbot-evobot Goto Github PK

View Code? Open in Web Editor NEW

This project forked from eritislami/evobot

4.0 1.0 0.0 3.8 MB

πŸŽΆπŸ€– bnfoneMusic is a fork of the original EvoBot, a Discord Music Bot built with TypeScript, discord.js & uses Command Handler from discordjs.guide. This version includes enhancements and additional features to improve user experience and functionality (including Apple Music & Spotify support).

Home Page: https://donate.stripe.com/6oE2bm9ajcU49A43cg

License: MIT License

TypeScript 97.56% Dockerfile 1.05% Python 1.39%
applemusic discord-bot discord-js discord-music-bot spotify youtube docker docker-compose

discordmusicbot-evobot's Introduction

bnfoneMusic - A Discord Music Bot

This is a fork of the original EvoBot, a Discord Music Bot built with TypeScript, discord.js & uses Command Handler from discordjs.guide. This version includes enhancements and additional features to improve user experience and functionality.

Node build Docker build

🌟 Quickstart & Support

Thank you for your support in helping us develop and maintain this bot. We greatly appreciate your understanding and contributions.

⚠️ Important Note: We no longer offer hosting services. Thank you for your understanding and continued support!

If you would still like to support us, you can make a donation here: Donate πŸ’–

You can still choose the amount you wish to donate; every contribution is welcome and appreciated. Thank you for your generosity!

πŸ“‹ Requirements

  1. Discord Bot Token Guide
    1.1. Enable 'Message Content Intent' in Discord Developer Portal
  2. Spotify Client ID & Secret *-> can be requested at Spotify Developer Dashboard
  3. Node.js 16.11.0 or newer

πŸ› οΈ Getting Started

git clone https://github.com/bnfone/DiscordMusicBot-evobot.git  # Clone the forked repository
cd DiscordMusicBot-evobot
npm install

After installation finishes, follow the configuration instructions and then run npm run start to start the bot.

βš™οΈ Configuration

Copy or Rename config.json.example to config.json and fill out the values:

⚠️ Note: Never commit or share your token or api keys publicly ⚠️

{
  "TOKEN": "",  // Your Discord Bot Token
  "SPOTIFY_CLIENT_ID": "",   // Your Spotify Client ID
  "SPOTIFY_CLIENT_SECRET": "", // Your Spotify Client Secret
  "MAX_PLAYLIST_SIZE": 10,
  "PRUNING": false,
  "LOCALE": "en",
  "DEFAULT_VOLUME": 100,
  "STAY_TIME": 30
}

🐳 Docker Configuration

For those who would prefer to use our Docker container, you may provide values from config.json as environment variables.

docker run -e TOKEN=your_discord_bot_token -e SPOTIFY_CLIENT_ID=your_spotify_client_id -e SPOTIFY_CLIENT_SECRET=your_spotify_client_secret bnfone/DiscordMusicBot-evobot -d

Docker Compose

version: '3.8'

services:
  discord_music_bot:
    image: bnfone/DiscordMusicBot-evobot
    container_name: discord_music_bot
    environment:
      - TOKEN=your_discord_bot_token
      - SPOTIFY_CLIENT_ID=your_spotify_client_id
      - SPOTIFY_CLIENT_SECRET=your_spotify_client_secret
    restart: always

πŸ“ Features & Commands

  • 🎢 Play music from YouTube, Spotify, and Apple Music via URL
  • πŸ”Ž Play music using search queries
  • πŸ“ƒ Play YouTube, Spotify, and Apple Music playlists via URL
  • πŸ”Ž Search and select music to play
  • πŸŽ›οΈ Volume control, queue system, loop/repeat, shuffle, and more
  • 🎀 Display lyrics for the playing song
  • ⏸️ Pause, resume, skip, and stop music playback
  • πŸ“± Media Controls via Buttons
  • 🌍 Supports multiple locales

Preview

Note: For Spotify and Apple Music integration, the bot converts the provided links to YouTube links before playing, ensuring compatibility and a broader range of music availability. The Odesli.co API is used for that.

🌎 Locales

This fork supports additional locales. For a complete list, please refer to the original repository. If you want to contribute by adding new locales, please check the contributing section.

🀝 Contributing to This Fork

  1. Clone your fork: git clone https://github.com/your-username/evobot.git
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: cz OR npm run commit (Avoid using git commit directly)
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request to the original repository and mention that it's for the forked version.

Note: This fork is maintained separately from the original EvoBot. For changes specific to this fork, ensure to target the correct repository when submitting pull requests or issues.

discordmusicbot-evobot's People

Contributors

abdulrahman1s avatar bnfone avatar dependabot-preview[bot] avatar dependabot[bot] avatar devstore1207 avatar drewburr avatar entertvl avatar eritislami avatar evrardco avatar jaimetr avatar mirasaki avatar ndbiaw avatar nikosszzz avatar petertrr avatar rexjohannes avatar sandrzejewskipl avatar sarthaktexas avatar secondthunder avatar shiro-nek0 avatar shrentseng avatar sn4s avatar sourack avatar sparker-99 avatar sugiish avatar tat2008 avatar techroy23 avatar tomato6966 avatar vanawy avatar wolf-yuan-6115 avatar zackradisic avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

discordmusicbot-evobot's Issues

πŸš€ RP (rich presence) while listening to Bot's music

Is your feature request related to a problem? Please describe.
It would be nice to see that users in the same voice channel as the bot are listening to music. Would also promote the bot :)

Describe the solution you'd like
As described above, I want to have a rich presence activity displayed for users who are listening to the Bot's music.

Describe alternatives you've considered
none

Additional context
none

πŸš€ PlayNext command

Is your feature request related to a problem? Please describe.
I'm always frustrated when I want to play a song, which I want to hear next.

Describe the solution you'd like
An extra command for adding songs next in the queue

Describe alternatives you've considered
Usage of /play and /move

Additional context
/

πŸ› Spotify Playlist doesn't work like expected

Describe the bug
Bot does not start playing playlist, using /playlist with certain valid Spotify links.

How To Reproduce
Steps to reproduce the behavior:

  1. do /playlist https://open.spotify.link/some-playlist - only some Spotify playlists appear not to work
  2. open console to inspect logs (YT_Video not found)

Expected behavior

  • play Playlist like every other

Environment (add if possible)

  • Node.js version: - Docker was used

Additional information & screenshots
My Docker Log, simmilar to the node.js on my local machine

discord_music_bot  | Error: While getting info from url
discord_music_bot  | Video unavailable
discord_music_bot  |     at video_stream_info (/node_modules/play-dl/dist/index.js:2:5802)
discord_music_bot  |     at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
discord_music_bot  |     at async stream (/node_modules/play-dl/dist/index.js:7:16453)
discord_music_bot  |     at async stream (/node_modules/play-dl/dist/index.js:15:3190)
discord_music_bot  |     at async Song.makeResource (/dist/structs/Song.js:52:26)
discord_music_bot  |     at async MusicQueue.processQueue (/dist/structs/MusicQueue.js:156:30)
discord_music_bot  | Error: While getting info from url

Apparently the bot is not able to handle this Spotify playlist. Some others were tested without any problems. I do not know why...

First I thought, I messed up the dependencies, but in older versions the Bug also exists...

πŸš€ Webradio

Is your feature request related to a problem? Please describe.
No. Simply a nice idea! Well, I'm frustrated when YouTube doesn't work (which happen some time)

Describe the solution you'd like
It would be nice to have a command to listen to (local) radio stations. E.g. /radiowhich lists available radio stations to listen to.
Also a config file for custom (not preset) radio stations (streams) would be very nice!

Describe alternatives you've considered
Other discord Bots ig? But it would be so nice to have an all-in-one Discord Bot for music with an intuitive user interface.

Additional context
Nothing.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.