diff --git a/Discord.Net.sln b/Discord.Net.sln
index 9663b21dc..c0715c29b 100644
--- a/Discord.Net.sln
+++ b/Discord.Net.sln
@@ -3,11 +3,6 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.26014.0
MinimumVisualStudioVersion = 10.0.40219.1
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{F7F3E124-93C7-4846-AE87-9CE12BD82859}"
- ProjectSection(SolutionItems) = preProject
- README.md = README.md
- EndProjectSection
-EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Discord.Net", "src\Discord.Net\Discord.Net.csproj", "{496DB20A-A455-4D01-B6BC-90FE6D7C6B81}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Discord.Net.Core", "src\Discord.Net.Core\Discord.Net.Core.csproj", "{91E9E7BD-75C9-4E98-84AA-2C271922E5C2}"
@@ -26,6 +21,12 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Providers", "Providers", "{
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Discord.Net.Providers.WS4Net", "src\Discord.Net.Providers.WS4Net\Discord.Net.Providers.WS4Net.csproj", "{6BDEEC08-417B-459F-9CA3-FF8BAB18CAC7}"
EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Discord.Net.API", "src\Discord.Net.API\Discord.Net.API.csproj", "{547261FC-8BA3-40EA-A040-A38ABDAA8D72}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Discord.Net.Providers.UDPClient", "src\Discord.Net.Providers.UDPClient\Discord.Net.Providers.UDPClient.csproj", "{ABC9F4B9-2452-4725-B522-754E0A02E282}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Extensions", "Extensions", "{CC3D4B1C-9DE0-448B-8AE7-F3F1F3EC5C3A}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -120,6 +121,30 @@ Global
{6BDEEC08-417B-459F-9CA3-FF8BAB18CAC7}.Release|x64.Build.0 = Release|x64
{6BDEEC08-417B-459F-9CA3-FF8BAB18CAC7}.Release|x86.ActiveCfg = Release|x86
{6BDEEC08-417B-459F-9CA3-FF8BAB18CAC7}.Release|x86.Build.0 = Release|x86
+ {547261FC-8BA3-40EA-A040-A38ABDAA8D72}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {547261FC-8BA3-40EA-A040-A38ABDAA8D72}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {547261FC-8BA3-40EA-A040-A38ABDAA8D72}.Debug|x64.ActiveCfg = Debug|x64
+ {547261FC-8BA3-40EA-A040-A38ABDAA8D72}.Debug|x64.Build.0 = Debug|x64
+ {547261FC-8BA3-40EA-A040-A38ABDAA8D72}.Debug|x86.ActiveCfg = Debug|x86
+ {547261FC-8BA3-40EA-A040-A38ABDAA8D72}.Debug|x86.Build.0 = Debug|x86
+ {547261FC-8BA3-40EA-A040-A38ABDAA8D72}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {547261FC-8BA3-40EA-A040-A38ABDAA8D72}.Release|Any CPU.Build.0 = Release|Any CPU
+ {547261FC-8BA3-40EA-A040-A38ABDAA8D72}.Release|x64.ActiveCfg = Release|x64
+ {547261FC-8BA3-40EA-A040-A38ABDAA8D72}.Release|x64.Build.0 = Release|x64
+ {547261FC-8BA3-40EA-A040-A38ABDAA8D72}.Release|x86.ActiveCfg = Release|x86
+ {547261FC-8BA3-40EA-A040-A38ABDAA8D72}.Release|x86.Build.0 = Release|x86
+ {ABC9F4B9-2452-4725-B522-754E0A02E282}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {ABC9F4B9-2452-4725-B522-754E0A02E282}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {ABC9F4B9-2452-4725-B522-754E0A02E282}.Debug|x64.ActiveCfg = Debug|x64
+ {ABC9F4B9-2452-4725-B522-754E0A02E282}.Debug|x64.Build.0 = Debug|x64
+ {ABC9F4B9-2452-4725-B522-754E0A02E282}.Debug|x86.ActiveCfg = Debug|x86
+ {ABC9F4B9-2452-4725-B522-754E0A02E282}.Debug|x86.Build.0 = Debug|x86
+ {ABC9F4B9-2452-4725-B522-754E0A02E282}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {ABC9F4B9-2452-4725-B522-754E0A02E282}.Release|Any CPU.Build.0 = Release|Any CPU
+ {ABC9F4B9-2452-4725-B522-754E0A02E282}.Release|x64.ActiveCfg = Release|x64
+ {ABC9F4B9-2452-4725-B522-754E0A02E282}.Release|x64.Build.0 = Release|x64
+ {ABC9F4B9-2452-4725-B522-754E0A02E282}.Release|x86.ActiveCfg = Release|x86
+ {ABC9F4B9-2452-4725-B522-754E0A02E282}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -127,7 +152,9 @@ Global
GlobalSection(NestedProjects) = preSolution
{BFC6DC28-0351-4573-926A-D4124244C04F} = {288C363D-A636-4EAE-9AC1-4698B641B26E}
{5688A353-121E-40A1-8BFA-B17B91FB48FB} = {288C363D-A636-4EAE-9AC1-4698B641B26E}
+ {078DD7E6-943D-4D09-AFC2-D2BA58B76C9C} = {CC3D4B1C-9DE0-448B-8AE7-F3F1F3EC5C3A}
{688FD1D8-7F01-4539-B2E9-F473C5D699C7} = {288C363D-A636-4EAE-9AC1-4698B641B26E}
{6BDEEC08-417B-459F-9CA3-FF8BAB18CAC7} = {B0657AAE-DCC5-4FBF-8E5D-1FB578CF3012}
+ {ABC9F4B9-2452-4725-B522-754E0A02E282} = {B0657AAE-DCC5-4FBF-8E5D-1FB578CF3012}
EndGlobalSection
EndGlobal
diff --git a/build.bat b/build.bat
index 203dfadd6..1de188f4e 100644
--- a/build.bat
+++ b/build.bat
@@ -1,17 +1,21 @@
@echo Off
dotnet restore
dotnet pack "src\Discord.Net" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
+dotnet pack "src\Discord.Net.API" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
dotnet pack "src\Discord.Net.Core" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
dotnet pack "src\Discord.Net.Commands" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
dotnet pack "src\Discord.Net.Rest" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
dotnet pack "src\Discord.Net.WebSocket" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
dotnet pack "src\Discord.Net.Rpc" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
dotnet pack "src\Discord.Net.Providers.WS4Net" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
+dotnet pack "src\Discord.Net.Providers.UDPClient" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
REM dotnet pack "src\Discord.Net\Discord.Net.csproj" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
+REM dotnet pack "src\Discord.Net.API\Discord.Net.API.csproj" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
REM dotnet pack "src\Discord.Net.Core\Discord.Net.Core.csproj" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
REM dotnet pack "src\Discord.Net.Commands\Discord.Net.Commands.csproj" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
REM dotnet pack "src\Discord.Net.Rest\Discord.Net.Rest.csproj" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
REM dotnet pack "src\Discord.Net.WebSocket\Discord.Net.WebSocket.csproj" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
REM dotnet pack "src\Discord.Net.Rpc\Discord.Net.Rpc.csproj" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
-REM dotnet pack "src\Discord.Net.Providers.WS4Net\Discord.Net.Providers.WS4Net.csproj" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
\ No newline at end of file
+REM dotnet pack "src\Discord.Net.Providers.WS4Net\Discord.Net.Providers.WS4Net.csproj" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
+REM dotnet pack "src\Discord.Net.Providers.UDPClient\Discord.Net.Providers.UDPClient.csproj" -c "%Configuration%" -o "artifacts" --version-suffix "%PrereleaseTag%"
\ No newline at end of file
diff --git a/src/Discord.Net.API/AssemblyInfo.cs b/src/Discord.Net.API/AssemblyInfo.cs
new file mode 100644
index 000000000..49872adaf
--- /dev/null
+++ b/src/Discord.Net.API/AssemblyInfo.cs
@@ -0,0 +1,8 @@
+using System.Runtime.CompilerServices;
+
+[assembly: InternalsVisibleTo("Discord.Net.Core")]
+[assembly: InternalsVisibleTo("Discord.Net.Rest")]
+[assembly: InternalsVisibleTo("Discord.Net.Rpc")]
+[assembly: InternalsVisibleTo("Discord.Net.WebSocket")]
+[assembly: InternalsVisibleTo("Discord.Net.Commands")]
+[assembly: InternalsVisibleTo("Discord.Net.Tests")]
\ No newline at end of file
diff --git a/src/Discord.Net.Core/API/Common/Application.cs b/src/Discord.Net.API/Common/Application.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Application.cs
rename to src/Discord.Net.API/Common/Application.cs
diff --git a/src/Discord.Net.Core/API/Common/Attachment.cs b/src/Discord.Net.API/Common/Attachment.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Attachment.cs
rename to src/Discord.Net.API/Common/Attachment.cs
diff --git a/src/Discord.Net.Core/API/Common/Ban.cs b/src/Discord.Net.API/Common/Ban.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Ban.cs
rename to src/Discord.Net.API/Common/Ban.cs
diff --git a/src/Discord.Net.Core/API/Common/Channel.cs b/src/Discord.Net.API/Common/Channel.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Channel.cs
rename to src/Discord.Net.API/Common/Channel.cs
diff --git a/src/Discord.Net.Core/Entities/Channels/ChannelType.cs b/src/Discord.Net.API/Common/ChannelType.cs
similarity index 100%
rename from src/Discord.Net.Core/Entities/Channels/ChannelType.cs
rename to src/Discord.Net.API/Common/ChannelType.cs
diff --git a/src/Discord.Net.Core/API/Common/Connection.cs b/src/Discord.Net.API/Common/Connection.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Connection.cs
rename to src/Discord.Net.API/Common/Connection.cs
diff --git a/src/Discord.Net.Core/Entities/Guilds/DefaultMessageNotifications.cs b/src/Discord.Net.API/Common/DefaultMessageNotifications.cs
similarity index 100%
rename from src/Discord.Net.Core/Entities/Guilds/DefaultMessageNotifications.cs
rename to src/Discord.Net.API/Common/DefaultMessageNotifications.cs
diff --git a/src/Discord.Net.Core/Entities/Messages/Direction.cs b/src/Discord.Net.API/Common/Direction.cs
similarity index 100%
rename from src/Discord.Net.Core/Entities/Messages/Direction.cs
rename to src/Discord.Net.API/Common/Direction.cs
diff --git a/src/Discord.Net.Core/API/Common/Embed.cs b/src/Discord.Net.API/Common/Embed.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Embed.cs
rename to src/Discord.Net.API/Common/Embed.cs
diff --git a/src/Discord.Net.Core/API/Common/EmbedAuthor.cs b/src/Discord.Net.API/Common/EmbedAuthor.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/EmbedAuthor.cs
rename to src/Discord.Net.API/Common/EmbedAuthor.cs
diff --git a/src/Discord.Net.Core/API/Common/EmbedField.cs b/src/Discord.Net.API/Common/EmbedField.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/EmbedField.cs
rename to src/Discord.Net.API/Common/EmbedField.cs
diff --git a/src/Discord.Net.Core/API/Common/EmbedFooter.cs b/src/Discord.Net.API/Common/EmbedFooter.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/EmbedFooter.cs
rename to src/Discord.Net.API/Common/EmbedFooter.cs
diff --git a/src/Discord.Net.Core/API/Common/EmbedImage.cs b/src/Discord.Net.API/Common/EmbedImage.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/EmbedImage.cs
rename to src/Discord.Net.API/Common/EmbedImage.cs
diff --git a/src/Discord.Net.Core/API/Common/EmbedProvider.cs b/src/Discord.Net.API/Common/EmbedProvider.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/EmbedProvider.cs
rename to src/Discord.Net.API/Common/EmbedProvider.cs
diff --git a/src/Discord.Net.Core/API/Common/EmbedThumbnail.cs b/src/Discord.Net.API/Common/EmbedThumbnail.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/EmbedThumbnail.cs
rename to src/Discord.Net.API/Common/EmbedThumbnail.cs
diff --git a/src/Discord.Net.Core/API/Common/EmbedVideo.cs b/src/Discord.Net.API/Common/EmbedVideo.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/EmbedVideo.cs
rename to src/Discord.Net.API/Common/EmbedVideo.cs
diff --git a/src/Discord.Net.Core/API/Common/Emoji.cs b/src/Discord.Net.API/Common/Emoji.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Emoji.cs
rename to src/Discord.Net.API/Common/Emoji.cs
diff --git a/src/Discord.Net.Core/API/Common/Game.cs b/src/Discord.Net.API/Common/Game.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Game.cs
rename to src/Discord.Net.API/Common/Game.cs
diff --git a/src/Discord.Net.Core/API/Common/Guild.cs b/src/Discord.Net.API/Common/Guild.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Guild.cs
rename to src/Discord.Net.API/Common/Guild.cs
diff --git a/src/Discord.Net.Core/API/Common/GuildEmbed.cs b/src/Discord.Net.API/Common/GuildEmbed.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/GuildEmbed.cs
rename to src/Discord.Net.API/Common/GuildEmbed.cs
diff --git a/src/Discord.Net.Core/API/Common/GuildMember.cs b/src/Discord.Net.API/Common/GuildMember.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/GuildMember.cs
rename to src/Discord.Net.API/Common/GuildMember.cs
diff --git a/src/Discord.Net.Core/API/Common/Integration.cs b/src/Discord.Net.API/Common/Integration.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Integration.cs
rename to src/Discord.Net.API/Common/Integration.cs
diff --git a/src/Discord.Net.Core/API/Common/IntegrationAccount.cs b/src/Discord.Net.API/Common/IntegrationAccount.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/IntegrationAccount.cs
rename to src/Discord.Net.API/Common/IntegrationAccount.cs
diff --git a/src/Discord.Net.Core/API/Common/Invite.cs b/src/Discord.Net.API/Common/Invite.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Invite.cs
rename to src/Discord.Net.API/Common/Invite.cs
diff --git a/src/Discord.Net.Core/API/Common/InviteChannel.cs b/src/Discord.Net.API/Common/InviteChannel.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/InviteChannel.cs
rename to src/Discord.Net.API/Common/InviteChannel.cs
diff --git a/src/Discord.Net.Core/API/Common/InviteGuild.cs b/src/Discord.Net.API/Common/InviteGuild.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/InviteGuild.cs
rename to src/Discord.Net.API/Common/InviteGuild.cs
diff --git a/src/Discord.Net.Core/API/Common/InviteMetadata.cs b/src/Discord.Net.API/Common/InviteMetadata.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/InviteMetadata.cs
rename to src/Discord.Net.API/Common/InviteMetadata.cs
diff --git a/src/Discord.Net.Core/API/Common/Message.cs b/src/Discord.Net.API/Common/Message.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Message.cs
rename to src/Discord.Net.API/Common/Message.cs
diff --git a/src/Discord.Net.Core/Entities/Messages/MessageType.cs b/src/Discord.Net.API/Common/MessageType.cs
similarity index 100%
rename from src/Discord.Net.Core/Entities/Messages/MessageType.cs
rename to src/Discord.Net.API/Common/MessageType.cs
diff --git a/src/Discord.Net.Core/Entities/Guilds/MfaLevel.cs b/src/Discord.Net.API/Common/MfaLevel.cs
similarity index 100%
rename from src/Discord.Net.Core/Entities/Guilds/MfaLevel.cs
rename to src/Discord.Net.API/Common/MfaLevel.cs
diff --git a/src/Discord.Net.Core/API/Common/Overwrite.cs b/src/Discord.Net.API/Common/Overwrite.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Overwrite.cs
rename to src/Discord.Net.API/Common/Overwrite.cs
diff --git a/src/Discord.Net.Core/Entities/Permissions/PermissionTarget.cs b/src/Discord.Net.API/Common/PermissionTarget.cs
similarity index 100%
rename from src/Discord.Net.Core/Entities/Permissions/PermissionTarget.cs
rename to src/Discord.Net.API/Common/PermissionTarget.cs
diff --git a/src/Discord.Net.Core/API/Common/Presence.cs b/src/Discord.Net.API/Common/Presence.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Presence.cs
rename to src/Discord.Net.API/Common/Presence.cs
diff --git a/src/Discord.Net.Core/API/Common/Reaction.cs b/src/Discord.Net.API/Common/Reaction.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Reaction.cs
rename to src/Discord.Net.API/Common/Reaction.cs
diff --git a/src/Discord.Net.Core/API/Common/ReadState.cs b/src/Discord.Net.API/Common/ReadState.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/ReadState.cs
rename to src/Discord.Net.API/Common/ReadState.cs
diff --git a/src/Discord.Net.Core/API/Common/Relationship.cs b/src/Discord.Net.API/Common/Relationship.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Relationship.cs
rename to src/Discord.Net.API/Common/Relationship.cs
diff --git a/src/Discord.Net.Core/API/Common/RelationshipType.cs b/src/Discord.Net.API/Common/RelationshipType.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/RelationshipType.cs
rename to src/Discord.Net.API/Common/RelationshipType.cs
diff --git a/src/Discord.Net.Core/API/Common/Role.cs b/src/Discord.Net.API/Common/Role.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/Role.cs
rename to src/Discord.Net.API/Common/Role.cs
diff --git a/src/Discord.Net.Core/Entities/Users/StreamType.cs b/src/Discord.Net.API/Common/StreamType.cs
similarity index 100%
rename from src/Discord.Net.Core/Entities/Users/StreamType.cs
rename to src/Discord.Net.API/Common/StreamType.cs
diff --git a/src/Discord.Net.Core/API/Common/User.cs b/src/Discord.Net.API/Common/User.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/User.cs
rename to src/Discord.Net.API/Common/User.cs
diff --git a/src/Discord.Net.Core/API/Common/UserGuild.cs b/src/Discord.Net.API/Common/UserGuild.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/UserGuild.cs
rename to src/Discord.Net.API/Common/UserGuild.cs
diff --git a/src/Discord.Net.Core/Entities/Users/UserStatus.cs b/src/Discord.Net.API/Common/UserStatus.cs
similarity index 100%
rename from src/Discord.Net.Core/Entities/Users/UserStatus.cs
rename to src/Discord.Net.API/Common/UserStatus.cs
diff --git a/src/Discord.Net.Core/Entities/Guilds/VerificationLevel.cs b/src/Discord.Net.API/Common/VerificationLevel.cs
similarity index 100%
rename from src/Discord.Net.Core/Entities/Guilds/VerificationLevel.cs
rename to src/Discord.Net.API/Common/VerificationLevel.cs
diff --git a/src/Discord.Net.Core/API/Common/VoiceRegion.cs b/src/Discord.Net.API/Common/VoiceRegion.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/VoiceRegion.cs
rename to src/Discord.Net.API/Common/VoiceRegion.cs
diff --git a/src/Discord.Net.Core/API/Common/VoiceState.cs b/src/Discord.Net.API/Common/VoiceState.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Common/VoiceState.cs
rename to src/Discord.Net.API/Common/VoiceState.cs
diff --git a/src/Discord.Net.API/Discord.Net.API.csproj b/src/Discord.Net.API/Discord.Net.API.csproj
new file mode 100644
index 000000000..aa4462e9e
--- /dev/null
+++ b/src/Discord.Net.API/Discord.Net.API.csproj
@@ -0,0 +1,29 @@
+
+
+ A collection of Discord API definitions for use by Discord.Net.
+ 1.0.0-beta2
+ netstandard1.1
+ Discord.Net.API
+ discord;discordapp
+ https://github.com/RogueException/Discord.Net
+ http://opensource.org/licenses/MIT
+ git
+ git://github.com/RogueException/Discord.Net.API
+ Discord
+
+
+
+
+
+
+
+
+
+
+
+
+ $(NoWarn);CS1573;CS1591
+ true
+ true
+
+
\ No newline at end of file
diff --git a/src/Discord.Net.Core/API/EntityOrId.cs b/src/Discord.Net.API/EntityOrId.cs
similarity index 100%
rename from src/Discord.Net.Core/API/EntityOrId.cs
rename to src/Discord.Net.API/EntityOrId.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/ExtendedGuild.cs b/src/Discord.Net.API/Gateway/ExtendedGuild.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/ExtendedGuild.cs
rename to src/Discord.Net.API/Gateway/ExtendedGuild.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/GatewayOpCode.cs b/src/Discord.Net.API/Gateway/GatewayOpCode.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/GatewayOpCode.cs
rename to src/Discord.Net.API/Gateway/GatewayOpCode.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/GuildBanEvent.cs b/src/Discord.Net.API/Gateway/GuildBanEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/GuildBanEvent.cs
rename to src/Discord.Net.API/Gateway/GuildBanEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/GuildEmojiUpdateEvent.cs b/src/Discord.Net.API/Gateway/GuildEmojiUpdateEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/GuildEmojiUpdateEvent.cs
rename to src/Discord.Net.API/Gateway/GuildEmojiUpdateEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/GuildMemberAddEvent.cs b/src/Discord.Net.API/Gateway/GuildMemberAddEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/GuildMemberAddEvent.cs
rename to src/Discord.Net.API/Gateway/GuildMemberAddEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/GuildMemberRemoveEvent.cs b/src/Discord.Net.API/Gateway/GuildMemberRemoveEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/GuildMemberRemoveEvent.cs
rename to src/Discord.Net.API/Gateway/GuildMemberRemoveEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/GuildMemberUpdateEvent.cs b/src/Discord.Net.API/Gateway/GuildMemberUpdateEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/GuildMemberUpdateEvent.cs
rename to src/Discord.Net.API/Gateway/GuildMemberUpdateEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/GuildMembersChunkEvent.cs b/src/Discord.Net.API/Gateway/GuildMembersChunkEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/GuildMembersChunkEvent.cs
rename to src/Discord.Net.API/Gateway/GuildMembersChunkEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/GuildRoleCreateEvent.cs b/src/Discord.Net.API/Gateway/GuildRoleCreateEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/GuildRoleCreateEvent.cs
rename to src/Discord.Net.API/Gateway/GuildRoleCreateEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/GuildRoleDeleteEvent.cs b/src/Discord.Net.API/Gateway/GuildRoleDeleteEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/GuildRoleDeleteEvent.cs
rename to src/Discord.Net.API/Gateway/GuildRoleDeleteEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/GuildRoleUpdateEvent.cs b/src/Discord.Net.API/Gateway/GuildRoleUpdateEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/GuildRoleUpdateEvent.cs
rename to src/Discord.Net.API/Gateway/GuildRoleUpdateEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/GuildSyncEvent.cs b/src/Discord.Net.API/Gateway/GuildSyncEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/GuildSyncEvent.cs
rename to src/Discord.Net.API/Gateway/GuildSyncEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/HelloEvent.cs b/src/Discord.Net.API/Gateway/HelloEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/HelloEvent.cs
rename to src/Discord.Net.API/Gateway/HelloEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/IdentifyParams.cs b/src/Discord.Net.API/Gateway/IdentifyParams.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/IdentifyParams.cs
rename to src/Discord.Net.API/Gateway/IdentifyParams.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/MessageDeleteBulkEvent.cs b/src/Discord.Net.API/Gateway/MessageDeleteBulkEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/MessageDeleteBulkEvent.cs
rename to src/Discord.Net.API/Gateway/MessageDeleteBulkEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/Reaction.cs b/src/Discord.Net.API/Gateway/Reaction.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/Reaction.cs
rename to src/Discord.Net.API/Gateway/Reaction.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/ReadyEvent.cs b/src/Discord.Net.API/Gateway/ReadyEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/ReadyEvent.cs
rename to src/Discord.Net.API/Gateway/ReadyEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/RecipientEvent.cs b/src/Discord.Net.API/Gateway/RecipientEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/RecipientEvent.cs
rename to src/Discord.Net.API/Gateway/RecipientEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/RemoveAllReactionsEvent.cs b/src/Discord.Net.API/Gateway/RemoveAllReactionsEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/RemoveAllReactionsEvent.cs
rename to src/Discord.Net.API/Gateway/RemoveAllReactionsEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/RequestMembersParams.cs b/src/Discord.Net.API/Gateway/RequestMembersParams.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/RequestMembersParams.cs
rename to src/Discord.Net.API/Gateway/RequestMembersParams.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/ResumeParams.cs b/src/Discord.Net.API/Gateway/ResumeParams.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/ResumeParams.cs
rename to src/Discord.Net.API/Gateway/ResumeParams.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/ResumedEvent.cs b/src/Discord.Net.API/Gateway/ResumedEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/ResumedEvent.cs
rename to src/Discord.Net.API/Gateway/ResumedEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/StatusUpdateParams.cs b/src/Discord.Net.API/Gateway/StatusUpdateParams.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/StatusUpdateParams.cs
rename to src/Discord.Net.API/Gateway/StatusUpdateParams.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/TypingStartEvent.cs b/src/Discord.Net.API/Gateway/TypingStartEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/TypingStartEvent.cs
rename to src/Discord.Net.API/Gateway/TypingStartEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/VoiceServerUpdateEvent.cs b/src/Discord.Net.API/Gateway/VoiceServerUpdateEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Gateway/VoiceServerUpdateEvent.cs
rename to src/Discord.Net.API/Gateway/VoiceServerUpdateEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Gateway/VoiceStateUpdateParams.cs b/src/Discord.Net.API/Gateway/VoiceStateUpdateParams.cs
similarity index 80%
rename from src/Discord.Net.WebSocket/API/Gateway/VoiceStateUpdateParams.cs
rename to src/Discord.Net.API/Gateway/VoiceStateUpdateParams.cs
index e75e4412c..f08973cb5 100644
--- a/src/Discord.Net.WebSocket/API/Gateway/VoiceStateUpdateParams.cs
+++ b/src/Discord.Net.API/Gateway/VoiceStateUpdateParams.cs
@@ -13,10 +13,7 @@ namespace Discord.API.Gateway
[JsonProperty("guild_id")]
public ulong? GuildId { get; set; }
- public IGuild Guild { set { GuildId = value?.Id; } }
-
[JsonProperty("channel_id")]
public ulong? ChannelId { get; set; }
- public IChannel Channel { set { ChannelId = value?.Id; } }
}
}
diff --git a/src/Discord.Net.Core/API/Image.cs b/src/Discord.Net.API/Image.cs
similarity index 52%
rename from src/Discord.Net.Core/API/Image.cs
rename to src/Discord.Net.API/Image.cs
index a500ebfd5..5442bd30f 100644
--- a/src/Discord.Net.Core/API/Image.cs
+++ b/src/Discord.Net.API/Image.cs
@@ -17,17 +17,5 @@ namespace Discord.API
Stream = null;
Hash = hash;
}
-
- internal static Image Create(Discord.Image image)
- {
- return new Image(image.Stream);
- }
- internal static Image? Create(Discord.Image? image)
- {
- if (image.HasValue)
- return new Image(image.Value.Stream);
- else
- return null;
- }
}
}
diff --git a/src/Discord.Net.Core/API/Int53Attribute.cs b/src/Discord.Net.API/Int53Attribute.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Int53Attribute.cs
rename to src/Discord.Net.API/Int53Attribute.cs
diff --git a/src/Discord.Net.Core/Net/Rest/MultipartFile.cs b/src/Discord.Net.API/Net/MultipartFile.cs
similarity index 100%
rename from src/Discord.Net.Core/Net/Rest/MultipartFile.cs
rename to src/Discord.Net.API/Net/MultipartFile.cs
diff --git a/src/Discord.Net.Core/Utils/Optional.cs b/src/Discord.Net.API/Optional.cs
similarity index 100%
rename from src/Discord.Net.Core/Utils/Optional.cs
rename to src/Discord.Net.API/Optional.cs
diff --git a/src/Discord.Net.Core/API/Rest/CreateChannelInviteParams.cs b/src/Discord.Net.API/Rest/CreateChannelInviteParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/CreateChannelInviteParams.cs
rename to src/Discord.Net.API/Rest/CreateChannelInviteParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/CreateDMChannelParams.cs b/src/Discord.Net.API/Rest/CreateDMChannelParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/CreateDMChannelParams.cs
rename to src/Discord.Net.API/Rest/CreateDMChannelParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/CreateGuildBanParams.cs b/src/Discord.Net.API/Rest/CreateGuildBanParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/CreateGuildBanParams.cs
rename to src/Discord.Net.API/Rest/CreateGuildBanParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/CreateGuildChannelParams.cs b/src/Discord.Net.API/Rest/CreateGuildChannelParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/CreateGuildChannelParams.cs
rename to src/Discord.Net.API/Rest/CreateGuildChannelParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/CreateGuildIntegrationParams.cs b/src/Discord.Net.API/Rest/CreateGuildIntegrationParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/CreateGuildIntegrationParams.cs
rename to src/Discord.Net.API/Rest/CreateGuildIntegrationParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/CreateGuildParams.cs b/src/Discord.Net.API/Rest/CreateGuildParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/CreateGuildParams.cs
rename to src/Discord.Net.API/Rest/CreateGuildParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/CreateMessageParams.cs b/src/Discord.Net.API/Rest/CreateMessageParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/CreateMessageParams.cs
rename to src/Discord.Net.API/Rest/CreateMessageParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/DeleteMessagesParams.cs b/src/Discord.Net.API/Rest/DeleteMessagesParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/DeleteMessagesParams.cs
rename to src/Discord.Net.API/Rest/DeleteMessagesParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/GetChannelMessagesParams.cs b/src/Discord.Net.API/Rest/GetChannelMessagesParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/GetChannelMessagesParams.cs
rename to src/Discord.Net.API/Rest/GetChannelMessagesParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/GetGatewayResponse.cs b/src/Discord.Net.API/Rest/GetGatewayResponse.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/GetGatewayResponse.cs
rename to src/Discord.Net.API/Rest/GetGatewayResponse.cs
diff --git a/src/Discord.Net.Core/API/Rest/GetGuildMembersParams.cs b/src/Discord.Net.API/Rest/GetGuildMembersParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/GetGuildMembersParams.cs
rename to src/Discord.Net.API/Rest/GetGuildMembersParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/GetGuildPruneCountResponse.cs b/src/Discord.Net.API/Rest/GetGuildPruneCountResponse.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/GetGuildPruneCountResponse.cs
rename to src/Discord.Net.API/Rest/GetGuildPruneCountResponse.cs
diff --git a/src/Discord.Net.Core/API/Rest/GetReactionUsersParams.cs b/src/Discord.Net.API/Rest/GetReactionUsersParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/GetReactionUsersParams.cs
rename to src/Discord.Net.API/Rest/GetReactionUsersParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/GuildPruneParams.cs b/src/Discord.Net.API/Rest/GuildPruneParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/GuildPruneParams.cs
rename to src/Discord.Net.API/Rest/GuildPruneParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/ModifyChannelPermissionsParams.cs b/src/Discord.Net.API/Rest/ModifyChannelPermissionsParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/ModifyChannelPermissionsParams.cs
rename to src/Discord.Net.API/Rest/ModifyChannelPermissionsParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/ModifyCurrentUserNickParams.cs b/src/Discord.Net.API/Rest/ModifyCurrentUserNickParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/ModifyCurrentUserNickParams.cs
rename to src/Discord.Net.API/Rest/ModifyCurrentUserNickParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/ModifyCurrentUserParams.cs b/src/Discord.Net.API/Rest/ModifyCurrentUserParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/ModifyCurrentUserParams.cs
rename to src/Discord.Net.API/Rest/ModifyCurrentUserParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/ModifyGuildChannelParams.cs b/src/Discord.Net.API/Rest/ModifyGuildChannelParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/ModifyGuildChannelParams.cs
rename to src/Discord.Net.API/Rest/ModifyGuildChannelParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/ModifyGuildChannelsParams.cs b/src/Discord.Net.API/Rest/ModifyGuildChannelsParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/ModifyGuildChannelsParams.cs
rename to src/Discord.Net.API/Rest/ModifyGuildChannelsParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/ModifyGuildEmbedParams.cs b/src/Discord.Net.API/Rest/ModifyGuildEmbedParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/ModifyGuildEmbedParams.cs
rename to src/Discord.Net.API/Rest/ModifyGuildEmbedParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/ModifyGuildIntegrationParams.cs b/src/Discord.Net.API/Rest/ModifyGuildIntegrationParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/ModifyGuildIntegrationParams.cs
rename to src/Discord.Net.API/Rest/ModifyGuildIntegrationParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/ModifyGuildMemberParams.cs b/src/Discord.Net.API/Rest/ModifyGuildMemberParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/ModifyGuildMemberParams.cs
rename to src/Discord.Net.API/Rest/ModifyGuildMemberParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/ModifyGuildParams.cs b/src/Discord.Net.API/Rest/ModifyGuildParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/ModifyGuildParams.cs
rename to src/Discord.Net.API/Rest/ModifyGuildParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/ModifyGuildRoleParams.cs b/src/Discord.Net.API/Rest/ModifyGuildRoleParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/ModifyGuildRoleParams.cs
rename to src/Discord.Net.API/Rest/ModifyGuildRoleParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/ModifyGuildRolesParams.cs b/src/Discord.Net.API/Rest/ModifyGuildRolesParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/ModifyGuildRolesParams.cs
rename to src/Discord.Net.API/Rest/ModifyGuildRolesParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/ModifyMessageParams.cs b/src/Discord.Net.API/Rest/ModifyMessageParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/ModifyMessageParams.cs
rename to src/Discord.Net.API/Rest/ModifyMessageParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/ModifyTextChannelParams.cs b/src/Discord.Net.API/Rest/ModifyTextChannelParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/ModifyTextChannelParams.cs
rename to src/Discord.Net.API/Rest/ModifyTextChannelParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/ModifyVoiceChannelParams.cs b/src/Discord.Net.API/Rest/ModifyVoiceChannelParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/ModifyVoiceChannelParams.cs
rename to src/Discord.Net.API/Rest/ModifyVoiceChannelParams.cs
diff --git a/src/Discord.Net.Core/API/Rest/UploadFileParams.cs b/src/Discord.Net.API/Rest/UploadFileParams.cs
similarity index 100%
rename from src/Discord.Net.Core/API/Rest/UploadFileParams.cs
rename to src/Discord.Net.API/Rest/UploadFileParams.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/AuthenticateParams.cs b/src/Discord.Net.API/Rpc/AuthenticateParams.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/AuthenticateParams.cs
rename to src/Discord.Net.API/Rpc/AuthenticateParams.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/AuthenticateResponse.cs b/src/Discord.Net.API/Rpc/AuthenticateResponse.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/AuthenticateResponse.cs
rename to src/Discord.Net.API/Rpc/AuthenticateResponse.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/AuthorizeParams.cs b/src/Discord.Net.API/Rpc/AuthorizeParams.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/AuthorizeParams.cs
rename to src/Discord.Net.API/Rpc/AuthorizeParams.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/AuthorizeResponse.cs b/src/Discord.Net.API/Rpc/AuthorizeResponse.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/AuthorizeResponse.cs
rename to src/Discord.Net.API/Rpc/AuthorizeResponse.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/Channel.cs b/src/Discord.Net.API/Rpc/Channel.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/Channel.cs
rename to src/Discord.Net.API/Rpc/Channel.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/ChannelSubscriptionParams.cs b/src/Discord.Net.API/Rpc/ChannelSubscriptionParams.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/ChannelSubscriptionParams.cs
rename to src/Discord.Net.API/Rpc/ChannelSubscriptionParams.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/ChannelSummary.cs b/src/Discord.Net.API/Rpc/ChannelSummary.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/ChannelSummary.cs
rename to src/Discord.Net.API/Rpc/ChannelSummary.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/ErrorEvent.cs b/src/Discord.Net.API/Rpc/ErrorEvent.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/ErrorEvent.cs
rename to src/Discord.Net.API/Rpc/ErrorEvent.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/ExtendedVoiceState.cs b/src/Discord.Net.API/Rpc/ExtendedVoiceState.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/ExtendedVoiceState.cs
rename to src/Discord.Net.API/Rpc/ExtendedVoiceState.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/GetChannelParams.cs b/src/Discord.Net.API/Rpc/GetChannelParams.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/GetChannelParams.cs
rename to src/Discord.Net.API/Rpc/GetChannelParams.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/GetChannelsParams.cs b/src/Discord.Net.API/Rpc/GetChannelsParams.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/GetChannelsParams.cs
rename to src/Discord.Net.API/Rpc/GetChannelsParams.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/GetChannelsResponse.cs b/src/Discord.Net.API/Rpc/GetChannelsResponse.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/GetChannelsResponse.cs
rename to src/Discord.Net.API/Rpc/GetChannelsResponse.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/GetGuildParams.cs b/src/Discord.Net.API/Rpc/GetGuildParams.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/GetGuildParams.cs
rename to src/Discord.Net.API/Rpc/GetGuildParams.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/GetGuildsParams.cs b/src/Discord.Net.API/Rpc/GetGuildsParams.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/GetGuildsParams.cs
rename to src/Discord.Net.API/Rpc/GetGuildsParams.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/GetGuildsResponse.cs b/src/Discord.Net.API/Rpc/GetGuildsResponse.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/GetGuildsResponse.cs
rename to src/Discord.Net.API/Rpc/GetGuildsResponse.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/Guild.cs b/src/Discord.Net.API/Rpc/Guild.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/Guild.cs
rename to src/Discord.Net.API/Rpc/Guild.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/GuildMember.cs b/src/Discord.Net.API/Rpc/GuildMember.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/GuildMember.cs
rename to src/Discord.Net.API/Rpc/GuildMember.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/GuildStatusEvent.cs b/src/Discord.Net.API/Rpc/GuildStatusEvent.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/GuildStatusEvent.cs
rename to src/Discord.Net.API/Rpc/GuildStatusEvent.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/GuildSubscriptionParams.cs b/src/Discord.Net.API/Rpc/GuildSubscriptionParams.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/GuildSubscriptionParams.cs
rename to src/Discord.Net.API/Rpc/GuildSubscriptionParams.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/GuildSummary.cs b/src/Discord.Net.API/Rpc/GuildSummary.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/GuildSummary.cs
rename to src/Discord.Net.API/Rpc/GuildSummary.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/Message.cs b/src/Discord.Net.API/Rpc/Message.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/Message.cs
rename to src/Discord.Net.API/Rpc/Message.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/MessageEvent.cs b/src/Discord.Net.API/Rpc/MessageEvent.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/MessageEvent.cs
rename to src/Discord.Net.API/Rpc/MessageEvent.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/Pan.cs b/src/Discord.Net.API/Rpc/Pan.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/Pan.cs
rename to src/Discord.Net.API/Rpc/Pan.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/ReadyEvent.cs b/src/Discord.Net.API/Rpc/ReadyEvent.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/ReadyEvent.cs
rename to src/Discord.Net.API/Rpc/ReadyEvent.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/RpcConfig.cs b/src/Discord.Net.API/Rpc/RpcConfig.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/RpcConfig.cs
rename to src/Discord.Net.API/Rpc/RpcConfig.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/SelectChannelParams.cs b/src/Discord.Net.API/Rpc/SelectChannelParams.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/SelectChannelParams.cs
rename to src/Discord.Net.API/Rpc/SelectChannelParams.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/SetLocalVolumeParams.cs b/src/Discord.Net.API/Rpc/SetLocalVolumeParams.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/SetLocalVolumeParams.cs
rename to src/Discord.Net.API/Rpc/SetLocalVolumeParams.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/SetLocalVolumeResponse.cs b/src/Discord.Net.API/Rpc/SetLocalVolumeResponse.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/SetLocalVolumeResponse.cs
rename to src/Discord.Net.API/Rpc/SetLocalVolumeResponse.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/SpeakingEvent.cs b/src/Discord.Net.API/Rpc/SpeakingEvent.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/SpeakingEvent.cs
rename to src/Discord.Net.API/Rpc/SpeakingEvent.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/SubscriptionResponse.cs b/src/Discord.Net.API/Rpc/SubscriptionResponse.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/SubscriptionResponse.cs
rename to src/Discord.Net.API/Rpc/SubscriptionResponse.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/UserVoiceSettings.cs b/src/Discord.Net.API/Rpc/UserVoiceSettings.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/UserVoiceSettings.cs
rename to src/Discord.Net.API/Rpc/UserVoiceSettings.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/VoiceDevice.cs b/src/Discord.Net.API/Rpc/VoiceDevice.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/VoiceDevice.cs
rename to src/Discord.Net.API/Rpc/VoiceDevice.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/VoiceDeviceSettings.cs b/src/Discord.Net.API/Rpc/VoiceDeviceSettings.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/VoiceDeviceSettings.cs
rename to src/Discord.Net.API/Rpc/VoiceDeviceSettings.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/VoiceMode.cs b/src/Discord.Net.API/Rpc/VoiceMode.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/VoiceMode.cs
rename to src/Discord.Net.API/Rpc/VoiceMode.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/VoiceSettings.cs b/src/Discord.Net.API/Rpc/VoiceSettings.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/VoiceSettings.cs
rename to src/Discord.Net.API/Rpc/VoiceSettings.cs
diff --git a/src/Discord.Net.Rpc/API/Rpc/VoiceShortcut.cs b/src/Discord.Net.API/Rpc/VoiceShortcut.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/Rpc/VoiceShortcut.cs
rename to src/Discord.Net.API/Rpc/VoiceShortcut.cs
diff --git a/src/Discord.Net.Rpc/Entities/VoiceShortcutType.cs b/src/Discord.Net.API/Rpc/VoiceShortcutType.cs
similarity index 100%
rename from src/Discord.Net.Rpc/Entities/VoiceShortcutType.cs
rename to src/Discord.Net.API/Rpc/VoiceShortcutType.cs
diff --git a/src/Discord.Net.Rpc/API/RpcFrame.cs b/src/Discord.Net.API/RpcFrame.cs
similarity index 100%
rename from src/Discord.Net.Rpc/API/RpcFrame.cs
rename to src/Discord.Net.API/RpcFrame.cs
diff --git a/src/Discord.Net.WebSocket/API/SocketFrame.cs b/src/Discord.Net.API/SocketFrame.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/SocketFrame.cs
rename to src/Discord.Net.API/SocketFrame.cs
diff --git a/src/Discord.Net.WebSocket/API/Voice/IdentifyParams.cs b/src/Discord.Net.API/Voice/IdentifyParams.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Voice/IdentifyParams.cs
rename to src/Discord.Net.API/Voice/IdentifyParams.cs
diff --git a/src/Discord.Net.WebSocket/API/Voice/ReadyEvent.cs b/src/Discord.Net.API/Voice/ReadyEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Voice/ReadyEvent.cs
rename to src/Discord.Net.API/Voice/ReadyEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Voice/SelectProtocolParams.cs b/src/Discord.Net.API/Voice/SelectProtocolParams.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Voice/SelectProtocolParams.cs
rename to src/Discord.Net.API/Voice/SelectProtocolParams.cs
diff --git a/src/Discord.Net.WebSocket/API/Voice/SessionDescriptionEvent.cs b/src/Discord.Net.API/Voice/SessionDescriptionEvent.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Voice/SessionDescriptionEvent.cs
rename to src/Discord.Net.API/Voice/SessionDescriptionEvent.cs
diff --git a/src/Discord.Net.WebSocket/API/Voice/SpeakingParams.cs b/src/Discord.Net.API/Voice/SpeakingParams.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Voice/SpeakingParams.cs
rename to src/Discord.Net.API/Voice/SpeakingParams.cs
diff --git a/src/Discord.Net.WebSocket/API/Voice/UdpProtocolInfo.cs b/src/Discord.Net.API/Voice/UdpProtocolInfo.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Voice/UdpProtocolInfo.cs
rename to src/Discord.Net.API/Voice/UdpProtocolInfo.cs
diff --git a/src/Discord.Net.WebSocket/API/Voice/VoiceOpCode.cs b/src/Discord.Net.API/Voice/VoiceOpCode.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/Voice/VoiceOpCode.cs
rename to src/Discord.Net.API/Voice/VoiceOpCode.cs
diff --git a/src/Discord.Net.API/project.json b/src/Discord.Net.API/project.json
new file mode 100644
index 000000000..41f09804d
--- /dev/null
+++ b/src/Discord.Net.API/project.json
@@ -0,0 +1,38 @@
+{
+ "version": "1.0.0-*",
+ "description": "A collection of Discord API definitions for use by Discord.Net",
+ "authors": [ "RogueException" ],
+
+ "packOptions": {
+ "tags": [ "discord", "discordapp" ],
+ "licenseUrl": "http://opensource.org/licenses/MIT",
+ "projectUrl": "https://github.com/RogueException/Discord.Net",
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/RogueException/Discord.Net"
+ }
+ },
+
+ "configurations": {
+ "Release": {
+ "buildOptions": {
+ "define": [ "RELEASE" ],
+ "nowarn": [ "CS1573", "CS1591" ],
+ "optimize": true,
+ "warningsAsErrors": true,
+ "xmlDoc": true
+ }
+ }
+ },
+
+ "dependencies": {
+ "Newtonsoft.Json": "9.0.1",
+ "System.Runtime": "4.3.0",
+ "System.Runtime.Serialization.Primitives": "4.1.1"
+ },
+
+ "frameworks": {
+ "netstandard1.1": {},
+ "netstandard1.3": {}
+ }
+}
diff --git a/src/Discord.Net.Commands/Discord.Net.Commands.csproj b/src/Discord.Net.Commands/Discord.Net.Commands.csproj
index 9e993b624..a375d3255 100644
--- a/src/Discord.Net.Commands/Discord.Net.Commands.csproj
+++ b/src/Discord.Net.Commands/Discord.Net.Commands.csproj
@@ -9,12 +9,14 @@
http://opensource.org/licenses/MIT
git
git://github.com/RogueException/Discord.Net
+ Discord.Commands
+
diff --git a/src/Discord.Net.Core/Audio/IAudioClient.cs b/src/Discord.Net.Core/Audio/IAudioClient.cs
index 3cfdfa856..2fbb4a450 100644
--- a/src/Discord.Net.Core/Audio/IAudioClient.cs
+++ b/src/Discord.Net.Core/Audio/IAudioClient.cs
@@ -18,6 +18,6 @@ namespace Discord.Audio
Task DisconnectAsync();
Stream CreateOpusStream(int samplesPerFrame, int bufferSize = 4000);
- Stream CreatePCMStream(int samplesPerFrame, int? bitrate = null, OpusApplication application = OpusApplication.MusicOrMixed, int bufferSize = 4000);
+ Stream CreatePCMStream(int samplesPerFrame, int? bitrate = null, int bufferSize = 4000);
}
}
diff --git a/src/Discord.Net.Core/API/CDN.cs b/src/Discord.Net.Core/CDN.cs
similarity index 97%
rename from src/Discord.Net.Core/API/CDN.cs
rename to src/Discord.Net.Core/CDN.cs
index e4fcbc8c4..98538e3c8 100644
--- a/src/Discord.Net.Core/API/CDN.cs
+++ b/src/Discord.Net.Core/CDN.cs
@@ -1,4 +1,4 @@
-namespace Discord.API
+namespace Discord
{
public static class CDN
{
diff --git a/src/Discord.Net.Core/Discord.Net.Core.csproj b/src/Discord.Net.Core/Discord.Net.Core.csproj
index c64ed88c2..5ba8b7c0c 100644
--- a/src/Discord.Net.Core/Discord.Net.Core.csproj
+++ b/src/Discord.Net.Core/Discord.Net.Core.csproj
@@ -1,4 +1,4 @@
-
+
A .Net API wrapper and bot framework for Discord.
1.0.0-beta2
@@ -9,17 +9,26 @@
http://opensource.org/licenses/MIT
git
git://github.com/RogueException/Discord.Net
+ Discord
+
+
+
+
+
+
+
+
diff --git a/src/Discord.Net.Core/Entities/Image.cs b/src/Discord.Net.Core/Entities/Image.cs
index f9a65ae4c..6e7cf1f2a 100644
--- a/src/Discord.Net.Core/Entities/Image.cs
+++ b/src/Discord.Net.Core/Entities/Image.cs
@@ -1,4 +1,5 @@
using System.IO;
+using Model = Discord.API.Image;
namespace Discord
{
@@ -29,5 +30,10 @@ namespace Discord
Stream = File.OpenRead(path);
}
#endif
+
+ public Model ToModel()
+ {
+ return new Model(Stream);
+ }
}
}
diff --git a/src/Discord.Net.Core/Entities/Users/ModifyCurrentUserParams.cs b/src/Discord.Net.Core/Entities/Users/ModifyCurrentUserParams.cs
index c517b88df..75e89d5ea 100644
--- a/src/Discord.Net.Core/Entities/Users/ModifyCurrentUserParams.cs
+++ b/src/Discord.Net.Core/Entities/Users/ModifyCurrentUserParams.cs
@@ -21,6 +21,6 @@
///
/// Your avatar
///
- public Optional Avatar { get; set; }
+ public Optional Avatar { get; set; }
}
}
diff --git a/src/Discord.Net.Core/IDiscordClient.cs b/src/Discord.Net.Core/IDiscordClient.cs
index 4131b1796..a26f27dc0 100644
--- a/src/Discord.Net.Core/IDiscordClient.cs
+++ b/src/Discord.Net.Core/IDiscordClient.cs
@@ -1,4 +1,3 @@
-using Discord.API;
using System;
using System.Collections.Generic;
using System.IO;
@@ -9,7 +8,6 @@ namespace Discord
public interface IDiscordClient : IDisposable
{
ConnectionState ConnectionState { get; }
- DiscordRestApiClient ApiClient { get; }
ISelfUser CurrentUser { get; }
Task ConnectAsync();
diff --git a/src/Discord.Net.Core/project.json b/src/Discord.Net.Core/project.json
index 16a10f585..86caebfc1 100644
--- a/src/Discord.Net.Core/project.json
+++ b/src/Discord.Net.Core/project.json
@@ -26,11 +26,15 @@
},
"dependencies": {
+ "Discord.Net.API": {
+ "target": "project"
+ },
"Newtonsoft.Json": "9.0.1",
"System.Collections.Concurrent": "4.3.0",
"System.Collections.Immutable": "1.3.0",
"System.Interactive.Async": "3.1.0",
"System.Net.Http": "4.3.0",
+ "System.Runtime": "4.3.0",
"System.Runtime.Serialization.Primitives": "4.1.1"
},
diff --git a/src/Discord.Net.Providers.WS4Net/Discord.Net.Providers.WS4Net.csproj b/src/Discord.Net.Providers.WS4Net/Discord.Net.Providers.WS4Net.csproj
index 963de8269..d1c44c11c 100644
--- a/src/Discord.Net.Providers.WS4Net/Discord.Net.Providers.WS4Net.csproj
+++ b/src/Discord.Net.Providers.WS4Net/Discord.Net.Providers.WS4Net.csproj
@@ -10,6 +10,7 @@
http://opensource.org/licenses/MIT
git
git://github.com/RogueException/Discord.Net
+ Discord.Providers.WS4Net
diff --git a/src/Discord.Net.Providers.WS4Net/WS4NetClient.cs b/src/Discord.Net.Providers.WS4Net/WS4NetClient.cs
index 7ab8685ba..93d6a83d6 100644
--- a/src/Discord.Net.Providers.WS4Net/WS4NetClient.cs
+++ b/src/Discord.Net.Providers.WS4Net/WS4NetClient.cs
@@ -1,10 +1,10 @@
using Discord.Net.WebSockets;
using System;
+using System.Collections.Generic;
+using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
-using System.Collections.Generic;
-using System.Linq;
using WebSocket4Net;
using WS4NetSocket = WebSocket4Net.WebSocket;
diff --git a/src/Discord.Net.Rest/Discord.Net.Rest.csproj b/src/Discord.Net.Rest/Discord.Net.Rest.csproj
index 87a719538..d589dbd4b 100644
--- a/src/Discord.Net.Rest/Discord.Net.Rest.csproj
+++ b/src/Discord.Net.Rest/Discord.Net.Rest.csproj
@@ -9,12 +9,14 @@
http://opensource.org/licenses/MIT
git
git://github.com/RogueException/Discord.Net
+ Discord.Rest
+
diff --git a/src/Discord.Net.Core/API/DiscordRestApiClient.cs b/src/Discord.Net.Rest/DiscordRestApiClient.cs
similarity index 99%
rename from src/Discord.Net.Core/API/DiscordRestApiClient.cs
rename to src/Discord.Net.Rest/DiscordRestApiClient.cs
index bd27ed3be..07389f8df 100644
--- a/src/Discord.Net.Core/API/DiscordRestApiClient.cs
+++ b/src/Discord.Net.Rest/DiscordRestApiClient.cs
@@ -41,22 +41,22 @@ namespace Discord.API
public RetryMode DefaultRetryMode { get; }
public string UserAgent { get; }
+ internal RequestQueue RequestQueue { get; }
public LoginState LoginState { get; private set; }
public TokenType AuthTokenType { get; private set; }
public User CurrentUser { get; private set; }
- public RequestQueue RequestQueue { get; private set; }
public DiscordRestApiClient(RestClientProvider restClientProvider, string userAgent, RetryMode defaultRetryMode = RetryMode.AlwaysRetry,
- JsonSerializer serializer = null, RequestQueue requestQueue = null, bool fetchCurrentUser = true)
+ JsonSerializer serializer = null, bool fetchCurrentUser = true)
{
_restClientProvider = restClientProvider;
UserAgent = userAgent;
DefaultRetryMode = defaultRetryMode;
_serializer = serializer ?? new JsonSerializer { DateFormatString = "yyyy-MM-ddTHH:mm:ssZ", ContractResolver = new DiscordContractResolver() };
- RequestQueue = requestQueue;
_fetchCurrentUser = fetchCurrentUser;
+ RequestQueue = new RequestQueue();
_stateLock = new SemaphoreSlim(1, 1);
SetBaseUrl(DiscordConfig.ClientAPIUrl);
diff --git a/src/Discord.Net.Rest/DiscordRestClient.cs b/src/Discord.Net.Rest/DiscordRestClient.cs
index bf45db07f..d00a7e1fe 100644
--- a/src/Discord.Net.Rest/DiscordRestClient.cs
+++ b/src/Discord.Net.Rest/DiscordRestClient.cs
@@ -16,7 +16,7 @@ namespace Discord.Rest
public DiscordRestClient(DiscordRestConfig config) : base(config, CreateApiClient(config)) { }
private static API.DiscordRestApiClient CreateApiClient(DiscordRestConfig config)
- => new API.DiscordRestApiClient(config.RestClientProvider, DiscordRestConfig.UserAgent, requestQueue: new RequestQueue());
+ => new API.DiscordRestApiClient(config.RestClientProvider, DiscordRestConfig.UserAgent);
protected override Task OnLoginAsync(TokenType tokenType, string token)
{
diff --git a/src/Discord.Net.Rest/Entities/Channels/ChannelHelper.cs b/src/Discord.Net.Rest/Entities/Channels/ChannelHelper.cs
index a6a8ce9f3..f5218418d 100644
--- a/src/Discord.Net.Rest/Entities/Channels/ChannelHelper.cs
+++ b/src/Discord.Net.Rest/Entities/Channels/ChannelHelper.cs
@@ -32,10 +32,10 @@ namespace Discord.Rest
return await client.ApiClient.ModifyGuildChannelAsync(channel.Id, apiArgs, options).ConfigureAwait(false);
}
public static async Task ModifyAsync(ITextChannel channel, BaseDiscordClient client,
- Action func,
+ Action func,
RequestOptions options)
{
- var args = new ModifyTextChannelParams();
+ var args = new TextChannelProperties();
func(args);
var apiArgs = new API.Rest.ModifyTextChannelParams
{
@@ -46,10 +46,10 @@ namespace Discord.Rest
return await client.ApiClient.ModifyGuildChannelAsync(channel.Id, apiArgs, options).ConfigureAwait(false);
}
public static async Task ModifyAsync(IVoiceChannel channel, BaseDiscordClient client,
- Action func,
+ Action func,
RequestOptions options)
{
- var args = new ModifyVoiceChannelParams();
+ var args = new VoiceChannelProperties();
func(args);
var apiArgs = new API.Rest.ModifyVoiceChannelParams
{
diff --git a/src/Discord.Net.Rest/Entities/Channels/RestTextChannel.cs b/src/Discord.Net.Rest/Entities/Channels/RestTextChannel.cs
index c14899daa..1ce105e02 100644
--- a/src/Discord.Net.Rest/Entities/Channels/RestTextChannel.cs
+++ b/src/Discord.Net.Rest/Entities/Channels/RestTextChannel.cs
@@ -33,7 +33,7 @@ namespace Discord.Rest
Topic = model.Topic.Value;
}
- public async Task ModifyAsync(Action func, RequestOptions options = null)
+ public async Task ModifyAsync(Action func, RequestOptions options = null)
{
var model = await ChannelHelper.ModifyAsync(this, Discord, func, options).ConfigureAwait(false);
Update(model);
diff --git a/src/Discord.Net.Rest/Entities/Channels/RestVoiceChannel.cs b/src/Discord.Net.Rest/Entities/Channels/RestVoiceChannel.cs
index a19a5cb38..dd4f59deb 100644
--- a/src/Discord.Net.Rest/Entities/Channels/RestVoiceChannel.cs
+++ b/src/Discord.Net.Rest/Entities/Channels/RestVoiceChannel.cs
@@ -33,7 +33,7 @@ namespace Discord.Rest
UserLimit = model.UserLimit.Value;
}
- public async Task ModifyAsync(Action func, RequestOptions options = null)
+ public async Task ModifyAsync(Action func, RequestOptions options = null)
{
var model = await ChannelHelper.ModifyAsync(this, Discord, func, options).ConfigureAwait(false);
Update(model);
diff --git a/src/Discord.Net.Rest/Entities/Guilds/GuildHelper.cs b/src/Discord.Net.Rest/Entities/Guilds/GuildHelper.cs
index 5c6f1cb0e..9dbb9eee9 100644
--- a/src/Discord.Net.Rest/Entities/Guilds/GuildHelper.cs
+++ b/src/Discord.Net.Rest/Entities/Guilds/GuildHelper.cs
@@ -27,9 +27,9 @@ namespace Discord.Rest
AfkChannelId = args.AfkChannelId,
AfkTimeout = args.AfkTimeout,
DefaultMessageNotifications = args.DefaultMessageNotifications,
- Icon = args.Icon.IsSpecified ? ImageModel.Create(args.Icon.Value) : Optional.Create(),
+ Icon = args.Icon.IsSpecified ? args.Icon.Value?.ToModel() : Optional.Create(),
Name = args.Name,
- Splash = args.Splash.IsSpecified ? ImageModel.Create(args.Splash.Value) : Optional.Create(),
+ Splash = args.Splash.IsSpecified ? args.Splash.Value?.ToModel() : Optional.Create(),
Username = args.Username,
VerificationLevel = args.VerificationLevel
};
@@ -76,7 +76,7 @@ namespace Discord.Rest
return await client.ApiClient.ModifyGuildEmbedAsync(guild.Id, apiArgs, options).ConfigureAwait(false);
}
public static async Task ModifyChannelsAsync(IGuild guild, BaseDiscordClient client,
- IEnumerable args, RequestOptions options)
+ IEnumerable args, RequestOptions options)
{
var apiArgs = args.Select(x => new API.Rest.ModifyGuildChannelsParams(x.Id, x.Position));
await client.ApiClient.ModifyGuildChannelsAsync(guild.Id, apiArgs, options).ConfigureAwait(false);
diff --git a/src/Discord.Net.Rest/Entities/Guilds/RestGuild.cs b/src/Discord.Net.Rest/Entities/Guilds/RestGuild.cs
index a85107831..caabeeb92 100644
--- a/src/Discord.Net.Rest/Entities/Guilds/RestGuild.cs
+++ b/src/Discord.Net.Rest/Entities/Guilds/RestGuild.cs
@@ -35,8 +35,8 @@ namespace Discord.Rest
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public ulong DefaultChannelId => Id;
- public string IconUrl => API.CDN.GetGuildIconUrl(Id, IconId);
- public string SplashUrl => API.CDN.GetGuildSplashUrl(Id, SplashId);
+ public string IconUrl => CDN.GetGuildIconUrl(Id, IconId);
+ public string SplashUrl => CDN.GetGuildSplashUrl(Id, SplashId);
public RestRole EveryoneRole => GetRole(Id);
public IReadOnlyCollection Roles => _roles.ToReadOnlyCollection();
@@ -115,7 +115,7 @@ namespace Discord.Rest
var model = await GuildHelper.ModifyEmbedAsync(this, Discord, func, options).ConfigureAwait(false);
Update(model);
}
- public async Task ModifyChannelsAsync(IEnumerable args, RequestOptions options = null)
+ public async Task ModifyChannelsAsync(IEnumerable args, RequestOptions options = null)
{
var arr = args.ToArray();
await GuildHelper.ModifyChannelsAsync(this, Discord, arr, options);
diff --git a/src/Discord.Net.Rest/Entities/Guilds/RestUserGuild.cs b/src/Discord.Net.Rest/Entities/Guilds/RestUserGuild.cs
index 69c2c9362..cd214c2de 100644
--- a/src/Discord.Net.Rest/Entities/Guilds/RestUserGuild.cs
+++ b/src/Discord.Net.Rest/Entities/Guilds/RestUserGuild.cs
@@ -15,7 +15,7 @@ namespace Discord.Rest
public GuildPermissions Permissions { get; private set; }
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
- public string IconUrl => API.CDN.GetGuildIconUrl(Id, _iconId);
+ public string IconUrl => CDN.GetGuildIconUrl(Id, _iconId);
internal RestUserGuild(BaseDiscordClient discord, ulong id)
: base(discord, id)
diff --git a/src/Discord.Net.Rest/Entities/RestApplication.cs b/src/Discord.Net.Rest/Entities/RestApplication.cs
index 62b434044..f81e4cd7b 100644
--- a/src/Discord.Net.Rest/Entities/RestApplication.cs
+++ b/src/Discord.Net.Rest/Entities/RestApplication.cs
@@ -18,7 +18,7 @@ namespace Discord.Rest
public IUser Owner { get; private set; }
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
- public string IconUrl => API.CDN.GetApplicationIconUrl(Id, _iconId);
+ public string IconUrl => CDN.GetApplicationIconUrl(Id, _iconId);
internal RestApplication(BaseDiscordClient discord, ulong id)
: base(discord, id)
diff --git a/src/Discord.Net.Rest/Entities/Users/RestUser.cs b/src/Discord.Net.Rest/Entities/Users/RestUser.cs
index 25419932f..5dada416c 100644
--- a/src/Discord.Net.Rest/Entities/Users/RestUser.cs
+++ b/src/Discord.Net.Rest/Entities/Users/RestUser.cs
@@ -13,7 +13,7 @@ namespace Discord.Rest
public ushort DiscriminatorValue { get; private set; }
public string AvatarId { get; private set; }
- public string AvatarUrl => API.CDN.GetUserAvatarUrl(Id, AvatarId);
+ public string AvatarUrl => CDN.GetUserAvatarUrl(Id, AvatarId);
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public string Discriminator => DiscriminatorValue.ToString("D4");
public string Mention => MentionUtils.MentionUser(Id);
diff --git a/src/Discord.Net.Rest/Entities/Users/UserHelper.cs b/src/Discord.Net.Rest/Entities/Users/UserHelper.cs
index e23c1cbb0..fd6079773 100644
--- a/src/Discord.Net.Rest/Entities/Users/UserHelper.cs
+++ b/src/Discord.Net.Rest/Entities/Users/UserHelper.cs
@@ -16,7 +16,7 @@ namespace Discord.Rest
func(args);
var apiArgs = new API.Rest.ModifyCurrentUserParams
{
- Avatar = args.Avatar.IsSpecified ? ImageModel.Create(args.Avatar.Value) : Optional.Create(),
+ Avatar = args.Avatar.IsSpecified ? args.Avatar.Value?.ToModel() : Optional.Create(),
Username = args.Username
};
diff --git a/src/Discord.Net.Core/Net/Queue/ClientBucket.cs b/src/Discord.Net.Rest/Net/Queue/ClientBucket.cs
similarity index 100%
rename from src/Discord.Net.Core/Net/Queue/ClientBucket.cs
rename to src/Discord.Net.Rest/Net/Queue/ClientBucket.cs
diff --git a/src/Discord.Net.Core/Net/Queue/RequestQueue.cs b/src/Discord.Net.Rest/Net/Queue/RequestQueue.cs
similarity index 99%
rename from src/Discord.Net.Core/Net/Queue/RequestQueue.cs
rename to src/Discord.Net.Rest/Net/Queue/RequestQueue.cs
index 52ad90f11..ef7951765 100644
--- a/src/Discord.Net.Core/Net/Queue/RequestQueue.cs
+++ b/src/Discord.Net.Rest/Net/Queue/RequestQueue.cs
@@ -10,7 +10,7 @@ using System.Threading.Tasks;
namespace Discord.Net.Queue
{
- public class RequestQueue : IDisposable
+ internal class RequestQueue : IDisposable
{
public event Func RateLimitTriggered;
diff --git a/src/Discord.Net.Core/Net/Queue/RequestQueueBucket.cs b/src/Discord.Net.Rest/Net/Queue/RequestQueueBucket.cs
similarity index 100%
rename from src/Discord.Net.Core/Net/Queue/RequestQueueBucket.cs
rename to src/Discord.Net.Rest/Net/Queue/RequestQueueBucket.cs
diff --git a/src/Discord.Net.Core/Net/Queue/Requests/JsonRestRequest.cs b/src/Discord.Net.Rest/Net/Queue/Requests/JsonRestRequest.cs
similarity index 100%
rename from src/Discord.Net.Core/Net/Queue/Requests/JsonRestRequest.cs
rename to src/Discord.Net.Rest/Net/Queue/Requests/JsonRestRequest.cs
diff --git a/src/Discord.Net.Core/Net/Queue/Requests/MultipartRestRequest.cs b/src/Discord.Net.Rest/Net/Queue/Requests/MultipartRestRequest.cs
similarity index 100%
rename from src/Discord.Net.Core/Net/Queue/Requests/MultipartRestRequest.cs
rename to src/Discord.Net.Rest/Net/Queue/Requests/MultipartRestRequest.cs
diff --git a/src/Discord.Net.Core/Net/Queue/Requests/RestRequest.cs b/src/Discord.Net.Rest/Net/Queue/Requests/RestRequest.cs
similarity index 100%
rename from src/Discord.Net.Core/Net/Queue/Requests/RestRequest.cs
rename to src/Discord.Net.Rest/Net/Queue/Requests/RestRequest.cs
diff --git a/src/Discord.Net.Core/Net/Queue/Requests/WebSocketRequest.cs b/src/Discord.Net.Rest/Net/Queue/Requests/WebSocketRequest.cs
similarity index 100%
rename from src/Discord.Net.Core/Net/Queue/Requests/WebSocketRequest.cs
rename to src/Discord.Net.Rest/Net/Queue/Requests/WebSocketRequest.cs
diff --git a/src/Discord.Net.Core/Net/RateLimitInfo.cs b/src/Discord.Net.Rest/Net/RateLimitInfo.cs
similarity index 96%
rename from src/Discord.Net.Core/Net/RateLimitInfo.cs
rename to src/Discord.Net.Rest/Net/RateLimitInfo.cs
index 3c2b2acd5..5e87f664d 100644
--- a/src/Discord.Net.Core/Net/RateLimitInfo.cs
+++ b/src/Discord.Net.Rest/Net/RateLimitInfo.cs
@@ -3,7 +3,7 @@ using System.Collections.Generic;
namespace Discord.Net
{
- public struct RateLimitInfo
+ internal struct RateLimitInfo
{
public bool IsGlobal { get; }
public int? Limit { get; }
diff --git a/src/Discord.Net.Rest/Utils/TypingNotifier.cs b/src/Discord.Net.Rest/Utils/TypingNotifier.cs
index 45b715a76..b4bd2f44b 100644
--- a/src/Discord.Net.Rest/Utils/TypingNotifier.cs
+++ b/src/Discord.Net.Rest/Utils/TypingNotifier.cs
@@ -32,7 +32,7 @@ namespace Discord.Rest
await _channel.TriggerTypingAsync(_options).ConfigureAwait(false);
}
catch { }
- await Task.Delay(9750, token).ConfigureAwait(false);
+ await Task.Delay(9500, token).ConfigureAwait(false);
}
}
catch (OperationCanceledException) { }
diff --git a/src/Discord.Net.Rpc/Discord.Net.Rpc.csproj b/src/Discord.Net.Rpc/Discord.Net.Rpc.csproj
index 4b0ce4c5d..e69b5b66d 100644
--- a/src/Discord.Net.Rpc/Discord.Net.Rpc.csproj
+++ b/src/Discord.Net.Rpc/Discord.Net.Rpc.csproj
@@ -9,6 +9,7 @@
http://opensource.org/licenses/MIT
git
git://github.com/RogueException/Discord.Net
+ Discord.Rpc
@@ -20,6 +21,7 @@
+
@@ -29,9 +31,6 @@
-
-
-
$(NoWarn);CS1573;CS1591
true
diff --git a/src/Discord.Net.Rpc/API/DiscordRpcApiClient.cs b/src/Discord.Net.Rpc/DiscordRpcApiClient.cs
similarity index 99%
rename from src/Discord.Net.Rpc/API/DiscordRpcApiClient.cs
rename to src/Discord.Net.Rpc/DiscordRpcApiClient.cs
index ee6ad84e1..1348ccc7f 100644
--- a/src/Discord.Net.Rpc/API/DiscordRpcApiClient.cs
+++ b/src/Discord.Net.Rpc/DiscordRpcApiClient.cs
@@ -69,14 +69,13 @@ namespace Discord.API
public ConnectionState ConnectionState { get; private set; }
public DiscordRpcApiClient(string clientId, string userAgent, string origin, RestClientProvider restClientProvider, WebSocketProvider webSocketProvider,
- RetryMode defaultRetryMode = RetryMode.AlwaysRetry, JsonSerializer serializer = null, RequestQueue requestQueue = null)
- : base(restClientProvider, userAgent, defaultRetryMode, serializer, requestQueue, false)
+ RetryMode defaultRetryMode = RetryMode.AlwaysRetry, JsonSerializer serializer = null)
+ : base(restClientProvider, userAgent, defaultRetryMode, serializer, false)
{
_connectionLock = new SemaphoreSlim(1, 1);
_clientId = clientId;
_origin = origin;
-
- _requestQueue = requestQueue ?? new RequestQueue();
+
_requests = new ConcurrentDictionary();
_webSocketClient = webSocketProvider();
diff --git a/src/Discord.Net.Rpc/DiscordRpcClient.cs b/src/Discord.Net.Rpc/DiscordRpcClient.cs
index 9efa2d312..06096d8df 100644
--- a/src/Discord.Net.Rpc/DiscordRpcClient.cs
+++ b/src/Discord.Net.Rpc/DiscordRpcClient.cs
@@ -67,7 +67,7 @@ namespace Discord.Rpc
}
private static API.DiscordRpcApiClient CreateApiClient(string clientId, string origin, DiscordRpcConfig config)
- => new API.DiscordRpcApiClient(clientId, DiscordRestConfig.UserAgent, origin, config.RestClientProvider, config.WebSocketProvider, requestQueue: new RequestQueue());
+ => new API.DiscordRpcApiClient(clientId, DiscordRestConfig.UserAgent, origin, config.RestClientProvider, config.WebSocketProvider);
///
public async Task ConnectAsync()
diff --git a/src/Discord.Net.Rpc/Entities/Users/RpcUser.cs b/src/Discord.Net.Rpc/Entities/Users/RpcUser.cs
index 360039beb..074286dbc 100644
--- a/src/Discord.Net.Rpc/Entities/Users/RpcUser.cs
+++ b/src/Discord.Net.Rpc/Entities/Users/RpcUser.cs
@@ -14,7 +14,7 @@ namespace Discord.Rpc
public ushort DiscriminatorValue { get; private set; }
public string AvatarId { get; private set; }
- public string AvatarUrl => API.CDN.GetUserAvatarUrl(Id, AvatarId);
+ public string AvatarUrl => CDN.GetUserAvatarUrl(Id, AvatarId);
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public string Discriminator => DiscriminatorValue.ToString("D4");
public string Mention => MentionUtils.MentionUser(Id);
diff --git a/src/Discord.Net.WebSocket/Audio/AudioClient.cs b/src/Discord.Net.WebSocket/Audio/AudioClient.cs
index a3774a76c..7443c569a 100644
--- a/src/Discord.Net.WebSocket/Audio/AudioClient.cs
+++ b/src/Discord.Net.WebSocket/Audio/AudioClient.cs
@@ -7,7 +7,6 @@ using Newtonsoft.Json.Linq;
using System;
using System.IO;
using System.Linq;
-using System.Net;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
@@ -180,10 +179,9 @@ namespace Discord.Audio
{
return new RTPWriteStream(this, _secretKey, samplesPerFrame, _ssrc, bufferSize = 4000);
}
- public Stream CreatePCMStream(int samplesPerFrame, int? bitrate = null,
- OpusApplication application = OpusApplication.MusicOrMixed, int bufferSize = 4000)
+ public Stream CreatePCMStream(int samplesPerFrame, int? bitrate = null, int bufferSize = 4000)
{
- return new OpusEncodeStream(this, _secretKey, samplesPerFrame, _ssrc, bitrate, application, bufferSize);
+ return new OpusEncodeStream(this, _secretKey, samplesPerFrame, _ssrc, bitrate, bufferSize);
}
private async Task ProcessMessageAsync(VoiceOpCode opCode, object payload)
diff --git a/src/Discord.Net.Core/Audio/Opus/OpusApplication.cs b/src/Discord.Net.WebSocket/Audio/Opus/OpusApplication.cs
similarity index 100%
rename from src/Discord.Net.Core/Audio/Opus/OpusApplication.cs
rename to src/Discord.Net.WebSocket/Audio/Opus/OpusApplication.cs
diff --git a/src/Discord.Net.WebSocket/Audio/Streams/OpusEncodeStream.cs b/src/Discord.Net.WebSocket/Audio/Streams/OpusEncodeStream.cs
index 69d8b3d81..3806cc8bb 100644
--- a/src/Discord.Net.WebSocket/Audio/Streams/OpusEncodeStream.cs
+++ b/src/Discord.Net.WebSocket/Audio/Streams/OpusEncodeStream.cs
@@ -7,8 +7,7 @@
private readonly OpusEncoder _encoder;
- internal OpusEncodeStream(AudioClient audioClient, byte[] secretKey, int samplesPerFrame, uint ssrc, int? bitrate = null,
- OpusApplication application = OpusApplication.MusicOrMixed, int bufferSize = 4000)
+ internal OpusEncodeStream(AudioClient audioClient, byte[] secretKey, int samplesPerFrame, uint ssrc, int? bitrate = null, int bufferSize = 4000)
: base(audioClient, secretKey, samplesPerFrame, ssrc, bufferSize)
{
_encoder = new OpusEncoder(SampleRate, Channels);
diff --git a/src/Discord.Net.WebSocket/Discord.Net.WebSocket.csproj b/src/Discord.Net.WebSocket/Discord.Net.WebSocket.csproj
index c7ca40c13..df16ad855 100644
--- a/src/Discord.Net.WebSocket/Discord.Net.WebSocket.csproj
+++ b/src/Discord.Net.WebSocket/Discord.Net.WebSocket.csproj
@@ -10,12 +10,14 @@
http://opensource.org/licenses/MIT
git
git://github.com/RogueException/Discord.Net
+ Discord.WebSocket
+
diff --git a/src/Discord.Net.WebSocket/API/DiscordSocketApiClient.cs b/src/Discord.Net.WebSocket/DiscordSocketApiClient.cs
similarity index 99%
rename from src/Discord.Net.WebSocket/API/DiscordSocketApiClient.cs
rename to src/Discord.Net.WebSocket/DiscordSocketApiClient.cs
index 9592e2a04..1ab67d724 100644
--- a/src/Discord.Net.WebSocket/API/DiscordSocketApiClient.cs
+++ b/src/Discord.Net.WebSocket/DiscordSocketApiClient.cs
@@ -33,8 +33,8 @@ namespace Discord.API
public ConnectionState ConnectionState { get; private set; }
public DiscordSocketApiClient(RestClientProvider restClientProvider, string userAgent, WebSocketProvider webSocketProvider,
- RetryMode defaultRetryMode = RetryMode.AlwaysRetry, JsonSerializer serializer = null, RequestQueue requestQueue = null)
- : base(restClientProvider, userAgent, defaultRetryMode, serializer, requestQueue, true)
+ RetryMode defaultRetryMode = RetryMode.AlwaysRetry, JsonSerializer serializer = null)
+ : base(restClientProvider, userAgent, defaultRetryMode, serializer, true)
{
_gatewayClient = webSocketProvider();
//_gatewayClient.SetHeader("user-agent", DiscordConfig.UserAgent); (Causes issues in .NET Framework 4.6+)
diff --git a/src/Discord.Net.WebSocket/DiscordSocketClient.cs b/src/Discord.Net.WebSocket/DiscordSocketClient.cs
index 0faa3cbbd..647847498 100644
--- a/src/Discord.Net.WebSocket/DiscordSocketClient.cs
+++ b/src/Discord.Net.WebSocket/DiscordSocketClient.cs
@@ -126,7 +126,7 @@ namespace Discord.WebSocket
_largeGuilds = new ConcurrentQueue();
}
private static API.DiscordSocketApiClient CreateApiClient(DiscordSocketConfig config)
- => new API.DiscordSocketApiClient(config.RestClientProvider, DiscordRestConfig.UserAgent, config.WebSocketProvider, requestQueue: new RequestQueue());
+ => new API.DiscordSocketApiClient(config.RestClientProvider, DiscordRestConfig.UserAgent, config.WebSocketProvider);
protected override async Task OnLoginAsync(TokenType tokenType, string token)
{
@@ -1773,8 +1773,6 @@ namespace Discord.WebSocket
}
//IDiscordClient
- DiscordRestApiClient IDiscordClient.ApiClient => ApiClient;
-
Task IDiscordClient.ConnectAsync()
=> ConnectAsync();
diff --git a/src/Discord.Net.WebSocket/API/DiscordVoiceApiClient.cs b/src/Discord.Net.WebSocket/DiscordVoiceApiClient.cs
similarity index 100%
rename from src/Discord.Net.WebSocket/API/DiscordVoiceApiClient.cs
rename to src/Discord.Net.WebSocket/DiscordVoiceApiClient.cs
diff --git a/src/Discord.Net.WebSocket/Entities/Users/SocketUser.cs b/src/Discord.Net.WebSocket/Entities/Users/SocketUser.cs
index 674239be7..4819de751 100644
--- a/src/Discord.Net.WebSocket/Entities/Users/SocketUser.cs
+++ b/src/Discord.Net.WebSocket/Entities/Users/SocketUser.cs
@@ -15,7 +15,7 @@ namespace Discord.WebSocket
internal abstract SocketGlobalUser GlobalUser { get; }
internal abstract SocketPresence Presence { get; set; }
- public string AvatarUrl => API.CDN.GetUserAvatarUrl(Id, AvatarId);
+ public string AvatarUrl => CDN.GetUserAvatarUrl(Id, AvatarId);
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public string Discriminator => DiscriminatorValue.ToString("D4");
public string Mention => MentionUtils.MentionUser(Id);
diff --git a/src/Discord.Net/Discord.Net.csproj b/src/Discord.Net/Discord.Net.csproj
index be5f09125..4d9388915 100644
--- a/src/Discord.Net/Discord.Net.csproj
+++ b/src/Discord.Net/Discord.Net.csproj
@@ -9,12 +9,14 @@
http://opensource.org/licenses/MIT
git
git://github.com/RogueException/Discord.Net
+ Discord
+