https://github.com/aplombomb/boombot
A utility and music streaming bot for Discord servers
https://github.com/aplombomb/boombot
boombot bot discord go golang music music-streaming-bot youtube
Last synced: 6 months ago
JSON representation
A utility and music streaming bot for Discord servers
- Host: GitHub
- URL: https://github.com/aplombomb/boombot
- Owner: aplomBomb
- License: mit
- Created: 2020-07-31T02:24:41.000Z (almost 6 years ago)
- Default Branch: dev
- Last Pushed: 2023-03-25T00:33:19.000Z (over 3 years ago)
- Last Synced: 2024-06-21T11:48:08.614Z (about 2 years ago)
- Topics: boombot, bot, discord, go, golang, music, music-streaming-bot, youtube
- Language: Go
- Homepage:
- Size: 351 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
▄▄▄▄· • ▌ ▄ ·. ▄▄▄▄ ▄▄▄▄▄▄▄
▐█ ▀█▪ ▄█▀▄ ▄█▀▄ ·██ ▐███▪▐█ ▀█▪ ▄█▀▄ •██
▐█▀▀█▄▐█▌.▐▌▐█▌.▐▌▐█ ▌▐▌▐█·▐█▀▀█▄▐█▌.▐▌ ▐█.▪
██▄▪▐█▐█▌.▐▌▐█▌.▐▌██ ██▌▐█▌██▄▪▐█▐█▌.▐▌ ▐█▌·
·▀▀▀▀ ▀█▄▀▪ ▀█▄▀▪▀▀ █▪▀▀▀·▀▀▀▀ ▀█▄▀▪ ▀▀▀
## **_The ultimate interactive and intuitive music streaming Discord bot_**
## **Master**-
## **Dev**-

[](https://goreportcard.com/report/github.com/aplombomb/boombot)
[](https://opensource.org/licenses/MIT)
## Description
Boombot is a music streaming bot for group listening and sharing in Discord voice channels. The idea behind Boombot is to make music streaming simple, accessible and interactive enough for every Discord user, not just the hip ones. Boombot currently supports Youtube videos/playlist links and custom searching from any text channel.
## Getting Started
### Boombot is not currently setup for easy plug and play **_quite_** yet, but if you're eager...
***If you'd rather just use Boombot before it's open to the public, you can be a beta tester in Boombot's home [server](https://discord.gg/5Bmpec34US)***
### Dependencies
- Docker
- FFMPEG
- Clone the repo and add these .env files into root dir with their respective key=values
- `boombot.env`
- `AWS_ACCESS_KEY=yourawsaccesskeyhere`
- `AWS_SECRET_ACCESS_KEY=yourawssecretaccesskeyhere`
- `ENV=container` - this is the literal value that needs to be here
- `BOT_PREFIX=yourprefferedcommandprefix` - the symbol you'd like to be used for invoking commands
- `db.env`
- `POSTGRES_PASSWORD=yourpgpasswordhere`
- `POSTGRES_USER=yourpguserhere`
- In order to be able to fetch the bot's client and youtube tokens, you'll need to register your own applications and store the tokens under the secret name in AWS Secrets Manager: `boombot_creds` with the keys `BOT_TOKEN` and `YOUTUBE_TOKEN`
### Building\Launching
- After installing your dependencies and setting up your secrets, run `docker-compose up` at root dir
# How to use Boombot via commands
- Commands
- ### [_prefix_]**play** + _youtubeLink_ **OR** _a string search query_
This will invoke Boombot to fetch your request from youtube and put it into your own queue. Boombot will then join you in the voice channel you're currently residing in and start playing.
- ### [_prefix_]**next**
This will skip the currently playing song, moving on to your next item in your queue, unless multiple users have queues, in that case Boombot will alternate between the different queues to avoid a listening monopoly for a better group listening experience.
- ### [_prefix_]**purge**
This will stop all playback for your queue and remove it completely. This also hapens if you leave voice chat entirely, preventing users from trolling by requesting large playlists, then disappearing.
- ### [_prefix_]**shuffle**
This will shuffle your queue, randomizing playback order.
- ### [_prefix_]**pause**
Pauses playback
- ### [_prefix_]**play**
Resumes paused playback
# How to use Boombot via jukebox
### Boombot uses a special text channel to display the currently playing song info inside an embedded message, these messages have auto-generated reaction emojis attached to them that represent all the different command controls, all you have to do is click them and Boombot will respond accordingly!