30 lines
925 B
Rust
30 lines
925 B
Rust
use crate::{Data, Error};
|
|
use poise::serenity_prelude::{self as serenity, ActivityData};
|
|
use tracing::info;
|
|
|
|
pub async fn event_handler(
|
|
ctx: &serenity::Context,
|
|
event: &serenity::FullEvent,
|
|
_framework: poise::FrameworkContext<'_, Data, Error>,
|
|
data: &Data,
|
|
) -> Result<(), Error> {
|
|
match event {
|
|
serenity::FullEvent::Ready { data_about_bot, .. } => {
|
|
info!("Logged in as {}", data_about_bot.user.name);
|
|
info!("Guilds: {}", data_about_bot.guilds.len());
|
|
ctx.set_activity(Some(ActivityData {
|
|
name: data.config.default_status.clone(),
|
|
kind: serenity::ActivityType::Playing,
|
|
url: None,
|
|
state: None,
|
|
}));
|
|
info!(
|
|
"Bot is ready and set to default status: {}",
|
|
data.config.default_status
|
|
);
|
|
}
|
|
_ => {}
|
|
}
|
|
Ok(())
|
|
}
|