- Sets context for API and App updates
- Survey was sent out to bot users
- 60% of respondents have used Slash Commands; this went up over time
- 50% of users say the main reason they like Slash Commands is Discoverability
- Incl. features such as Autocomplete and Message Components
- Top two features users struggle with
- Telling different Applications apart
- Especially for bots with significant oveerlap in features
- Some level of confusion here; UI updates and User Education will help
- Execution speed
- Speed of populating the command picker
- Speed of replaying commands
- Being worked on
- Telling different Applications apart
-
Message Content Privileged Intent: 31st Aug 2022 is the deadline.
- Just over two months remain.
-
Permissions 2.0
- Well received by mods
- Permissions was a gap in the initial release
- Finishing designs on doing this properly; very complicated UI challenge
- Improvements will be made over time
-
Bot Permssions in Interaction Payload
- Send bot permissions as part of command, is planned.
-
Permissions for interactions
- Currently use @/everyone
- Has been confusing for mods and devs
- Change: For Applications that have a bot in the server, Interaction Webhooks will inherit the Bot's Permissions.
- Where there is no Bot User, fall back on @/everyone permissions.
- No ETA; but will happen.
-
Legacy Command Searcher:
- Suggests Slash Commands when a matching Content Command is detected
- Has helped Discoverability
-
Scope Migration
- Will work differently from last time
- Make sure all bots get the
applications.commands
scope if needed; as many bots need it now that didn't before. - This will include education for Moderators re: Slash Commands and let them explicitly choose to turn them on.
- Rollout will be slower than last time; this is intentional to ensure mods are not surprised.
-
bot
OAuth scope impliesapplications.commands
scope.- Fixes old invite links.
-
Hopefully all OAuth scope issues should be resolved by the deadline. (paraphrased from @/Mason#1337
-
Working on making things faster
- Smarter fuzzy matching
- More caching
-
Mention Slash COmmands
-
Up-arrow behaviour to rerun commands
-
Better command copy-pasting
-
Plans for Mobile too
-
For migration and education:
-
Experiment: Show on Bot Profiles that Slash Commands are used
- Include frequently used commands
- Users check bot profiles frequently
panelists:
-
quin#3017 [He/Him]: Discord.Net Maintainer
-
Coding#0001 [He/They]: Truth or Dare Bot Developer
-
Melmsie#0001 [He/They]: Dank Memer Developer
-
aetheryx#0001 [He/Him]: Dank Memer Lead Developer
-
shaydew#7429 [She/They]: Discord Developer Advocate
-
Experience porting to Interactions:
- Coding
- Was intimidating to rewrite
- Argument parsing is a big pro
- HTTP Interactions are useful
- No more websocket maintenance
- Easier to scale
- Works well at ToD Bot's high scale.
- aetheryx
- Agree with Coding
- Argument parsing is a "huge relief"
- At first there were few libraries with proper support
- Especially regarding HTTP Interactions
- Everything does make sense however
- Agree with Coding
- quin
- Application Commands were his start to library development
- In Dec-2020 he was using Discord.NET and worked on Appplication Command support
- Felt people wanted more ease in writing them
- Integrating Application Commands in existing libraries was difficult
- Coding
-
Libraries and Application Commands
- quin
- Libraries already have support for commands based on Message Content
- Developers don't want breakage
- Create something easy to adopt for developers
- quin
-
User Experience: Struggles onboarding users
- Melmsie
- We haven't released our full implementation, but have open betas
- We learned that simply telling users doesn't work; users aren't used to Slash Commands
- They have reported the UX as a bug
- Use screenshots to onboard users
- Hopefully Discord improves in this respect
- Bots can explain but Discord can do it better
- Coding
- Onboarding was hard because the bot shut down
- Old invites were not updated
- Hard cut to slash commands
- Old commands were replied to with a new invite
- Helpdesk in the support server helped in the transition: actively helping users transition
- This was automated for FAQs re: Slash Commands.
- Melmsie RE: Beta UX
- Biggest takeaway was the sentiment to Slash Commadsn was negative; including from users
- Users likes Slash Commands more after a week of use
- UX between platforms is significantly different
- PC users were more positive about Slash Commands
- Mobile users were positive about Message Components
- Lots of fine tuning was required; but users gave good feedback
- aetheryx
- Scalability was improved
- Handled 500k Interactions/minute; much better than websockets
- Use k8s to handle scaling and orchestration
- Coding RE: transition to Slash Commands
- Original developer was paying $90/mo over 9 VPSs
- Had stability issues
- HTTP Interactions made the bot stable and reduced costs to $3/mo
- Melmsie
Have slash commands been more or less flexible in terms of the UX you can develop or create?
- Coding:
- Buttons were helpful for Mobile users
- Melmsie
- Autocomplete increases flexibility and allows for User Education
- "Gamechanging"
- Autocomplete increases flexibility and allows for User Education
Did you develop your own library? What is the maintenance like?
- aetheryx:
- Developed their own library
- Made sure it was polished so that the rewrite would go smoothly
- Uses TypeScript to take advantage of compile time type chacking
- Every command has a property to specify the API level structure; "elegantly" handles making API payloads.
- people talk too fast I missed something
- Uses discord-api-types for type checking
Plans on maintaining Message Content Commands/broaden the transition timeline:
- quin
- Discord.NET plans to maintain both long-term
- Strongly pushes Slash Commands for DX reasons
- Melmsie
- Not good for User Education, especailly as Discord adds features such as Autocomplete that create a large difference between different Users' experience
Favourite feature/Wishlist:
- Coding:
- Favourite: is HTTP Interactions
- Wishlist: is send more information in HTTP interactions such as Channel information
- Quin:
- Wishlist: Date/Time Picker
- Favourite: Modals to input large amounts of text
- Melmsie
- Favourite: Autocomplete
- Wishlist: more buttons
- aetheryx
- Favourite: Ephemeral Responses
More customisation options?
- Yes! More scope for customisation would be good.
- The form that takes is still under consideration.
Components for Modals?
- Attachments? Yes
- Selects are being worked on, were almost done but technical constraints got in the way
- More support for things is desirable; but not Buttons.
Paginated Modals:
- Good idea for a fully fledged form.
NSFW Flag for Slash Commands
- Yes. Being worked on by popular demand.
- "This feature will come"
- Ensure policy is clear for everyone
Command Cooldowns/Ratelimits:
- Upvote on GH Discussions
- Could work like Slow Mode
Upvote discussions on GH! Submit fixes!
nice thanks