Discord.Net is distributed through the NuGet package manager, so it is
recommended for you to install the library that way.
Alternatively, you may compile from the source and install the library
yourself.
Currently, Discord.Net targets .NET Standard 1.3 and 2.0.
Since Discord.Net is built on top of .NET Standard, it is also
recommended to create applications using .NET Core,
although it is not required.
When using .NET Framework, it is suggested to
target .NET Framework 4.6.1
or higher.
[!WARNING]
Using this library with Mono is not recommended until further
notice. It is known to have issues with the library's WebSockets
implementation and may crash the application upon startup.
Release builds of Discord.Net will be published to the
official NuGet feed.
Development builds of Discord.Net, as well as add-ons, will be
published to our MyGet feed. See
@Guides.GettingStarted.Installation.Nightlies to learn more.
Discord.Net
.Discord.Net
package.Discord.Net
.Discord.Net
to your .csproj.[!codeSample .csproj]
dotnet add package Discord.Net
.In order to compile Discord.Net, you will need the following:
The .NET Core and Docker (Preview) workload is required during Visual
Studio installation.
For an older operating system such as Windows 7 or earlier that does
not natively support WebSocket, you may encounter
@System.PlatformNotSupportedException upon connection.
You may resolve this by either targeting .NET Core 2.1 or later, or
by installing one or more custom packages as listed below.
First, make sure your installed SDK supports .NET Core 2.1.
Enter dotnet --version
; the version number should be equal to or
above 2.1.300
. If not, visit the .NET Core SDK website to download
the latest version.
Next, ensure your project is set to target Core 2.1; you should replace
the <TargetFramework>
tag in your project file to netcoreapp2.1
or
above. Alternatively, you may specify the target framework upon build
using the -f
or --framework
parameter.
dotnet build -c Release -f netcoreapp2.1
First, install the following packages through NuGet, or, if you prefer
compile them yourself:
Discord.Net.Providers.WS4Net
Discord.Net.Providers.UDPClient
[!NOTE]
Discord.Net.Providers.UDPClient
is only required if your
bot will be utilizing voice chat.
Next, you will need to configure your DiscordSocketClient to use
these custom providers over the default ones.
To do this, set the WebSocketProvider
and the optional
UdpSocketProvider
properties on the DiscordSocketConfig that you
are passing into your client.
[!code-csharpExample]