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 6f4d9df4b7
Switch to youtube-metadata for basic video information fetching
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
.github/workflows Fix gpg signing in actions 4 years ago
bot-coreutils Switch to stable toolchain and add more info to stats command 4 years ago
bot-database Add ephemeral message table and delete them on startup 4 years ago
bot-serenityutils Fix now playing message not being updated 4 years ago
src Switch to youtube-metadata for basic video information fetching 4 years ago
.gitignore Switch to diesel with postgres for the database 4 years ago
Cargo.lock Switch to youtube-metadata for basic video information fetching 4 years ago
Cargo.toml Switch to youtube-metadata for basic video information fetching 4 years ago
LICENSE Add hooks and README 4 years ago
README.md Add sauce command 4 years ago
rust-toolchain.toml Switch to stable toolchain and add more info to stats command 4 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