pikadick/commands/
invite.rs1use crate::checks::ENABLED_CHECK;
2use serenity::{
3 builder::CreateBotAuthParameters,
4 client::Context,
5 framework::standard::{
6 macros::command,
7 Args,
8 CommandResult,
9 },
10 model::{
11 application::Scope,
12 channel::Message,
13 permissions::Permissions,
14 },
15};
16
17#[command]
18#[description("Get an invite link for this bot")]
19#[checks(Enabled)]
20#[bucket("default")]
21pub async fn invite(ctx: &Context, msg: &Message, _args: Args) -> CommandResult {
22 let permissions = Permissions::empty();
23 let link = CreateBotAuthParameters::new()
24 .permissions(permissions)
25 .auto_client_id(&ctx)
26 .await?
27 .scopes(&[Scope::Bot])
28 .build();
29
30 msg.channel_id.say(&ctx.http, &link).await?;
31
32 Ok(())
33}