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
Julius Riegel a1d4cb354a
Merge pull request #45 from Trivernis/develop
Update dependencies and docker build
2 years ago
.github/workflows Update dependencies and docker build 2 years ago
bot-coreutils Update dependencies and docker build 2 years ago
bot-database Update dependencies and docker build 2 years ago
src Update dependencies and docker build 2 years ago
.dockerignore Docker integration (#23) 3 years ago
.gitignore Switch to diesel with postgres for the database 3 years ago
Cargo.lock Update dependencies and docker build 2 years ago
Cargo.toml Update dependencies and docker build 2 years ago
Dockerfile Update dependencies and docker build 2 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