discord-kurante/src/main.rs

43 lines
1.1 KiB
Rust

use crate::commands::GENERAL_GROUP;
use crate::passive::Handler;
use serenity::client::Client;
use serenity::framework::standard::StandardFramework;
use std::env;
use util::db::DbConnPool;
mod commands;
mod passive;
mod util;
pub(crate) const COMMAND_PREFIX: &str = "~";
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
dotenv::dotenv().ok();
let framework = StandardFramework::new()
.configure(|c| c.prefix(COMMAND_PREFIX))
.group(&GENERAL_GROUP);
let mut client =
Client::new_with_extras(&env::var("DISCORD_TOKEN").expect("token"), |extras| {
extras
.event_handler(Handler::default())
.framework(framework)
})
.await
.expect("Error creating client");
{
let mut data = client.data.write().await;
data.insert::<DbConnPool>(DbConnPool::new().await);
}
// start listening for events by starting a single shard
if let Err(why) = client.start().await {
println!("An error occurred while running the client: {:?}", why);
}
Ok(())
}