From 15a160e1e587a4cea6e1c3a00b899e2629b91919 Mon Sep 17 00:00:00 2001 From: Armano den Boef <68127614+Rozen4334@users.noreply.github.com> Date: Sun, 17 Oct 2021 16:27:35 +0200 Subject: [PATCH] FAQ revamped, metadata updated (#241) * FAQ revamped, metadata updated * Update FAQ.md * Update README.md * Docs index improvement --- FAQ.md | 50 ++++++ README.md | 158 ++++++------------ docs/docfx.json | 7 +- docs/faq/basics/basic-operations.md | 123 -------------- docs/faq/basics/client-basics.md | 94 ----------- docs/faq/basics/getting-started.md | 82 --------- docs/faq/basics/images/dev-mode.png | Bin 80742 -> 0 bytes docs/faq/basics/images/mention-escape.png | Bin 19611 -> 0 bytes docs/faq/basics/images/role-copy.png | Bin 16091 -> 0 bytes docs/faq/basics/images/snowflake.png | Bin 73062 -> 0 bytes docs/faq/basics/samples/cast.cs | 15 -- docs/faq/basics/samples/emoji-others.cs | 18 -- docs/faq/basics/samples/emoji-self.cs | 17 -- docs/faq/commands/dependency-injection.md | 54 ------ docs/faq/commands/general.md | 147 ---------------- docs/faq/commands/samples/DI.cs | 28 ---- docs/faq/commands/samples/Remainder.cs | 20 --- docs/faq/commands/samples/missing-dep.cs | 29 ---- .../faq/commands/samples/runmode-cmdattrib.cs | 7 - .../faq/commands/samples/runmode-cmdconfig.cs | 10 -- docs/faq/misc/glossary.md | 82 --------- docs/faq/misc/legacy.md | 29 ---- docs/faq/toc.yml | 18 -- docs/index.md | 24 ++- .../SVG/Combinationmark White Background.svg | 84 ++++------ .../logo/SVG/Combinationmark White Border.svg | 30 ++++ docs/toc.yml | 3 +- 27 files changed, 182 insertions(+), 947 deletions(-) create mode 100644 FAQ.md delete mode 100644 docs/faq/basics/basic-operations.md delete mode 100644 docs/faq/basics/client-basics.md delete mode 100644 docs/faq/basics/getting-started.md delete mode 100644 docs/faq/basics/images/dev-mode.png delete mode 100644 docs/faq/basics/images/mention-escape.png delete mode 100644 docs/faq/basics/images/role-copy.png delete mode 100644 docs/faq/basics/images/snowflake.png delete mode 100644 docs/faq/basics/samples/cast.cs delete mode 100644 docs/faq/basics/samples/emoji-others.cs delete mode 100644 docs/faq/basics/samples/emoji-self.cs delete mode 100644 docs/faq/commands/dependency-injection.md delete mode 100644 docs/faq/commands/general.md delete mode 100644 docs/faq/commands/samples/DI.cs delete mode 100644 docs/faq/commands/samples/Remainder.cs delete mode 100644 docs/faq/commands/samples/missing-dep.cs delete mode 100644 docs/faq/commands/samples/runmode-cmdattrib.cs delete mode 100644 docs/faq/commands/samples/runmode-cmdconfig.cs delete mode 100644 docs/faq/misc/glossary.md delete mode 100644 docs/faq/misc/legacy.md delete mode 100644 docs/faq/toc.yml create mode 100644 docs/marketing/logo/SVG/Combinationmark White Border.svg diff --git a/FAQ.md b/FAQ.md new file mode 100644 index 000000000..fbae6d524 --- /dev/null +++ b/FAQ.md @@ -0,0 +1,50 @@ +# Frequently Asked Questions + +#### Whats the difference between DNet and DNet Labs? +DNet Labs is mostly the same as DNet as it just adds additional features. Discord.NET-labs adds several features Discord.NET does not. Examples of this are: Threads, application commands, message components, stage channels, role icons & more small functionality changes. More details [here](https://github.com/discord-net/Discord.Net/pull/1923). + +#### Should I use DNet Labs instead of DNet? or can I use both at the same time? +DNet Labs implements new experimental/unstable features and generally shouldn't be used in production environments. You should only use it if you want to test out new Discord features. As DNet Labs builds on top of DNet, you can not use both at the same time, however DNet Labs should be a pretty straight forward drop-in replacement for DNet. + +#### Why is x not doing y when it should? +Double check you are on the most recent version of Discord .Net labs, if you are and it looks like an issue, report it on [Discord](https://discord.com/invite/dnet-labs) or create an issue on [GitHub](https://github.com/Discord-Net-Labs/Discord.Net-Labs) + +#### When is feature x going to be added? +When someone adds it. If a new Discord feature is currently untouched, submit an issue on [GitHub](https://github.com/Discord-Net-Labs/Discord.Net-Labs) regarding the request. + +#### What's the difference between RespondAsync, DeferAsync and FollowupAsync? +The difference between these 3 functions is in how you handle the command response. [RespondAsync](https://discord-net-labs.com/api/Discord.WebSocket.SocketCommandBase.html#Discord_WebSocket_SocketCommandBase_DeferAsync_System_Boolean_Discord_RequestOptions_) and [DeferAsync](https://discord-net-labs.com/api/Discord.WebSocket.SocketCommandBase.html#Discord_WebSocket_SocketCommandBase_DeferAsync_System_Boolean_Discord_RequestOptions_) let the API know you have succesfully received the command. This is also called 'acknowledging' a command. DeferAsync will not send out a response, RespondAsync will not. [FollowupAsync](https://discord-net-labs.com/api/Discord.WebSocket.SocketCommandBase.html#Discord_WebSocket_SocketCommandBase_DeferAsync_System_Boolean_Discord_RequestOptions_) follows up on succesful acknowledgement. + +> [!WARNING] +> If you have not acknowledged the command FollowupAsync will not work. + +#### What's the difference between global commands and guild commands? (Why isn't my command show up in discord?) +Global commands can be used in every guild your bot is in. However, it can take up to an hour for every guild to have access to the commands. +Guild commands can only be used in specific guilds. They are available within a few minutes. (This is great for testing purposes). + +#### I'm getting a 50001: Missing access error while trying to create a guild command! +Guild commands require you give grant the bot the applications.commands OAuth2 scope in order to register guild commands in that guild. You can register global commands without this OAuth2 scope but will need it to use global commands in that guild. + +#### I'm getting errors when trying to create a slash command (The application command failed to be created, 400 bad request, 50035: Invalid Form Body, etc) +This could be caused by several things but the most common one is an invalid "Name" for the command or any of the options/arguments for the command. Make sure your "Name" is all lowercase and only contains letters or dashes. It should also be less than 32 characters. If you are still having issues after checking this, read up on the other slash commands limits [here](https://discord.com/developers/docs/interactions/slash-commands#a-quick-note-on-limits). + +> [!NOTE] +> In most cases, you can catch an [ApplicationCommandException](https://discord-net-labs.com/api/Discord.Net.ApplicationCommandException.html?q=applicationcommandexception) error from creation. +> This exception will tell you what part of your command is invalid as well as why. + +#### How can I use Victoria with Labs? +You can add a special build of victoria that supports labs by adding the below to your references: +```xml + + https://www.myget.org/F/yucked/api/v3/index.json + +``` + +#### I'm getting a 10062 exception: Unknown Interaction. What can I do? +This exception happens when an app tries to send an initial response to an interaction twice. This can be caused by: +- 2 instances of your app running at once. +- Responding 3+ seconds after the interaction was received. +If you're positive that your app doesn't do this and you are still receiving the exception, please submit an issue. + +#### Why is BannerId/AccentColour always null? +Currently SocketUser/SocketGuildUser does not expose the [BannerId](https://discord-net-labs.com/api/Discord.IUser.html#Discord_IUser_BannerId) nor [AccentColor](https://discord-net-labs.com/api/Discord.IUser.html#Discord_IUser_AccentColor). To get this info, a [RestUser](https://discord-net-labs.com/api/Discord.Rest.RestUser.html?q=RestUser) must be requested. diff --git a/README.md b/README.md index c3343cd38..789119574 100644 --- a/README.md +++ b/README.md @@ -20,17 +20,60 @@ This repo is a custom fork of Discord.Net that introduces the newest features of discord for testing and experimenting. Nothing here is guaranteed to work but you are more than welcome to submit bugs in the issues tabs -### ♥ Sponsor us! +---- + +- 📄 [Documentation](https://discord-net-labs.com) +- 🔗 [Support](https://discord.com/invite/dnet-labs) +- 📚 [Guides](https://discord-net-labs.com/guides/introduction/intro.html) + +## Sponsor us! ❤ - If this library benefits you consider [sponsoring](https://github.com/sponsors/quinchs) the project as it really helps out. *Only sponsor if you're financially stable!* -## Known issues -Labs will not work with normal package of Playwo's [InteractivityAddon](https://www.nuget.org/packages/Discord.InteractivityAddon). The reason is that his package depends on the base discord.net lib. You can instead use the [InteractivityAddon.Labs](https://www.nuget.org/packages/Discord.InteractivityAddon.Labs) package which implements some of the features added in Discord.Net-Labs. +## Known compatibility issues + +- Playwo's [InteractivityAddon](https://www.nuget.org/packages/Discord.InteractivityAddon) + * ❌ Reason: The default package depends on Discord.NET instead of labs. + * ✔ Fix: [InteractivityAddon.Labs](https://www.nuget.org/packages/Discord.InteractivityAddon.Labs), which implements some of the features added in Discord.Net-Labs. + +- [Victoria](https://github.com/Yucked/Victoria) + * ❌ Reason: Victoria is built around Discord.NET and is not supported by labs. + * ✔ Fix: A custom build based on Discord.NET-labs: +```xml + + https://www.myget.org/F/yucked/api/v3/index.json + +``` ## How to use Setting up labs in your project is really simple, here's how to do it: 1) Remove Discord.Net from your project 2) Add Discord.Net Labs nuget to your project -3) Enjoy! +3) That's all! + +## Implementations +What Discord.NET-labs has that Discord.NET does not: + +- Major changes + * Added Interaction Support. + * Added Application commands (slash, user, message). + * Added Message Components (buttons, select menus). + * Added Thread Channels. + * Added Stage Channels. + * Revamped Stickers. + +- Minor changes + * Added `TimestampTag`. + * Made `Hierarchy` a `IGuildUser` property. + * Changes embed discription length to 4096. + * Added `Name` property to teams. + * Added url validation to embeds. + * Added `NsfwLevel` to Guilds. + * Added helpers to `Emoji` for parsing. + * Fixed gateway serialization to include nulls. + * Added banner and accent color to guild users. + * Fixed `CurrentUserId` in sharded clients being null. + * Fixed Guild owner and Admin `GuildPermissions.All`. + * Added `RatelimitCallback` to `RequestOptions`. ## Branches @@ -45,110 +88,3 @@ This branch is on pause and does not work currently, There is a pull request ope ### feature/xyz These branches are features for new things, you are more than welcome to clone them and give feedback in the discord server or issues tab. - -## Listening for Interactions - -Interaction docs can be found [here](https://github.com/Discord-Net-Labs/Discord.Net-Labs/tree/release/3.x/docs/guides/interactions). They are much more in depth than this readme. - -```cs -// Subscribe to the InteractionCreated event -client.InteractionCreated += Client_InteractionCreated; - -... -private async Task Client_InteractionCreated(SocketInteraction interaction) -{ - // Checking the type of this interaction - switch (interaction) - { - // Slash commands - case SocketSlashCommand commandInteraction: - await MySlashCommandHandler(commandInteraction); - break; - - // Button clicks/selection dropdowns - case SocketMessageComponent componentInteraction: - await MyMessageComponentHandler(componentInteraction); - break; - - // Unused or Unknown/Unsupported - default: - break; - } -} -``` - -### Simple handling slash commands -```cs -private async Task MySlashCommandHandler(SocketSlashCommand interaction) -{ - // Checking command name - if (interaction.Data.Name == "ping") - { - // Respond to interaction with message. - // You can also use "ephemeral" so that only the original user of the interaction sees the message - await interaction.RespondAsync($"Pong!", ephemeral: true); - - // Also you can followup with a additional messages, which also can be "ephemeral" - await interaction.FollowupAsync($"PongPong!", ephemeral: true); - } -} -``` - -### Simple handling button clicks and selection dropdowns -```cs -private async Task MyMessageComponentHandler(SocketMessageComponent interaction) -{ - // Get the custom ID - var customId = interaction.Data.CustomId; - // Get the user - var user = (SocketGuildUser) interaction.User; - // Get the guild - var guild = user.Guild; - - // Respond with the update message. This edits the message which this component resides. - await interaction.UpdateAsync(msgProps => msgProps.Content = $"Clicked {interaction.Data.CustomId}!"); - - // Also you can followup with a additional messages - await interaction.FollowupAsync($"Clicked {interaction.Data.CustomId}!", ephemeral: true); - - // If you are using selection dropdowns, you can get the selected label and values using these - var selectedLabel = ((SelectMenu) interaction.Message.Components.First().Components.First()).Options.FirstOrDefault(x => x.Value == interaction.Data.Values.FirstOrDefault())?.Label; - var selectedValue = interaction.Data.Values.First(); -} -``` - -> Note: The example above assumes that the selection dropdown is expecting only 1 returned value, if you configured your dropdown for multiple values, you'll need to modify the code slightly. - -### Sending messages with buttons -Theres a new field in all `SendMessageAsync` functions that takes in a `MessageComponent`, you can use it like so: -```cs -var builder = new ComponentBuilder().WithButton("Hello!", customId: "id_1", ButtonStyle.Primary, row: 0); -await Context.Channel.SendMessageAsync("Test buttons!", component: builder.Build()); -``` - -### Sending messages with selection dropdowns -Theres a new field in all `SendMessageAsync` functions that takes in a `MessageComponent`, you can use it like so: -```cs -var builder = new ComponentBuilder() - .WithSelectMenu(new SelectMenuBuilder() - .WithCustomId("id_2") - .WithPlaceholder("This is a placeholder") - .AddOption( - label: "Option", - value: "value1", - description: "Evan pog champ", - emote: Emote.Parse("<:evanpog:810017136814194698>") - ) - .AddOption("Option B", "value2", "Option B is poggers") - ); - -await Context.Channel.SendMessageAsync("Test selection!", component: builder.Build()); -``` - -> Note: You can only have 5 buttons per row and 5 rows per message. If a row contains a selection dropdown it cannot contain any buttons. - -## Slash Commands & Context Menu Commands -Slash command & Context command examples and how to's can be found [here](https://github.com/Discord-Net-Labs/Discord.Net-Labs/tree/release/3.x/docs/guides/interactions/application-commands). - -## Message Components -Message components (buttons, menus, etc) examples and how to's can be found [here](https://github.com/Discord-Net-Labs/Discord.Net-Labs/tree/release/3.x/docs/guides/interactions/message-components) diff --git a/docs/docfx.json b/docs/docfx.json index 424b951bc..9179035fd 100644 --- a/docs/docfx.json +++ b/docs/docfx.json @@ -23,7 +23,8 @@ "files": ["toc.yml", "index.md"] }, { - "files": ["faq/**.md", "faq/**/toc.yml"] + "src": "../", + "files": ["FAQ.md"] }, { "files": ["guides/**.md", "guides/**/toc.yml"] @@ -59,8 +60,8 @@ ], "overwrite": "_overwrites/**/**.md", "globalMetadata": { - "_appTitle": "Discord.Net Documentation", - "_appFooter": "Discord.Net (c) 2015-2020 2.2.0", + "_appTitle": "Discord.Net-Labs Documentation", + "_appFooter": "Discord.Net-Labs (c) 2020-2021 3.1.6", "_enableSearch": true, "_appLogoPath": "marketing/logo/SVG/Logomark Purple.svg", "_appFaviconPath": "favicon.ico" diff --git a/docs/faq/basics/basic-operations.md b/docs/faq/basics/basic-operations.md deleted file mode 100644 index 35c71709f..000000000 --- a/docs/faq/basics/basic-operations.md +++ /dev/null @@ -1,123 +0,0 @@ ---- -uid: FAQ.Basics.BasicOp -title: Questions about Basic Operations ---- - -# Basic Operations Questions - -In the following section, you will find commonly asked questions and -answers regarding basic usage of the library, as well as -language-specific tips when using this library. - -## How should I safely check a type? - -> [!WARNING] -> Direct casting (e.g., `(Type)type`) is **the least recommended** -> way of casting, as it *can* throw an [InvalidCastException] -> when the object isn't the desired type. -> -> Please refer to [this post] for more details. - -In Discord.Net, the idea of polymorphism is used throughout. You may -need to cast the object as a certain type before you can perform any -action. - -A good and safe casting example: - -[!code-csharp[Casting](samples/cast.cs)] - -[InvalidCastException]: https://docs.microsoft.com/en-us/dotnet/api/system.invalidcastexception -[this post]: https://docs.microsoft.com/en-us/dotnet/csharp/how-to/safely-cast-using-pattern-matching-is-and-as-operators - -## How do I send a message? - -> [!TIP] -> The [GetChannel] method by default returns an [IChannel], allowing -> channel types such as [IVoiceChannel], [ICategoryChannel] -> to be returned; consequently, you cannot send a message -> to channels like those. - -Any implementation of [IMessageChannel] has a [SendMessageAsync] -method. You can get the channel via [GetChannel] under the client. -Remember, when using Discord.Net, polymorphism is a common recurring -theme. This means an object may take in many shapes or form, which -means casting is your friend. You should attempt to cast the channel -as an [IMessageChannel] or any other entity that implements it to be -able to message. - -[SendMessageAsync]: xref:Discord.IMessageChannel.SendMessageAsync* -[GetChannel]: xref:Discord.WebSocket.DiscordSocketClient.GetChannel* - -## How can I tell if a message is from X, Y, Z channel? - -You may check the message channel type. Visit [Glossary] to see the -various types of channels. - -[Glossary]: xref:FAQ.Glossary#message-channels - -## How can I get the guild from a message? - -There are 2 ways to do this. You can do either of the following, - -1. Cast the user as an [IGuildUser] and use its [IGuild] property. -2. Cast the channel as an [IGuildChannel] and use its [IGuild] property. - -## How do I add hyperlink text to an embed? - -Embeds can use standard [markdown] in the description field as well -as in field values. With that in mind, links can be added with -`[text](link)`. - -[markdown]: https://support.discordapp.com/hc/en-us/articles/210298617-Markdown-Text-101-Chat-Formatting-Bold-Italic-Underline- - -## How do I add reactions to a message? - -Any entity that implements [IUserMessage] has an [AddReactionAsync] -method. This method expects an [IEmote] as a parameter. -In Discord.Net, an Emote represents a custom-image emote, while an -Emoji is a Unicode emoji (standard emoji). Both [Emoji] and [Emote] -implement [IEmote] and are valid options. - -# [Adding a reaction to another message](#tab/emoji-others) - -[!code-csharp[Emoji](samples/emoji-others.cs)] - -# [Adding a reaction to a sent message](#tab/emoji-self) - -[!code-csharp[Emoji](samples/emoji-self.cs)] - -*** - -[AddReactionAsync]: xref:Discord.IMessage.AddReactionAsync* - -## What is a "preemptive rate limit?" - -A preemptive rate limit is Discord.Net's way of telling you to slow -down before you get hit by the real rate limit. Hitting a real rate -limit might prevent your entire client from sending any requests for -a period of time. This is calculated based on the HTTP header -returned by a Discord response. - -## Why am I getting so many preemptive rate limits when I try to add more than one reactions? - -This is due to how HTML header works, mistreating -0.25sec/action to 1sec. This causes the lib to throw preemptive rate -limit more frequently than it should for methods such as adding -reactions. - -## Can I opt-out of preemptive rate limits? - -Unfortunately, not at the moment. See [#401](https://github.com/RogueException/Discord.Net/issues/401). - -[IChannel]: xref:Discord.IChannel -[ICategoryChannel]: xref:Discord.ICategoryChannel -[IGuildChannel]: xref:Discord.IGuildChannel -[ITextChannel]: xref:Discord.ITextChannel -[IGuild]: xref:Discord.IGuild -[IVoiceChannel]: xref:Discord.IVoiceChannel -[IGuildUser]: xref:Discord.IGuildUser -[IMessageChannel]: xref:Discord.IMessageChannel -[IUserMessage]: xref:Discord.IUserMessage -[IEmote]: xref:Discord.IEmote -[Emote]: xref:Discord.Emote -[Emoji]: xref:Discord.Emoji \ No newline at end of file diff --git a/docs/faq/basics/client-basics.md b/docs/faq/basics/client-basics.md deleted file mode 100644 index 1176ee3fd..000000000 --- a/docs/faq/basics/client-basics.md +++ /dev/null @@ -1,94 +0,0 @@ ---- -uid: FAQ.Basics.ClientBasics -title: Basic Questions about Client ---- - -# Client Basics Questions - -In the following section, you will find commonly asked questions and -answers about common issues that you may face when utilizing the -various clients offered by the library. - -## My client keeps returning 401 upon logging in! - -> [!WARNING] -> Userbot/selfbot (logging in with a user token) is no -> longer supported with this library starting from 2.0, as -> logging in under a user account may result in account termination. -> -> For more information, see issue [827] & [958], as well as the official -> [Discord API Terms of Service]. - -There are few possible reasons why this may occur. - -1. You are not using the appropriate [TokenType]. If you are using a - bot account created from the Discord Developer portal, you should - be using `TokenType.Bot`. -2. You are not using the correct login credentials. Please keep in - mind that a token is **different** from a *client secret*. - -[TokenType]: xref:Discord.TokenType -[827]: https://github.com/RogueException/Discord.Net/issues/827 -[958]: https://github.com/RogueException/Discord.Net/issues/958 -[Discord API Terms of Service]: https://discord.com/developers/docs/legal - -## How do I do X, Y, Z when my bot connects/logs on? Why do I get a `NullReferenceException` upon calling any client methods after connect? - -Your bot should **not** attempt to interact in any way with -guilds/servers until the [Ready] event fires. When the bot -connects, it first has to download guild information from -Discord for you to get access to any server -information; the client is not ready at this point. - -Technically, the [GuildAvailable] event fires once the data for a -particular guild has downloaded; however, it is best to wait for all -guilds to be downloaded. Once all downloads are complete, the [Ready] -event is triggered, then you can proceed to do whatever you like. - -[Ready]: xref:Discord.WebSocket.DiscordSocketClient.Ready -[GuildAvailable]: xref:Discord.WebSocket.BaseSocketClient.GuildAvailable - -## How do I get a message's previous content when that message is edited? - -If you need to do anything with messages (e.g., checking Reactions, -checking the content of edited/deleted messages), you must set the -[MessageCacheSize] in your [DiscordSocketConfig] settings in order to -use the cached message entity. Read more about it [here](xref:Guides.Concepts.Events#cacheable). - -1. Message Cache must be enabled. -2. Hook the MessageUpdated event. This event provides a *before* and - *after* object. -3. Only messages received *after* the bot comes online will be - available in the cache. - -[MessageCacheSize]: xref:Discord.WebSocket.DiscordSocketConfig.MessageCacheSize -[DiscordSocketConfig]: xref:Discord.WebSocket.DiscordSocketConfig -[MessageUpdated]: xref:Discord.WebSocket.BaseSocketClient.MessageUpdated - -## What is a shard/sharded client, and how is it different from the `DiscordSocketClient`? -As your bot grows in popularity, it is recommended that you should section your bot off into separate processes. -The [DiscordShardedClient] is essentially a class that allows you to easily create and manage multiple [DiscordSocketClient] -instances, with each one serving a different amount of guilds. - -There are very few differences from the [DiscordSocketClient] class, and it is very straightforward -to modify your existing code to use a [DiscordShardedClient] when necessary. - -1. You need to specify the total amount of shards, or shard ids, via [DiscordShardedClient]'s constructors. -2. The [Connected], [Disconnected], [Ready], and [LatencyUpdated] events - are replaced with [ShardConnected], [ShardDisconnected], [ShardReady], and [ShardLatencyUpdated]. -3. Every event handler you apply/remove to the [DiscordShardedClient] is applied/removed to each shard. - If you wish to control a specific shard's events, you can access an individual shard through the `Shards` property. - -If you do not wish to use the [DiscordShardedClient] and instead reuse the same [DiscordSocketClient] code and manually shard them, -you can do so by specifying the [ShardId] for the [DiscordSocketConfig] and pass that to the [DiscordSocketClient]'s constructor. - -[DiscordSocketClient]: xref:Discord.WebSocket.DiscordSocketClient -[DiscordShardedClient]: xref:Discord.WebSocket.DiscordShardedClient -[Connected]: xref:Discord.WebSocket.DiscordSocketClient.Connected -[Disconnected]: xref:Discord.WebSocket.DiscordSocketClient.Disconnected -[LatencyUpdated]: xref:Discord.WebSocket.DiscordSocketClient.LatencyUpdated -[ShardConnected]: xref:Discord.WebSocket.DiscordShardedClient.ShardConnected -[ShardDisconnected]: xref:Discord.WebSocket.DiscordShardedClient.ShardDisconnected -[ShardReady]: xref:Discord.WebSocket.DiscordShardedClient.ShardReady -[ShardLatencyUpdated]: xref:Discord.WebSocket.DiscordShardedClient.ShardLatencyUpdated -[ShardId]: xref:Discord.WebSocket.DiscordSocketConfig.ShardId diff --git a/docs/faq/basics/getting-started.md b/docs/faq/basics/getting-started.md deleted file mode 100644 index e254226d0..000000000 --- a/docs/faq/basics/getting-started.md +++ /dev/null @@ -1,82 +0,0 @@ ---- -uid: FAQ.Basics.GetStarted -title: Beginner Questions / How to Get Started ---- - -# Basic Concepts / Getting Started - -In this following section, you will find commonly asked questions and -answers about how to get started with Discord.Net, as well as basic -introduction to the Discord API ecosystem. - -## How do I add my bot to my server/guild? - -You can do so by using the [permission calculator] provided -by [FiniteReality]. -This tool allows you to set permissions that the bot will be assigned -with, and invite the bot into your guild. With this method, bots will -also be assigned a unique role that a regular user cannot use; this -is what we call a `Managed` role. Because you cannot assign this -role to any other users, it is much safer than creating a single -role which, intentionally or not, can be applied to other users -to escalate their privilege. - -[FiniteReality]: https://github.com/FiniteReality/permissions-calculator -[permission calculator]: https://finitereality.github.io/permissions-calculator - -## What is a token? - -A token is a credential used to log into an account. This information -should be kept **private** and for your eyes only. Anyone with your -token can log into your account. This risk applies to both user -and bot accounts. That also means that you should **never** hardcode -your token or add it into source control, as your identity may be -stolen by scrape bots on the internet that scours through -constantly to obtain a token. - -## What is a client/user/object ID? - -Each user and object on Discord has its own snowflake ID generated -based on various conditions. - -![Snowflake Generation](images/snowflake.png) - -Anyone can see the ID; it is public. It is merely used to -identify an object in the Discord ecosystem. Many things in the -Discord ecosystem require an ID to retrieve or identify the said -object. - -There are 2 common ways to obtain the said ID. - -### [Discord Developer Mode](#tab/dev-mode) - -By enabling the developer mode you can right click on most objects -to obtain their snowflake IDs (please note that this may not apply to -all objects, such as role IDs, or DM channel IDs). - -![Developer Mode](images/dev-mode.png) - -### [Escape Character](#tab/escape-char) - -You can escape an object by using `\` in front the object in the -Discord client. For example, when you do `\@Example#1234` in chat, -it will return the user ID of the aforementioned user. - -![Escaping mentions](images/mention-escape.png) - -*** - -## How do I get the role ID? - -> [!WARNING] -> Right-clicking on the role and copying the ID will **not** work. -> This will only copy the message ID. - -Several common ways to do this: - -1. (Easiest) Right click on the role either in the Server Settings - or in the user's role list. - ![Roles](images/role-copy.png) -2. Make the role mentionable and mention the role, and escape it - using the `\` character in front. -3. Inspect the roles collection within the guild via your debugger. \ No newline at end of file diff --git a/docs/faq/basics/images/dev-mode.png b/docs/faq/basics/images/dev-mode.png deleted file mode 100644 index fd20b95d188751a2f3b4268e7ba7294b71afaf06..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 80742 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 B0lxqM diff --git a/docs/faq/basics/images/mention-escape.png b/docs/faq/basics/images/mention-escape.png deleted file mode 100644 index 92797806155b8396211d6b0014d4f0e8d2aadfa9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19611 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 diff --git a/docs/faq/basics/images/snowflake.png b/docs/faq/basics/images/snowflake.png deleted file mode 100644 index 816a10eee07e156ec4e27ee90a000512b1f12463..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 73062 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 XrU2O)WYlV=ATMnV1NF+Mj{p7##ChBc diff --git a/docs/faq/basics/samples/cast.cs b/docs/faq/basics/samples/cast.cs deleted file mode 100644 index 73ef5237f..000000000 --- a/docs/faq/basics/samples/cast.cs +++ /dev/null @@ -1,15 +0,0 @@ -public async Task MessageReceivedHandler(SocketMessage msg) -{ - // Option 1: - // Using the `as` keyword, which will return `null` if the object isn't the desired type. - var usermsg = msg as SocketUserMessage; - // We bail when the message isn't the desired type. - if (msg == null) return; - - // Option 2: - // Using the `is` keyword to cast (C#7 or above only) - if (msg is SocketUserMessage usermsg) - { - // Do things - } -} \ No newline at end of file diff --git a/docs/faq/basics/samples/emoji-others.cs b/docs/faq/basics/samples/emoji-others.cs deleted file mode 100644 index dd3e6317f..000000000 --- a/docs/faq/basics/samples/emoji-others.cs +++ /dev/null @@ -1,18 +0,0 @@ -// bail if the message is not a user one (system messages cannot have reactions) -var usermsg = msg as IUserMessage; -if (usermsg == null) return; - -// standard Unicode emojis -Emoji emoji = new Emoji("👍"); -// or -// Emoji emoji = new Emoji("\uD83D\uDC4D"); - -// custom guild emotes -Emote emote = Emote.Parse("<:dotnet:232902710280716288>"); -// using Emote.TryParse may be safer in regards to errors being thrown; -// please note that the method does not verify if the emote exists, -// it simply creates the Emote object for you. - -// add the reaction to the message -await usermsg.AddReactionAsync(emoji); -await usermsg.AddReactionAsync(emote); \ No newline at end of file diff --git a/docs/faq/basics/samples/emoji-self.cs b/docs/faq/basics/samples/emoji-self.cs deleted file mode 100644 index cd4cff171..000000000 --- a/docs/faq/basics/samples/emoji-self.cs +++ /dev/null @@ -1,17 +0,0 @@ -// capture the message you're sending in a variable -var msg = await channel.SendMessageAsync("This will have reactions added."); - -// standard Unicode emojis -Emoji emoji = new Emoji("👍"); -// or -// Emoji emoji = new Emoji("\uD83D\uDC4D"); - -// custom guild emotes -Emote emote = Emote.Parse("<:dotnet:232902710280716288>"); -// using Emote.TryParse may be safer in regards to errors being thrown; -// please note that the method does not verify if the emote exists, -// it simply creates the Emote object for you. - -// add the reaction to the message -await msg.AddReactionAsync(emoji); -await msg.AddReactionAsync(emote); \ No newline at end of file diff --git a/docs/faq/commands/dependency-injection.md b/docs/faq/commands/dependency-injection.md deleted file mode 100644 index 0a5de3e32..000000000 --- a/docs/faq/commands/dependency-injection.md +++ /dev/null @@ -1,54 +0,0 @@ ---- -uid: FAQ.Commands.DI -title: Questions about Dependency Injection with Commands ---- - -# Dependency-injection-related Questions - -In the following section, you will find common questions and answers -to utilizing dependency injection with @Discord.Commands, as well as -common troubleshooting steps regarding DI. - -## What is a service? Why does my module not hold any data after execution? - -In Discord.Net, modules are created similarly to ASP.NET, meaning -that they have a transient nature; modules are spawned whenever a -request is received, and are killed from memory when the execution -finishes. In other words, you cannot store persistent -data inside a module. Consider using a service if you wish to -workaround this. - -Service is often used to hold data externally so that they persist -throughout execution. Think of it like a chest that holds -whatever you throw at it that won't be affected by anything unless -you want it to. Note that you should also learn Microsoft's -implementation of [Dependency Injection] \([video]) before proceeding, -as well as how it works in [Discord.Net](xref:Guides.Commands.DI#usage-in-modules). - -A brief example of service and dependency injection can be seen below. - -[!code-csharp[DI](samples/DI.cs)] - -[Dependency Injection]: https://docs.microsoft.com/en-us/aspnet/core/fundamentals/dependency-injection -[video]: https://www.youtube.com/watch?v=QtDTfn8YxXg - -## Why is my `CommandService` complaining about a missing dependency? - -If you encounter an error similar to `Failed to create MyModule, -dependency MyExternalDependency was not found.`, you may have -forgotten to add the external dependency to the dependency container. - -Starting from Discord.Net 2.0, all dependencies required by each -module must be present when the module is loaded into the -[CommandService]. This means when loading the module, you must pass a -valid [IServiceProvider] with the dependency loaded before the module -can be successfully registered. - -For example, if your module, `MyModule`, requests a `DatabaseService` -in its constructor, the `DatabaseService` must be present in the -[IServiceProvider] when registering `MyModule`. - -[!code-csharp[Missing Dependencies](samples/missing-dep.cs)] - -[IServiceProvider]: xref:System.IServiceProvider -[CommandService]: xref:Discord.Commands.CommandService diff --git a/docs/faq/commands/general.md b/docs/faq/commands/general.md deleted file mode 100644 index de6d48dc1..000000000 --- a/docs/faq/commands/general.md +++ /dev/null @@ -1,147 +0,0 @@ ---- -uid: FAQ.Commands.General -title: General Questions about Commands ---- - -# Command-related Questions - -In the following section, you will find commonly asked questions and -answered regarding general command usage when using @Discord.Commands. - -## How can I restrict some of my commands so only specific users can execute them? - -Based on how you want to implement the restrictions, you can use the -built-in [RequireUserPermission] precondition, which allows you to -restrict the command based on the user's current permissions in the -guild or channel (*e.g., `GuildPermission.Administrator`, -`ChannelPermission.ManageMessages`*). - -If, however, you wish to restrict the commands based on the user's -role, you can either create your custom precondition or use -Joe4evr's [Preconditions Addons] that provides a few custom -preconditions that aren't provided in the stock library. -Its source can also be used as an example for creating your -custom preconditions. - -[RequireUserPermission]: xref:Discord.Commands.RequireUserPermissionAttribute -[Preconditions Addons]: https://github.com/Joe4evr/Discord.Addons/tree/master/src/Discord.Addons.Preconditions - -## Why am I getting an error about `Assembly.GetEntryAssembly`? - -You may be confusing @Discord.Commands.CommandService.AddModulesAsync* -with @Discord.Commands.CommandService.AddModuleAsync*. The former -is used to add modules via the assembly, while the latter is used to -add a single module. - -## What does [Remainder] do in the command signature? - -The [RemainderAttribute] leaves the string unparsed, meaning you -do not have to add quotes around the text for the text to be -recognized as a single object. Please note that if your method has -multiple parameters, the remainder attribute can only be applied to -the last parameter. - -[!code-csharp[Remainder](samples/Remainder.cs)] - -[RemainderAttribute]: xref:Discord.Commands.RemainderAttribute - -## Discord.Net keeps saying that a `MessageReceived` handler is blocking the gateway, what should I do? - -By default, the library warns the user about any long-running event -handler that persists for **more than 3 seconds**. Any event -handlers that are run on the same thread as the gateway task, the task -in charge of keeping the connection alive, may block the processing of -heartbeat, and thus terminating the connection. - -In this case, the library detects that a `MessageReceived` -event handler is blocking the gateway thread. This warning is -typically associated with the command handler as it listens for that -particular event. If the command handler is blocking the thread, then -this **might** mean that you have a long-running command. - -> [!NOTE] -> In rare cases, runtime errors can also cause blockage, usually -> associated with Mono, which is not supported by this library. - -To prevent a long-running command from blocking the gateway -thread, a flag called [RunMode] is explicitly designed to resolve -this issue. - -There are 2 main `RunMode`s. - -1. `RunMode.Sync` -2. `RunMode.Async` - -`Sync` is the default behavior and makes the command to be run on the -same thread as the gateway one. `Async` will spin the task off to a -different thread from the gateway one. - -> [!IMPORTANT] -> While specifying `RunMode.Async` allows the command to be spun off -> to a different thread, keep in mind that by doing so, there will be -> **potentially unwanted consequences**. Before applying this flag, -> please consider whether it is necessary to do so. -> -> Further details regarding `RunMode.Async` can be found below. - -You can set the `RunMode` either by specifying it individually via -the `CommandAttribute` or by setting the global default with -the [DefaultRunMode] flag under `CommandServiceConfig`. - -# [CommandAttribute](#tab/cmdattrib) - -[!code-csharp[Command Attribute](samples/runmode-cmdattrib.cs)] - -# [CommandServiceConfig](#tab/cmdconfig) - -[!code-csharp[Command Service Config](samples/runmode-cmdconfig.cs)] - -*** - -*** - -[RunMode]: xref:Discord.Commands.RunMode -[CommandAttribute]: xref:Discord.Commands.CommandAttribute -[DefaultRunMode]: xref:Discord.Commands.CommandServiceConfig.DefaultRunMode - -## How does `RunMode.Async` work, and why is Discord.Net *not* using it by default? - -`RunMode.Async` works by spawning a new `Task` with an unawaited -[Task.Run], essentially making the task that is used to invoke the -command task to be finished on a different thread. This design means -that [ExecuteAsync] will be forced to return a successful -[ExecuteResult] regardless of the actual execution result. - -The following are the known caveats with `RunMode.Async`, - -1. You can potentially introduce a race condition. -2. Unnecessary overhead caused by the [async state machine]. -3. [ExecuteAsync] will immediately return [ExecuteResult] instead of - other result types (this is particularly important for those who wish - to utilize [RuntimeResult] in 2.0). -4. Exceptions are swallowed in the `ExecuteAsync` result. - -However, there are ways to remedy some of these. - -For #3, in Discord.Net 2.0, the library introduces a new event called -[CommandService.CommandExecuted], which is raised whenever the command is executed. -This event will be raised regardless of -the `RunMode` type and will return the appropriate execution result -and the associated @Discord.Commands.CommandInfo if applicable. - -For #4, exceptions are caught in [CommandService.Log] event under -[LogMessage.Exception] as [CommandException] and in the -[CommandService.CommandExecuted] event under the [IResult] as -[ExecuteResult.Exception]. - -[Task.Run]: https://docs.microsoft.com/en-us/dotnet/api/system.threading.tasks.task.run -[async state machine]: https://www.red-gate.com/simple-talk/dotnet/net-tools/c-async-what-is-it-and-how-does-it-work/ -[ExecuteAsync]: xref:Discord.Commands.CommandService.ExecuteAsync* -[ExecuteResult]: xref:Discord.Commands.ExecuteResult -[RuntimeResult]: xref:Discord.Commands.RuntimeResult -[CommandService.CommandExecuted]: xref:Discord.Commands.CommandService.CommandExecuted -[CommandService.Log]: xref:Discord.Commands.CommandService.Log -[LogMessage.Exception]: xref:Discord.LogMessage.Exception* -[ExecuteResult.Exception]: xref:Discord.Commands.ExecuteResult.Exception* -[CommandException]: xref:Discord.Commands.CommandException -[IResult]: xref:Discord.Commands.IResult \ No newline at end of file diff --git a/docs/faq/commands/samples/DI.cs b/docs/faq/commands/samples/DI.cs deleted file mode 100644 index ce4454bc2..000000000 --- a/docs/faq/commands/samples/DI.cs +++ /dev/null @@ -1,28 +0,0 @@ -public class MyService -{ - public string MyCoolString { get; set; } -} -public class Setup -{ - public IServiceProvider BuildProvider() => - new ServiceCollection() - .AddSingleton() - .BuildServiceProvider(); -} -public class MyModule : ModuleBase -{ - // Inject via public settable prop - public MyService MyService { get; set; } - - // ...or via the module's constructor - - // private readonly MyService _myService; - // public MyModule (MyService myService) => _myService = myService; - - [Command("string")] - public Task GetOrSetStringAsync(string input) - { - if (string.IsNullOrEmpty(_myService.MyCoolString)) _myService.MyCoolString = input; - return ReplyAsync(_myService.MyCoolString); - } -} \ No newline at end of file diff --git a/docs/faq/commands/samples/Remainder.cs b/docs/faq/commands/samples/Remainder.cs deleted file mode 100644 index 337fb6e45..000000000 --- a/docs/faq/commands/samples/Remainder.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Input: -// !echo Coffee Cake - -// Output: -// Coffee Cake -[Command("echo")] -public Task EchoRemainderAsync([Remainder]string text) => ReplyAsync(text); - -// Output: -// CommandError.BadArgCount -[Command("echo-hassle")] -public Task EchoAsync(string text) => ReplyAsync(text); - -// The message would be seen as having multiple parameters, -// while the method only accepts one. -// Wrapping the message in quotes solves this. -// This way, the system knows the entire message is to be parsed as a -// single String. -// e.g., -// !echo "Coffee Cake" \ No newline at end of file diff --git a/docs/faq/commands/samples/missing-dep.cs b/docs/faq/commands/samples/missing-dep.cs deleted file mode 100644 index d3fb9085b..000000000 --- a/docs/faq/commands/samples/missing-dep.cs +++ /dev/null @@ -1,29 +0,0 @@ -public class MyModule : ModuleBase -{ - private readonly DatabaseService _dbService; - public MyModule(DatabaseService dbService) - => _dbService = dbService; -} -public class CommandHandler -{ - private readonly CommandService _commands; - private readonly IServiceProvider _services; - public CommandHandler(DiscordSocketClient client) - { - _services = new ServiceCollection() - .AddService() - .AddService(client) - // We are missing DatabaseService! - .BuildServiceProvider(); - } - public async Task RegisterCommandsAsync() - { - // ... - // The method fails here because DatabaseService is a required - // dependency and cannot be resolved by the dependency - // injection service at runtime since the service is not - // registered in this instance of _services. - await _commands.AddModulesAsync(Assembly.GetEntryAssembly(), _services); - // ... - } -} \ No newline at end of file diff --git a/docs/faq/commands/samples/runmode-cmdattrib.cs b/docs/faq/commands/samples/runmode-cmdattrib.cs deleted file mode 100644 index 253acc4a9..000000000 --- a/docs/faq/commands/samples/runmode-cmdattrib.cs +++ /dev/null @@ -1,7 +0,0 @@ -[Command("process", RunMode = RunMode.Async)] -public async Task ProcessAsync(string input) -{ - // Does heavy calculation here. - await Task.Delay(TimeSpan.FromMinute(1)); - await ReplyAsync(input); -} \ No newline at end of file diff --git a/docs/faq/commands/samples/runmode-cmdconfig.cs b/docs/faq/commands/samples/runmode-cmdconfig.cs deleted file mode 100644 index 11d9cc295..000000000 --- a/docs/faq/commands/samples/runmode-cmdconfig.cs +++ /dev/null @@ -1,10 +0,0 @@ -public class Setup -{ - private readonly CommandService _command; - - public Setup() - { - var config = new CommandServiceConfig{ DefaultRunMode = RunMode.Async }; - _command = new CommandService(config); - } -} \ No newline at end of file diff --git a/docs/faq/misc/glossary.md b/docs/faq/misc/glossary.md deleted file mode 100644 index 4b661f65c..000000000 --- a/docs/faq/misc/glossary.md +++ /dev/null @@ -1,82 +0,0 @@ ---- -uid: FAQ.Glossary -title: Common Terminologies / Glossary ---- - -# Glossary - -This is an additional chapter for quick references to various common -types that you may see within Discord.Net. To see more information -regarding each type of object, click on the object to navigate -to our API documentation page where you might find more explanation -about it. - -## Common Types - -* A **Guild** ([IGuild]) is an isolated collection of users and -channels, and are often referred to as "servers". - - Example: [Discord API](https://discord.gg/jkrBmQR) -* A **Channel** ([IChannel]) represents a generic channel. - - Example: #dotnet_discord-net - - See [Channel Types](#channel-types) - -[IGuild]: xref:Discord.IGuild -[IChannel]: xref:Discord.IChannel - -## Channel Types - -### Message Channels -* A **Text Channel** ([ITextChannel]) is a message channel from a -Guild. -* A **DM Channel** ([IDMChannel]) is a message channel from a DM. -* A **Group Channel** ([IGroupChannel]) is a message channel from a -Group. - - This is rarely used due to the bot's inability to join groups. -* A **Private Channel** ([IPrivateChannel]) is a DM or a Group. -* A **Message Channel** ([IMessageChannel]) can be any of the above. - -### Misc Channels -* A **Guild Channel** ([IGuildChannel]) is a guild channel in a guild. - - This can be any channels that may exist in a guild. -* A **Voice Channel** ([IVoiceChannel]) is a voice channel in a guild. -* A **Category Channel** ([ICategoryChannel]) (2.0+) is a category that -holds one or more sub-channels. -* A **Nested Channel** ([INestedChannel]) (2.0+) is a channel that can -exist under a category. - -[INestedChannel]: xref:Discord.INestedChannel -[IGuildChannel]: xref:Discord.IGuildChannel -[IMessageChannel]: xref:Discord.IMessageChannel -[ITextChannel]: xref:Discord.ITextChannel -[IGroupChannel]: xref:Discord.IGroupChannel -[IDMChannel]: xref:Discord.IDMChannel -[IPrivateChannel]: xref:Discord.IPrivateChannel -[IVoiceChannel]: xref:Discord.IVoiceChannel -[ICategoryChannel]: xref:Discord.ICategoryChannel - -## Emoji Types - -* An **Emote** ([Emote]) is a custom emote from a guild. - - Example: `<:dotnet:232902710280716288>` -* An **Emoji** ([Emoji]) is a Unicode emoji. - - Example: `👍` - -[Emote]: xref:Discord.Emote -[Emoji]: xref:Discord.Emoji - -## Activity Types - -* A **Game** ([Game]) refers to a user's game activity. -* A **Rich Presence** ([RichGame]) refers to a user's detailed -gameplay status. - - Visit [Rich Presence Intro] on Discord docs for more info. -* A **Streaming Status** ([StreamingGame]) refers to user's activity -for streaming on services such as Twitch. -* A **Spotify Status** ([SpotifyGame]) (2.0+) refers to a user's -activity for listening to a song on Spotify. - -[Game]: xref:Discord.Game -[RichGame]: xref:Discord.RichGame -[StreamingGame]: xref:Discord.StreamingGame -[SpotifyGame]: xref:Discord.SpotifyGame -[Rich Presence Intro]: https://discord.com/developers/docs/rich-presence/best-practices diff --git a/docs/faq/misc/legacy.md b/docs/faq/misc/legacy.md deleted file mode 100644 index 5931579d3..000000000 --- a/docs/faq/misc/legacy.md +++ /dev/null @@ -1,29 +0,0 @@ ---- -uid: FAQ.Legacy -title: Questions about Legacy Versions ---- - -# Legacy Questions - -This section refers to legacy library-related questions that do not -apply to the latest or recent version of the Discord.Net library. - -## X, Y, Z does not work! It doesn't return a valid value anymore. - -If you are currently using an older version of the stable branch, -please upgrade to the latest pre-release version to ensure maximum -compatibility. Several features may be broken in older -versions and will likely not be fixed in the version branch due to -their breaking nature. - -Visit the repo's [release tag] to see the latest public pre-release. - -[release tag]: https://github.com/RogueException/Discord.Net/releases - -## I came from an earlier version of Discord.Net 1.0, and DependencyMap doesn't seem to exist anymore in the later revision? What happened to it? - -The `DependencyMap` has been replaced with Microsoft's -[DependencyInjection] Abstractions. An example usage can be seen -[here](https://github.com/foxbot/DiscordBotBase/blob/csharp/src/DiscordBot/Program.cs#L36). - -[DependencyInjection]: https://docs.microsoft.com/en-us/aspnet/core/fundamentals/dependency-injection \ No newline at end of file diff --git a/docs/faq/toc.yml b/docs/faq/toc.yml deleted file mode 100644 index 393e948f6..000000000 --- a/docs/faq/toc.yml +++ /dev/null @@ -1,18 +0,0 @@ -- name: Basic Concepts - items: - - name: Getting Started - topicUid: FAQ.Basics.GetStarted - - name: Basic Operations - topicUid: FAQ.Basics.BasicOp - - name: Client Basics - topicUid: FAQ.Basics.ClientBasics -- name: Commands - items: - - name: General - topicUid: FAQ.Commands.General - - name: Dependency Injection - topicUid: FAQ.Commands.DI -- name: Glossary - topicUid: FAQ.Glossary -- name: Legacy or Upgrade - topicUid: FAQ.Legacy diff --git a/docs/index.md b/docs/index.md index 9a617344a..063ec9e16 100644 --- a/docs/index.md +++ b/docs/index.md @@ -19,9 +19,29 @@ Discord.Net Labs is an experimental fork of Discord.Net that implements the newe ## Where to begin? -If this is your first time using Discord.Net, you should refer to the -[Intro](xref:Guides.Introduction) for tutorials. +If you are new to Discord.NET in general, you should refer their +[Documentation](https://docs.stillu.cc/) for guides & examples. + +Is this your first time using Labs, but you are already familiar with Discord.NET? +Refer to our [Guides](xref:Guides.Introduction) + +### Slashcommands: + +Examples on how slashcommands are created, handled & responded to is found +[Here](xref:Guides.SlashCommands.Intro) + +### User & Message commands: + +Creating User & Message commands is found +[Here](xref:Guides.ContextCommands.Creating), +interacting with them is covered +[Here](xref:Guides.ContextCommands.Reveiving). + +### Message components + +Handling & creating message components such as buttons & dropdown menu's is found [Here](xref:Guides.MessageComponents.GettingStarted) More experienced users might want to refer to the [API Documentation](xref:API.Docs) for a breakdown of the individual objects in the library. + diff --git a/docs/marketing/logo/SVG/Combinationmark White Background.svg b/docs/marketing/logo/SVG/Combinationmark White Background.svg index 5f59df1a5..249bba54c 100644 --- a/docs/marketing/logo/SVG/Combinationmark White Background.svg +++ b/docs/marketing/logo/SVG/Combinationmark White Background.svg @@ -1,58 +1,30 @@ - - - \ No newline at end of file diff --git a/docs/marketing/logo/SVG/Combinationmark White Border.svg b/docs/marketing/logo/SVG/Combinationmark White Border.svg new file mode 100644 index 000000000..b9a259a38 --- /dev/null +++ b/docs/marketing/logo/SVG/Combinationmark White Border.svg @@ -0,0 +1,30 @@ + + + + Combinationmark White + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/toc.yml b/docs/toc.yml index bea010c5a..a1251a728 100644 --- a/docs/toc.yml +++ b/docs/toc.yml @@ -2,8 +2,7 @@ href: guides/ topicUid: Guides.Introduction - name: FAQ - href: faq/ - topicUid: FAQ.Basics.GetStarted + topicHref: ../FAQ.md - name: API Documentation href: api/ topicUid: API.Docs