[DOCS] Group commands example (#2246)

* add Group Command Examples to int_framework intro

* update subcommad group's name

* added some comments t othe example code

* fixed naming

* added spaces in comments
This commit is contained in:
Misha133
2022-04-22 13:26:54 +03:00
committed by GitHub
parent e1a8ecd723
commit 18f001e37b
2 changed files with 23 additions and 0 deletions

View File

@@ -282,6 +282,8 @@ By nesting commands inside a module that is tagged with [GroupAttribute] you can
> Although creating nested module stuctures are allowed,
> you are not permitted to use more than 2 [GroupAttribute]'s in module hierarchy.
[!code-csharp[Command Group Example](samples/intro/groupmodule.cs)]
## Executing Commands
Any of the following socket events can be used to execute commands:

View File

@@ -0,0 +1,21 @@
// You can put commands in groups
[Group("group-name", "Group description")]
public class CommandGroupModule : InteractionModuleBase<SocketInteractionContext>
{
// This command will look like
// group-name ping
[SlashCommand("ping", "Get a pong")]
public async Task PongSubcommand()
=> await RespondAsync("Pong!");
// And even in sub-command groups
[Group("subcommand-group-name", "Subcommand group description")]
public class SubСommandGroupModule : InteractionModuleBase<SocketInteractionContext>
{
// This command will look like
// group-name subcommand-group-name echo
[SlashCommand("echo", "Echo an input")]
public async Task EchoSubcommand(string input)
=> await RespondAsync(input);
}
}