A Music Discord Bot, that plays Youtube, Spotify, Deezer links or raw queries. Vulkan is open source, so everyone can fork this project, follow the instructions and use it in their own way, executing it in your own machine or hosting in others machines to work 24/7.
Vulkan uses multiprocessing and asynchronous Python modules to maximize Music Player response time, so the player doesn't lag when many commands are being processed and it can play in multiples discord serves at the same time without affecting the Music Player response time.
Installation of Python 3.10+
and the dependencies in the requirements.txt file, creation of your own Bot in Discord and Spotify Keys.
To install the dependencies type this command in the terminal, in the project root folder.
pip install -r requirements.txt
You have to create your own discord Bot and store your Bot Token
You own Spotify Keys - Spotify
FFMPEG is a module that will be used to play music, you must have this configured in your machine
FFMPEG must be configured in the PATH for Windows users. Check this YoutubeVideo.
You can download the executables in this link https://www.ffmpeg.org/download.html
and then put the .exe files inside a ffmpeg\bin folder in your C:\ folder. Do not forget to add 'ffmpeg\bin' to your PATH.
This is an example of how your .env file (located in root) should look like.
BOT_TOKEN=Your_Own_Bot_Token
SPOTIFY_ID=Your_Own_Spotify_ID
SPOTIFY_SECRET=Your_Own_Spotify_Secret
BOT_PREFIX=Your_Wanted_Prefix_For_Vulkan
SHOULD_AUTO_DISCONNECT_WHEN_ALONE=True #all settings can be set like this
#etc... All settings can be set this way
The bot's configuration is stored in the .env file, you can change the prefix and the bot token there, as well as all the other configurations. Take a look in the Settings page to personalize the Bot for you.
python main.py
in console to startYou can also run this project in a Docker container. You can find the instructions to run this project in a Docker container in the Docker Instructions page.
Heroku doesn't offer free host services anymore.
To deploy and run your Bot in Heroku 24/7, follow the instructions in the Heroku Instructions page.
The tests were written manually with no package due to problems with async function in other packages, to execute them type in root:
python run_tests.py
This program is free software: you can redistribute it and/or modify it under the terms of the MIT License.
If you are interested in upgrading this project i will be very happy to receive a PR or Issue from you. See TODO project to see if i'm working in some feature now.