- Recommend songs based on user input and play them on discord voice channel
- Can be used in chat rooms by teams, friends, organizations to encourage a 'sound' environment
- Capability to toggle music pause/resume
- Capability to play any song- requires no youtube search
- Capability to switch back and forth between songs
- Capability to shuffle songs in queue
- Authorize specific channels for the bot to access
- Acts as an amplifier - can be used to play same music on multiple speakers to give a surround sound effect and increase volume output
- Added a new functionality to add a custom song to the queue
- Added a new functionality to shuffle the songs within the queue
- A play feature to continue playing from queue
- Reconnect command to reconnect to VC
- Added authorization feature for channels and roles
- Made Enigma accessible on Linux and Windows
If you want to get added to the music server on discord to test the bot, drop an email to rsriram3.edu
- Install FFMPEG from FFMPEG builds, extract it and add it to your path How to add FFMPEG to Path
First, clone the repository and cd into the folder:
$ git clone https://github.com/rohit-sram/Enigma.git
Alternatively, clone repo using SSH keys,
$ git clone git@github.com:rohit-sram/Enigma.git
$ cd Enigma
Use the following format DISCORD_TOKEN=#SECRET_TOKEN#
Install requirements
$ pip install -r requirements.txt
Start the bot
$ python bot.py
You can now use the discord bot to give music recommendations! Use ]help to see all functionalities of bot.
enigma.mp4
Demo.mp4
What We've Done:
- Enigma now works on Linux and Windows
- Created a Discord Bot via the Discord Developer Portal.
- Added functionalities to the Discord bot. Check Features above.
- Call Enigma to voice channel to play music based on the user's requests.
- Enigma plays songs without having to search on YouTube.
- Added a lil more functionality to Enigma:
]playcommand to play from queue]reconnectto reconnect Enigma to Voice channel- Enigma now checks for Authorized roles and channels
Scope for the future:
- Make the song recommendations more sophisticated by using content-based recommender systems.
- User profile integration with bot
- Integrating likes and dislikes for profiled users- for potentially personalized recommendations.
- Broader platform access(ubuntu, Android, iOS etc.)
- More functionalitiies for the bot:
- Loop and replay features
- Move a song within a queue or to the top of the queue
- Jump to a specific song in the queue
- A Dataset suggestion : 'Music Dataset (1950-2019)'
Documentation for the code available at - Enigma Docs
Rohit Sriram |
Adithya Srinivasan |
Veeraraghavan Narasimhan |
Please see CONTRIBUTING for contributing to this project.
The dataset for Enigma is present here You can find the dataset here Top Spotify Songs (2010-2019) which contains around 600 songs.
For any support reach out to rsriram3@ncsu.edu