Skip to content
Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

137 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ€– EnigmaV3 - A music recommender bot for Discord

Open Source Love

License: GPL v3 DOI Build Status GitHub Release GitHub Repo Size made-with-python GitHub contributors Open Issues Pull Requests Supports Python Formatting python code codecov

Report Bug Β· Request Feature


🎼 FEATURES

  • 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

πŸ“£ V3 : New Features

  • 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

βš’οΈ Installation Procedure

1. Prerequisites

2. Running Code

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

Create a .env file for Discord token:

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.

Note: Make sure the bot has the role bot and the user has the role DJ

πŸš€ Demo

enigma.mp4

πŸš€ Demo 2 - Group 17

Demo.mp4

πŸ“ Roadmap

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:
    • ]play command to play from queue
    • ]reconnect to 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

Documentation for the code available at - Enigma Docs

πŸ‘₯ Contributors

Group 86


Rohit Sriram

Adithya Srinivasan


Veeraraghavan Narasimhan

Contributing

Please see CONTRIBUTING for contributing to this project.

Data

The dataset for Enigma is present here You can find the dataset here Top Spotify Songs (2010-2019) which contains around 600 songs.

Support

For any support reach out to rsriram3@ncsu.edu

About

This repo is for a discord music bot

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages