Coder Social home page Coder Social logo

jagrosh / musicbot Goto Github PK

View Code? Open in Web Editor NEW
4.7K 104.0 2.4K 7.56 MB

๐ŸŽถ A Discord music bot that's easy to set up and run yourself!

Home Page: https://jmusicbot.com

License: Apache License 2.0

Java 99.64% Shell 0.36%
discord-bot music youtube soundcloud music-bot musicbot playlist radio playlists jda

musicbot's Introduction

JMusicBot

Downloads Stars Release License Discord
CircleCI Build and Test CodeFactor

A cross-platform Discord music bot with a clean interface, and that is easy to set up and run yourself!

Setup

Features

  • Easy to run (just make sure Java is installed, and run!)
  • Fast loading of songs
  • No external keys needed (besides a Discord Bot token)
  • Smooth playback
  • Server-specific setup for the "DJ" role that can moderate the music
  • Clean and beautiful menus
  • Supports many sites, including Youtube, Soundcloud, and more
  • Supports many online radio/streams
  • Supports local files
  • Playlist support (both web/youtube, and local)

Supported sources and formats

JMusicBot supports all sources and formats supported by lavaplayer:

Sources

  • YouTube
  • SoundCloud
  • Bandcamp
  • Vimeo
  • Twitch streams
  • Local files
  • HTTP URLs

Formats

  • MP3
  • FLAC
  • WAV
  • Matroska/WebM (AAC, Opus or Vorbis codecs)
  • MP4/M4A (AAC codec)
  • OGG streams (Opus, Vorbis and FLAC codecs)
  • AAC streams
  • Stream playlists (M3U and PLS)

Example

Loading Example...

Setup

Please see the Setup Page to run this bot yourself!

Questions/Suggestions/Bug Reports

Please read the Issues List before suggesting a feature. If you have a question, need troubleshooting help, or want to brainstorm a new feature, please start a Discussion. If you'd like to suggest a feature or report a reproducible bug, please open an Issue on this repository. If you like this bot, be sure to add a star to the libraries that make this possible: JDA and lavaplayer!

Editing

This bot (and the source code here) might not be easy to edit for inexperienced programmers. The main purpose of having the source public is to show the capabilities of the libraries, to allow others to understand how the bot works, and to allow those knowledgeable about java, JDA, and Discord bot development to contribute. There are many requirements and dependencies required to edit and compile it, and there will not be support provided for people looking to make changes on their own. Instead, consider making a feature request (see the above section). If you choose to make edits, please do so in accordance with the Apache 2.0 License.

musicbot's People

Contributors

all-laugh avatar dependabot[bot] avatar jagrosh avatar lachlanpond avatar lorivaro avatar lrbn86 avatar magicteamc avatar michailik avatar sanduhr32 avatar splitpixl avatar t3rminus avatar telluur avatar woife5 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

musicbot's Issues

More Games

More games such as trivia etc that other bots offer that this doesn't.

600 song limit

Is this a hard limit on the bot or something, my autoplaylist only pulls from the first 600 of a youtube playlist i've created and any time i queue the playlist it only adds the first 600 songs. Any way to get this increased? Also searching for songs doesn't work it seems

Other Languages

The bot should have a translation function for other languages like pt-br for example !!

Suggestion: Playlist loop

Make an option maybe do not know, so that the playlist is repeated when finished so you do not have to be adding the songs again, For the bot to be used as a "radio".

Let the Bot stay in channel after nothing is queued up

I LOVE this bot. Great alternative to SexualRhinos bot which has became quite dated with the advancements Discord made.

I'd love to have it stay in the VC if the playlists is empty. My User always ask me if the Music Bots are offline. It would give them some kind of assurance. Maybe let it fallback to a generic playlist from YouTube. like Superhits 2016 or something like that.

User Account

Make this supportive for User Accounts instead of Bot Tokens.

Suggestion: User Blacklist

  • Maintain a local list of users that are not allowed to use the bot. Alternatively check for a configurable role that disallows use of the bot.
  • DJ and Admin status should override this blacklist.

Problem using volume command

I have a problem using the volume command. If the volume changed to e.g. 110% there is no sound anymore until changing it back to 100.

pause & resume

Hey I'm new to github so I didn't know where to post this, but is it possible if you can add pause and resume commands?

Suggestion: Leave Server - Command

Something like: [prefix]leaveserver [serverid]

Found out, that it's somehow possible with JDA: jda.getGuildById(The ID after the command).leave();

Would be useful, if you don't have Permissions to kick the Bot.

Linux (Ubuntu, CentOS, Fedora, etc)

Just wondering if this would work with Linux not the RPi but like Ubuntu, CentOS, etc as the reason why I am asking this I would be hosting the bot from a vps and can't really run anything on my end 24/7

Suggestion: Forward command

Can you add a command that allows a DJ to fast forward the music? For example, you can do (command prefix)forward 1:00, and the song will be fast forwarded by 1 minute.

Bot configuration window

Would be to create 2 versions of the Bot so to speak, a "normal" to hoped in a vps talves do not know and another for the person to be able to use on the computer in a simplified and more intuitive way

image

AutoPause

The music should stop or the bot could automatically disconnect when the bot is alone on a voice channel!

Suggestion: !clean command

Could we get a command (!clean) that cleans up all the text "spam" the bot leaves after intensive use by multiple users?

AWS

How would one run the bot on AWS? I've tried and failed.

Volume does not seem to work

System: Raspberry Pi 3
OS: Raspbian

Changing volume to anything beside 100 seems to mute/silent the bot.
Tested values as 50, 99, 150 and all the results was the same, bot went silent and didn't seem to transmit music.

Using version 0.0.2-patch

libconnector.so was not found (arm)

Required library at /natives/linux-arm/libconnector.so was not found

while trying to play music when it running on raspberry pi (debian 8)

Missing artifact com.jagrosh:JDA-Utilities:jar:1.1

Hi,

New to this Maven project stuff, I've imported the project into Eclipse as a Maven project, it's downloaded most of the dependencies but i'm getting this error/problem:

Missing artifact com.jagrosh:JDA-Utilities:jar:1.1
The container 'Maven Dependencies' references non existing library 'C:\Users\justin\.m2\repository\com\jagrosh\JDA-Utilities\1.1\JDA-Utilities-1.1.jar'

I've had a look around but I can only find the 1.0 version of JDA-Utilities and if I try to import that I then get more errors in Eclipse

The reason why I'm trying to compile my own is because I'd like to add some custom commands to the bot

Any tips to get this fixed?

Suggestion: remember settings

An idea would be to make commands like setgame and volume be remembered. So in the event of a reboot you wont have to re-enter some settings

Playlist loading really slow

I have a bunch of playlist around 500-1200 songs in a single text file, and I must say the bot does take a while to start playing the first song. Like 5-15minutes. Anyway to slow down the waiting time?

Playlist

Your new release says you added an option to play the playlist but how do we do that ??

Add a clear command

If a playlists is queued up but there's a need to clear it there's only the option to remove one by one with the remove command. Kind of tedious and exhausting work.

Bot thinks no music is playing when it plays

I came across this bug after playing a livestream for 7 hours

TheIndra - today at 11:42
.play http://vip-icecast.538.lw.triple-it.nl/WEB02_MP3

GehoorStreler2000 [BOT] - today at 11:42
:notes: Added Unknown title (LIVE) to begin playing(gewijzigd)

After 7 hours someone else tried the queue command and it showed
:no_entry_sign: There must be music playing to use that!
But there was still music playing...

Also we tried play a new song, it added to the queue but when using
.queue it still showed that there was no music playing

Also skip doesn't work because the bot thinks there is no music playing

Config


token=

owner=241225897389064192

prefix=.

game=Skype installer

//success=๐ŸŽถ
//warning=๐Ÿ’ก
//error=๐Ÿšซ

//help=cmds

noprogressintopic=true

Device: Raspberry PI
OS: Raspbian

ERROR POM.xml

When trying to compile the bot's source code in netbeans, it gave an error in maven.
I tried to solve more not to get, could of majudar ??

Typos

When trying to set an invalid volume: Volume bust be
Command: forcesskip
When setting name: Successfully changed avatar

No GUI

There currently isn't a gui. This will be fixed later.

Playlist Unable to Find Files it Creates

As the title says, I can't seem to get the playlist functionality to work.

I'm using the function !playlist make name. Success.
I append song URLs to the playlist. Success.
But then I use !play playlist name. Can't find name.txt

Is anyone else experiencing this? I tried moving the entire folder from Desktop to My Documents, to no avail.

http://puu.sh/wydxZ/c5683a9919.png

Suggestion

image
for the music bot i suggest you add something where u can join the servers and know the servers that its in. something like this: https://cdn.discordapp.com/attachments/336308100887871488/336309249598685185/unknown.png
and like or like this: https://cdn.discordapp.com/attachments/240154911449284620/336207124256260097/unknown.png
so if people are curious to know where their bots are going or where there bots are at. they can know :3. should be np eh.

you know, like the partycrasher command in which you can join the servers its in. :3

Bot fails to search for songs correctly

For some reason, I've just experienced an issue where the bot couldn't find any youtube song, but could after a restart, first time I've noticed this so not sure if it's a recurring issue or not.

See below screenshot:

discordcanary_2017-07-20_15-23-50

Doesn't run on Raspberry Pi

Hey
I have no problems running the bot on my windows machine, however i can't install it on my raspberry pi. I think this is caused by problems with installing JDK 1.8 on raspberry pi. The line "sudo add-apt-repository ppa:webupd8team/java" outputs "Error: could not find a distribution template for Raspbian/jessie". Obviously the referred repository doesn't support the newest Debian Jessie Image. Could you try to find a repository with jessie support?

.Class Location

Could you help me with finding the location of where you change what the bot is "playing" I tried to look for the .class file that had the information but failed terribly.
screenshot_1

suggestion: shuffle for playlist

hello i was wondering if you could make playlists shuffle so everytime you start a playlist it doesnt always be same song order all the time?

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.