reactiflux / reactibot

Useful saved commands, auto-moderation tools, and more, for the Reactiflux server.
MIT License
27 stars 40 forks source link

Convert !commands to slash commands #131

Open nickserv opened 2 years ago

nickserv commented 2 years ago

Inspired by #46

Application commands provide a better UX for running bot commands in Discord (fixing common issues of ours like moderators having to delete commands that users accidentally run) while also allowing for more relaxed bot permissions.

Once we upgrade to discord.js 13, we can use their registering slash commands example.

vcarl commented 2 years ago

This seems like one benefit we'd get by updating discord.js, maybe that's a better title?

nickserv commented 2 years ago

I'm intentionally keeping this as a separate issue, since this is more of a UX improvement and the handler format is not required in discord.js 13. Neither PR has this yet, and I might move the refactor to another PR anyway to make it easier to review.

nickserv commented 2 years ago

@vcarl I swapped #136 with this in the board, could you please check if it's prioritized correctly?

vcarl commented 2 years ago

there are only like 3 things on the board, it's not really something rigorous

nickserv commented 2 years ago

Renaming to specifically use slash commands, since we don't seem to need the other application command types (user and message context menu commands) yet. Slash commands are specifically used when typing messages, which is most similar to how we're currently using the bot.

Padmanabh82 commented 2 years ago

Ye, we need this

nickserv commented 2 years ago

What's the status of this? I noticed another PR got merged, but I'm not seeing our slash commands on Discord.

vcarl commented 2 years ago

I haven't made any changes to affect this, but I did implement command deployment in #198 which should facilitate this. Our only command atm is the anonymous report

https://github.com/reactiflux/reactibot/blob/7f3bbcdd2eb48bdabec77ad6cd753a2023f541bb/scripts/deploy-commands.ts#L27