wiseoldman-discord-bot
wiseoldman-discord-bot copied to clipboard
Change how setting up the bot works
We have discussed how we want to change the bot's setup workflow to use buttons instead of multiple commands as we have it right now. Here is a list of what should change.
Instead of having a config
command with multiple subcommands, we should create one command that displays a button per configurable item or a drop down list with option for each. Here is an inspiration of how it could look.
Configuring notifications Show a channel selection and a disable button or a channel selection option depending on if a channel has already been set up or not.
Configuring a group Show an integer input option and a disable button or just an integer option depending on if a group has been configured already.
Configuring an rsn I propose we move setting an rsn to this command as well and make it clear that setting an rsn doesn't mean linking your discord with your in-game account. So we show a string option and a disable button or just a string option depending on if an rsn has already been configured.
Currently the /setrsn
command is a little confusing and is leading to people thinking it somehow links their in-game account with their discord which isn't true because multiple people can configure the same rsn. We should make it clear that configuring an rsn only sets a default rsn for the other commands that require an rsn as input.
Other If a user has admin permissions all options should be available. If the user doesn't have admin permissions only the configuration of an rsn should be available.
When this implemented, we should not immediately remove the currently available commands but rather turn them into a message saying that the configuration of the bot has been moved. The message could has ephemeral set to true so they only show up to the one who sent the command.
What should the new command be? Keep it /config
or change it to something else, such as /setup
?
-
I like changing it to
/setup
, so that it's clear that it would be the 1 entry point for any server admin to setup our bot. I'm not as big of a fan of including/setrsn
in that same command, I think it should be a separate command, with very intentional messaging, more on this at the end. -
Configuring notifications makes a lot of sense to me, but to expand on that a little (and maybe tweak some of the language), it could be: 1 - run
/setup
2 - select "Notifications" (category) 3 - select the notification type from a follow-up dropdown (much like how hom has follow-up hidden messages) 4 - A message would show up, telling you the current configuration for that notification type, and actions below: 4a - if notification type is already selected, two buttons:Change channel
andDisable
4b - if notification type isn't selected, one button:Select channel
5 - change/select channel actions would give the user a dropdown of all text channels, and on select it would give them a confirmation message (it would also send an empty msg to that channel to test if it's available, current code already does this) -
Configuring group is pretty similar, except i dont think you have have an input and a button side to side, right? so Maybe it would be two buttons
Change group
andRemove group
or justSelect group
if unconfigured- Note, maybe this input could support ID and wom URL? not sure, or at least just some quick message on where they can find the group ID (group pages now contain this on the header)
-
I think setrsn (or aliases) needs to be evaluated separately (after config->setup update), I believe a lot of players think this is some kinda of magical linking between their OSRS acc and discord, but it's really supposed to only be used as a default username for player commands. I think it should be a separate command, but still be updated to be a lot more clear on what it actually does. For now it's best to focus on just turning /config* into /setup and we'll worry about setrsn later imo.
-
I 100% agree that we shouldn't remove the current commands, and just use them as empty "redirect" messages to the new
/setuo
command