Giter Site home page Giter Site logo

freyacodes / archived-bot Goto Github PK

View Code? Open in Web Editor NEW
489.0 28.0 210.0 13.8 MB

A Discord music bot serving music in over 3 million discord servers

Home Page: https://fredboat.com/docs

License: MIT License

Java 41.88% HTML 1.29% Shell 0.25% Kotlin 56.55% Dockerfile 0.04%
java bot discord jda music i18n kotlin audio docker spring-boot

archived-bot's People

Contributors

a840817a avatar almighty-alpaca avatar andrielchaoti avatar badjukebox avatar bobatrance avatar codetriage-readme-bot avatar freyacodes avatar kaaz avatar kantenkugel avatar knight-ryu12 avatar nanabell avatar natanbc avatar ncovercash avatar otterboops avatar realkc avatar rokirok avatar ryanleecode avatar sbcd90 avatar schnapster avatar shikhir-arora avatar shredder121 avatar sixaiy avatar suhankoh avatar taylor224 avatar ternunda avatar yeoji 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

archived-bot's Issues

Web Dashboard

I plan on creating a web dashboard primarily for fiddling around with bot permissions in a similar manner to the Discord permission system:
image

The dashboard should have these features:

  1. Standard Discord permissions for the server, text channels and voice channels
  2. Additional bot permissions (play, stop, skip, NSFW, send commands, etc)
  3. Manage permission overrides
  4. OAuth2 login panel for authenticating with Discord
  5. Maybe a Patreon link system
  6. A simple list of servers

Further commands may follow, like kick ban and mute commands

My hope is that this major feature can be completed with the help of someone with experience on interactive websites. I will be able to provide an API to interface with, so the main concern is the front-end. Comment on this issue if you are interested.

Create ;;playNext command

;;playNext or ;;playn. Whatever works.

A command that places a song (maybe even playlist?) at the head of the queue. Useful when there is a large playlist taking up space in the queue and just want to add song without clearing it.

.m3u and .pls web scraper

FredBoat currently supports live internet radios, but not that many people are using it. It seems that many are not aware how to connect FredBoat to a radio. Current usage is like this:

;;play https://gensokyoradio.net/GensokyoRadio.pls
;;play https://gensokyoradio.net/GensokyoRadio.m3u
;;play http://listen.moe/stream.m3u
[etc]

Lavaplayer needs a direct link to the playlist file and will fail to load such URLs like https://gensokyoradio.net since it returns an HTML page.

I propose the idea that we regex any failed URL identifier for m3u and pls links after lavaplayer has failed to load the identifier as a URL in the AudioLoader. The following regex could be used:

/href=\"([\w\d\.\/]{1,}?\.(?:m3u|pls))\"/g

;;skipto command

Proposal:
;;skipto
This command skips all tracks until the nth track is reached in the queue.

Bot gives error when trying to dm a dump

When you do a ;;dump -q or ;;dump 200 -r the bot respawns with
java.lang.NumberFormatException: For input string: "-q" java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) java.lang.Integer.parseInt(Integer.java:580) java.lang.Integer.valueOf(Integer.java:766) fredboat.command.util.DumpCommand.onInvoke(DumpCommand.java:53) fredboat.commandmeta.CommandManager.prefixCalled(CommandManager.java:105)

prevent some channel from playing a music ?

Hi,

I've really love your work there, i hope you would make a feature to prevent music in some channel, because everyone in my server is spamming music request on #GeneralDiscussion

please make ;;skip require a vote or something

In a large server of >500 people when even 10 people get in a music bot chat it can become quite chaotic when people keep skipping other's songs. If you could add a feature where it requires like at least half of the people in the voice chat that the bot is currently in to type ";;skip" that would be great.

Stopped working

After playing for 30 minutes, the last two songs skipped immensely. Placed on pause for 10 minutes and when a new song was added all commands simply stopped being accepted. Have removed from discord three times, remade the channel and added back. Still no commands are working.

Voteskipping

Command that skips once a majority has been reached

Default playlist

[2:43 PM] Nakonssika (Настя): I suggest to add possibility to create default playlist and edit it for Bot to play.
Thank you for considering it 😃
[3:12 PM] Nakonssika (Настя): I suppose, that it should work like:

  1. A global default playlist
  2. A possibility to edit it, adding or deleting songs or even overriding it to create a specific playlist for each server.
  3. An option for each server, like a switch mode, in which you can set on or off this playlist

[4:20 PM] Fred's Robot Pet: just need the info when the default song should play
[4:20 PM] Nakonssika (Настя): automatically, when the bot is launched.
[4:21 PM] Nakonssika (Настя): summoned, i think
[4:21 PM] Nakonssika (Настя): and admin can control this, using the on\pff function
[4:21 PM] Nakonssika (Настя): las a setting
[4:21 PM] Nakonssika (Настя): like*
[4:22 PM] Fred's Robot Pet: i think it should play when people join in a voice channel and also say "The default playlist is now playing"
[4:22 PM] Nakonssika (Настя): yes, like this. and if you use (play) and some song, then the default playlist is skipped.
[4:23 PM] Nakonssika (Настя): but still exists

I'll also add some things to this:

  1. ;;default global/server should post a link to the list of all songs in the default playlist on hastebin;
  2. ;;default skip should skip it;
  3. ;;default play should play it.

This feature could have integration with the dashboard as well.

fred boat skiping songs

okay so i tried to load a playlist with 2,947 videos and it only loaded 600 little disappointed there. but ive noticed that when the bot starts to lag and it stops (audio stop Playing) for a few seconds it will go to the next song

Some commands could use embeds once we get on JDA 3.x

AFAIK JDA supports them only in 3.x, so we'll have to wait for the music stuff to be implemented which should be this month.

These are the commands I suggest to use embeds: ;;akinator, ;;list, ;;play , and maybe some I couldn't think of.

Playing Spotify tracks/playlists as Youtube tracks

https://github.com/adhorrig/spodl (very active. javascript) idk if its harder to code between two languages so here are two java based one
https://github.com/nyxaria/Spotify-to-MP3(idk but its java, couldn't compile as its got no pom.xml for maven)
https://github.com/mlkmn/spotify-downloader(another java older and might not work but i can compile it)

found this while on reddit finding the Spotify premium mod for a friend. seems interesting,

would it be possible to add this to the bot so it can read spotify links and then find and play it from youtube? thus bypassing the strict steaming rules of spotify

;;playnow command

Proposal:
;;playnow
This command skips the current track and moves the nth track into the player instead.

;;skip <range> command

Proposal:
;;skip
;;skip 10-23
This command skips all tracks between specified index in the queue.

Music is messed up

The auto setting of the voice activation volume from discord messes up the music

Make this repo more friendly for contributors

I'm planning on making this project more accessible for developers who want to contribute their own commands and features to this project, much like other bots are doing it. I want to make it more clear on what I am working on here and what can be done to help with the development of FredBoat.

Things to do:

  • Organize the labels
  • Create README.md
  • Create issues
  • Announce these changes in the #announcement channel on my server

;;perms command

Makes certain commands available only to certain user groups.

Blacklist

Add the commandes ;;blacklist ;;setname ;;setavatar ;;clear please

;;stop command makes stop playing music in the other channel

Hello,

First thank you for made the FredBoat.

I am using FredBoat with SelfHosting. I installed FredBoat with SelfHosting document. It working well but I found the FredBoat stop playing music when send ;;stop command in the other server.
Actually, It is not stop playing but in Discord PC client, user cannot hear the music from FredBoat.
At left side of Discord PC client, I can see my FredBoat is saying(Green circle ring is activated). But I can hear the music. When I disconnect from the voice channel and reconnect to music channel, I can hear the music from FredBoat or pause and unpause the FredBoat music.
I think It is Discord client bug, But I think some code related with ;;stop command trigger the Discord client bug.
Please review this bug.

I am running FredBoat in Ubuntu 16.04 LTS.
I installed JAVA JDK with this document.
Other procedure is stepped by FredBoat SelfHosting document.
The server is fresh installed with just python and flask development environment.
Server location is US West and Discord Server location is Singapore.

Thank you.

Expand the FAQ section

If you've been hanging out in FredBoat Hangout you might have noticed that people have a lot of questions that aren't already answered in the FAQ in the docs. Please help answering more questions in the FAQ by sending a pull request on faq.md.

A third repeat mode that moves tracks to the tail instead of restarting

If I were to implement this, each player would have one of 3 repeat modes:

  1. Ended tracks are deleted (off)
  2. Ended tracks are restarted immediately (current ;;repeat)
  3. Ended tracks are shuffled back into the queue or put at the the tail, depending on shuffle mode (proposed idea)

I'd like some input on this idea on how the user would switch between the 3 modes. Currently we just toggle between 1 and 2 with ;;repeat

Exception in thread "main" org.json.JSONException: JSONObject["shards"] not found.

Hello

I'm having a problem with starting up the bot. I configured everything. But When I run the java on Ubuntu I'm getting this error:

[21:09:14] [ INFO ] [FredBoat] Invalid scope, defaulting to scopes 0x111
[21:09:14] [ INFO ] [FredBoat] Starting with scopes:
	Main: true
	Music: true
	Self: true
[21:09:14] [ INFO ] [FredBoat] JDA version:	3.0.BETA2_121
[21:09:14] [ INFO ] [FredBoat] Using lavaplayer nodes
[21:09:14] [ INFO ] [FredBoat] Determined distribution: PATRON
Exception in thread "main" org.json.JSONException: JSONObject["shards"] not found.
	at org.json.JSONObject.get(JSONObject.java:471)
	at org.json.JSONObject.getInt(JSONObject.java:598)
	at fredboat.util.DiscordUtil.getRecommendedShardCount(DiscordUtil.java:113)
	at fredboat.FredBoat.initBotShards(FredBoat.java:210)
	at fredboat.FredBoat.main(FredBoat.java:174)

I have no clue on how to fix this...

Suggestion: Prefix editing

would it be possible to allow users to edit the prefix without having to dig into the java files and editing the return messages and the prefix constant?

so for example: if you dont want ;; as your prefix you can set in the config.json to be !

thanks

Also Manage messages, permission is enabled for the bots role but it wont do ;;clear. if you want i can create a second

Player throttling

It's a known fact that FredBoat sometimes suffers from extreme load causing the bot to stutter since it can't process music fast enough.

I want to create a system that throttles a number of players being actively used based on the CPU usage of the nodes.

I'm thinking the bot would reject new players from starting if the average node CPU usage is >98%. Paused players should be given a grace period of a few minutes to not introduce a fear of losing the right to play music when pausing.

If access is rejected the bot would instead send a message explaining the situation and how they can help.

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.