Rust version of the tobi discord bot
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Go to file
trivernis 017f1e8f46
Change cleaing of song names for spotify search
Now the regex is applied before all nonalphanumeric chars are deleted.
Additionally everything in square brackets will be deleted.

Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
.github/workflows Remove ipfs action 3 years ago
bot-coreutils Switch to stable toolchain and add more info to stats command 3 years ago
bot-database Fix unavailable stored videos causing songs not to be played 3 years ago
bot-serenityutils Switch to stable toolchain and add more info to stats command 3 years ago
src Change cleaing of song names for spotify search 3 years ago
.gitignore Switch to diesel with postgres for the database 3 years ago
Cargo.lock Bump version 3 years ago
Cargo.toml Bump version 3 years ago
LICENSE Add hooks and README 3 years ago
README.md Add sauce command 3 years ago
rust-toolchain.toml Switch to stable toolchain and add more info to stats command 3 years ago

README.md

2B (Tobi) Discord bot.

A rust rewrite of the originally js 2B bot.

Current feature set

  • minecraft information
  • playing music from youtube
  • miscellaneous commands

System Dependencies

The bot depends on a few programs to be installed on the system.

Data Storage

Music

Misc Commands

API Dependencies

The bot depends on the following APIs

  • Discord: It's a discord bot...
  • Spotify: To fetch song names to be searched on youtube for music playback
  • lyrics.ohv: To fetch lyrics for playing songs
  • SauceNAO: To fetch source information for images

Dev Dependencies

  • Rust
  • Other stuff that you have to figure out yourself because it just works for me

Configuration

The bot reads all required configuration values from the environment or optionally from a .env file. The required values are:

  • BOT_TOKEN (required): Discord bot token
  • BOT_OWNER (required): Discord UserID of the bot owner
  • DATABASE_URL (required): Connection uri to the postgres database in the schema postgres://myuser:mypassword@localhost:5432/database
  • SPOTIFY_CLIENT_ID (required): Spotify API Client ID
  • SPOTIFY_CLIENT_SECRET (required): Spotify API Client Secret
  • SAUCENAO_API_KEY (required): SauceNAO API Key
  • BOT_PREFIX (optional): The prefix of the bot. Defaults to ~ if not set.
  • LOG_DIR (optional): Directory to store log files in. Defaults to logs in the cwd.

License

It's GPL 3.0