7b659834288fbd3e9129d0d3ddcc700f10aa227d
Vocard (Discord Music Bot)
Vocard is a simple custom Disocrd Music Bot built with Python & discord.py
Demo (Bot & Dashboard)
Tutorial
Click on the image below to watch the tutorial on Youtube.
Screenshot
Discord Bot
Dashboard
Run the Projects
Requirements
Quick Start
git clone https://github.com/ChocoMeow/Vocard.git #Clone the repository
cd Vocard #Go to the directory
python -m pip install -r requirements.txt #Install required packages
After installing all packages, you must configure the bot before to start! How To Configure
Start your bot with python main.py
Configuration
- Rename
.env Exampleto.envand fill all the values
TOKEN = XXXXXXXXXXXXXXXXXXXXXXXX.XXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXX
CLIENT_ID = 123456789012345678
CLIENT_SECRET_ID = YOUR_BOT_CLIENT_SECRET_ID
SERCET_KEY = DASHBOARD_SERCET_KEY
BUG_REPORT_CHANNEL_ID = 123456789012345678
SPOTIFY_CLIENT_ID = 0XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
SPOTIFY_CLIENT_SECRET = 0XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
YOUTUBE_API_KEY = AXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
MONGODB_URL = mongodb+srv://user:password@clusterURL
MONGODB_NAME = Vocard
| Values | Description |
|---|---|
| TOKEN | Your Discord bot token (Discord Portal) |
| CLIENT_ID | Your Discord bot client id (Discord Portal) |
| CLIENT_SECRET_ID | Your Discord bot client secret id (Discord Portal) (optional) |
| SERCET_KEY | Secret key for dashboard (optional) |
| BUG_REPORT_CHANNEL_ID | All the error messages will send to this text channel (optional) |
| SPOTIFY_CLIENT_ID | Your Spoity client id (Spotify Portal) (optional) |
| SPOTIFY_CLIENT_SECRET | Your Spoity client sercret id (Spotify Portal) (optional) |
| YOUTUBE_API_KEY | Your youtube api key (Google API) (optional) |
| MONGODB_URL | Your Mongo datebase url (Mongodb) |
| MONGODB_NAME | The datebase name that you created on Mongodb |
- Rename
settings Example.jsontosettings.jsonand customize your settings (Note: Do not change any keys fromsettings.json)
{
"nodes": {
"DEFAULT": {
"host": "127.0.0.1",
"port": 2333,
"password": "password",
"secure": false,
"identifier": "DEFAULT"
}
},
"prefix": "?",
"bot_access_user": [],
"color_code":"0xb3b3b3",
"default_max_queue": 1000,
"ipc_server": {
"host": "127.0.0.1",
"port": 8000,
"enable": false
},
"emoji_source_raw": {
"youtube": "<:youtube:826661982760992778>",
"youtube music": "<:youtube:826661982760992778>",
"spotify": "<:spotify:826661996615172146>",
"soundcloud": "<:soundcloud:852729280027033632>",
"twitch": "<:twitch:852729278285086741>",
"bandcamp": "<:bandcamp:864694003811221526>",
"vimeo": "<:vimeo:864694001919721473>",
"apple": "<:applemusic:994844332374884413>",
"reddit": "<:reddit:996007566863773717>",
"tiktok": "<:tiktok:996007689798811698>"
},
"controller": [
["back", "resume", "skip", {"stop": "red"}, "add"],
["tracks"]
],
"cooldowns": {
"connect": [2, 30],
"playlist view": [1, 30]
},
"aliases": {
"connect": ["join"],
"leave": ["stop", "bye"],
"play": ["p"],
"view": ["v"]
}
}
- For
nodesyou have to provide host, port, password and identifier of the Lavalink Server - For
prefixyou can set the prefix of the bot. (If you don't provide any prefix, the bot will disable the message command). - For
bot_access_useryou can pass the discord user id. Example:[123456789012345678] - For
color_codeyou must pass a Hexadecimal color code and add0xbefore the color code. Example:"0xb3b3b3" - For
default_max_queueyou can set a default maximum number of tracks that can be added to the queue. - For
ipc_serveryou can set the host, password and enable of the ipc server. - For
emoji_source_rawyou can change the source emoji of the track with discord emoji like<:EMOJI_NAME:EMOJI_ID> - For
cooldownsyou can set a custom cooldown in the command. Example:"command_name": [The total number of tokens available, The length of the cooldown period in seconds] - For
aliasesyou can set custom aliases in the command. Example:"command_name": [alias1, alias2, ...] - For
controlleryou can set custom buttons in controller, you have to pass2D Arrayinto controller. Example Here
How to update?
- Run
python update.py --checkto check if your bot is up to date - Run
python update.py --startto start update your bot
Note: Make sure there are no personal files in the directory! Otherwise it will be deleted.
Description
Languages
Python
99.8%
Dockerfile
0.2%
