From cc04f7eb555f6c6aad41ec0203adf8e495066bba Mon Sep 17 00:00:00 2001 From: Brandon Smith Date: Mon, 26 Oct 2015 09:17:35 -0300 Subject: [PATCH 01/10] Added Modules project --- Discord.Net.sln | 18 ++++++ .../Discord.Net.Modules.csproj | 56 +++++++++++++++++++ .../Properties/AssemblyInfo.cs | 18 ++++++ .../Discord.Net.Modules.xproj | 21 +++++++ src/Discord.Net.Modules/project.json | 22 ++++++++ 5 files changed, 135 insertions(+) create mode 100644 src/Discord.Net.Modules.Net45/Discord.Net.Modules.csproj create mode 100644 src/Discord.Net.Modules.Net45/Properties/AssemblyInfo.cs create mode 100644 src/Discord.Net.Modules/Discord.Net.Modules.xproj create mode 100644 src/Discord.Net.Modules/project.json diff --git a/Discord.Net.sln b/Discord.Net.sln index bac38366c..1c32308ff 100644 --- a/Discord.Net.sln +++ b/Discord.Net.sln @@ -26,6 +26,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Discord.Net", "src\Discord. EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Discord.Net.Commands", "src\Discord.Net.Commands.Net45\Discord.Net.Commands.csproj", "{1B5603B4-6F8F-4289-B945-7BAAE523D740}" EndProject +Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Discord.Net.Modules", "src\Discord.Net.Modules\Discord.Net.Modules.xproj", "{01584E8A-78DA-486F-9EF9-A894E435841B}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Discord.Net.Modules", "src\Discord.Net.Modules.Net45\Discord.Net.Modules.csproj", "{3091164F-66AE-4543-A63D-167C1116241D}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -63,6 +67,18 @@ Global {1B5603B4-6F8F-4289-B945-7BAAE523D740}.FullDebug|Any CPU.Build.0 = Debug|Any CPU {1B5603B4-6F8F-4289-B945-7BAAE523D740}.Release|Any CPU.ActiveCfg = Release|Any CPU {1B5603B4-6F8F-4289-B945-7BAAE523D740}.Release|Any CPU.Build.0 = Release|Any CPU + {01584E8A-78DA-486F-9EF9-A894E435841B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {01584E8A-78DA-486F-9EF9-A894E435841B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {01584E8A-78DA-486F-9EF9-A894E435841B}.FullDebug|Any CPU.ActiveCfg = Debug|Any CPU + {01584E8A-78DA-486F-9EF9-A894E435841B}.FullDebug|Any CPU.Build.0 = Debug|Any CPU + {01584E8A-78DA-486F-9EF9-A894E435841B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {01584E8A-78DA-486F-9EF9-A894E435841B}.Release|Any CPU.Build.0 = Release|Any CPU + {3091164F-66AE-4543-A63D-167C1116241D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3091164F-66AE-4543-A63D-167C1116241D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3091164F-66AE-4543-A63D-167C1116241D}.FullDebug|Any CPU.ActiveCfg = Debug|Any CPU + {3091164F-66AE-4543-A63D-167C1116241D}.FullDebug|Any CPU.Build.0 = Debug|Any CPU + {3091164F-66AE-4543-A63D-167C1116241D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3091164F-66AE-4543-A63D-167C1116241D}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -75,5 +91,7 @@ Global {855D6B1D-847B-42DA-BE6A-23683EA89511} = {6317A2E6-8E36-4C3E-949B-3F10EC888AB9} {8D71A857-879A-4A10-859E-5FF824ED6688} = {DF03D4E8-38F6-4FE1-BC52-E38124BE8AFD} {1B5603B4-6F8F-4289-B945-7BAAE523D740} = {DF03D4E8-38F6-4FE1-BC52-E38124BE8AFD} + {01584E8A-78DA-486F-9EF9-A894E435841B} = {EA68EBE2-51C8-4440-9EF7-D633C90A5D35} + {3091164F-66AE-4543-A63D-167C1116241D} = {DF03D4E8-38F6-4FE1-BC52-E38124BE8AFD} EndGlobalSection EndGlobal diff --git a/src/Discord.Net.Modules.Net45/Discord.Net.Modules.csproj b/src/Discord.Net.Modules.Net45/Discord.Net.Modules.csproj new file mode 100644 index 000000000..4bc5bf376 --- /dev/null +++ b/src/Discord.Net.Modules.Net45/Discord.Net.Modules.csproj @@ -0,0 +1,56 @@ + + + + + Debug + AnyCPU + {3091164F-66AE-4543-A63D-167C1116241D} + Library + Properties + Discord + Discord.Net.Commands + 512 + v4.5 + False + + + true + full + false + bin\Debug\ + TRACE;DEBUG;NET45 + prompt + 4 + 6 + + + pdbonly + true + bin\Release\ + TRACE;NET45 + prompt + 4 + true + 6 + + + + + + + + + + {8d71a857-879a-4a10-859e-5ff824ed6688} + Discord.Net + + + + + \ No newline at end of file diff --git a/src/Discord.Net.Modules.Net45/Properties/AssemblyInfo.cs b/src/Discord.Net.Modules.Net45/Properties/AssemblyInfo.cs new file mode 100644 index 000000000..3eea0d999 --- /dev/null +++ b/src/Discord.Net.Modules.Net45/Properties/AssemblyInfo.cs @@ -0,0 +1,18 @@ +using System.Reflection; +using System.Runtime.InteropServices; + +[assembly: AssemblyTitle("Discord.Net.Modules")] +[assembly: AssemblyDescription("A Discord.Net extension adding basic plugin support.")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("RogueException")] +[assembly: AssemblyProduct("Discord.Net.Modules")] +[assembly: AssemblyCopyright("Copyright © 2015")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +[assembly: ComVisible(false)] +[assembly: Guid("76ea00e6-ea24-41e1-acb2-639c0313fa80")] + +[assembly: AssemblyVersion("0.8.0.0")] +[assembly: AssemblyFileVersion("0.8.0.0")] + diff --git a/src/Discord.Net.Modules/Discord.Net.Modules.xproj b/src/Discord.Net.Modules/Discord.Net.Modules.xproj new file mode 100644 index 000000000..f6db54ed1 --- /dev/null +++ b/src/Discord.Net.Modules/Discord.Net.Modules.xproj @@ -0,0 +1,21 @@ + + + + 14.0 + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + + + + 01584e8a-78da-486f-9ef9-a894e435841b + Discord + ..\..\artifacts\obj\$(MSBuildProjectName) + ..\..\artifacts\bin\$(MSBuildProjectName)\ + + + 2.0 + + + True + + + \ No newline at end of file diff --git a/src/Discord.Net.Modules/project.json b/src/Discord.Net.Modules/project.json new file mode 100644 index 000000000..857314fb8 --- /dev/null +++ b/src/Discord.Net.Modules/project.json @@ -0,0 +1,22 @@ +{ + "version": "0.8.0-beta1", + "description": "A Discord.Net extension adding basic plugin support.", + "authors": [ "RogueException" ], + "tags": [ "discord", "discordapp" ], + "projectUrl": "https://github.com/RogueException/Discord.Net", + "licenseUrl": "http://opensource.org/licenses/MIT", + "repository": { + "type": "git", + "url": "git://github.com/RogueException/Discord.Net" + }, + "compilationOptions": { + "warningsAsErrors": true + }, + "dependencies": { + "Discord.Net": "0.8.0-beta1" + }, + "frameworks": { + "net45": { }, + "dnx451": { } + } +} From a4d6a0e2bcea7000ea14be6d556da8b47eec7f88 Mon Sep 17 00:00:00 2001 From: Brandon Smith Date: Mon, 26 Oct 2015 09:22:59 -0300 Subject: [PATCH 02/10] 0.8.1-beta1 --- src/Discord.Net.Commands.Net45/Properties/AssemblyInfo.cs | 4 ++-- src/Discord.Net.Commands/project.json | 4 ++-- src/Discord.Net.Modules.Net45/Properties/AssemblyInfo.cs | 4 ++-- src/Discord.Net.Modules/project.json | 4 ++-- src/Discord.Net.Net45/Properties/AssemblyInfo.cs | 4 ++-- src/Discord.Net/project.json | 2 +- 6 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/Discord.Net.Commands.Net45/Properties/AssemblyInfo.cs b/src/Discord.Net.Commands.Net45/Properties/AssemblyInfo.cs index e242053d8..c9652a642 100644 --- a/src/Discord.Net.Commands.Net45/Properties/AssemblyInfo.cs +++ b/src/Discord.Net.Commands.Net45/Properties/AssemblyInfo.cs @@ -13,6 +13,6 @@ using System.Runtime.InteropServices; [assembly: ComVisible(false)] [assembly: Guid("76ea00e6-ea24-41e1-acb2-639c0313fa80")] -[assembly: AssemblyVersion("0.8.0.0")] -[assembly: AssemblyFileVersion("0.8.0.0")] +[assembly: AssemblyVersion("0.8.1.0")] +[assembly: AssemblyFileVersion("0.8.1.0")] diff --git a/src/Discord.Net.Commands/project.json b/src/Discord.Net.Commands/project.json index aac273d4e..259f9606a 100644 --- a/src/Discord.Net.Commands/project.json +++ b/src/Discord.Net.Commands/project.json @@ -1,5 +1,5 @@ { - "version": "0.8.0-beta1", + "version": "0.8.1-beta1", "description": "A Discord.Net extension adding basic command support.", "authors": [ "RogueException" ], "tags": [ "discord", "discordapp" ], @@ -13,7 +13,7 @@ "warningsAsErrors": true }, "dependencies": { - "Discord.Net": "0.8.0-beta1" + "Discord.Net": "0.8.1-beta1" }, "frameworks": { "net45": { }, diff --git a/src/Discord.Net.Modules.Net45/Properties/AssemblyInfo.cs b/src/Discord.Net.Modules.Net45/Properties/AssemblyInfo.cs index 3eea0d999..f61c1c991 100644 --- a/src/Discord.Net.Modules.Net45/Properties/AssemblyInfo.cs +++ b/src/Discord.Net.Modules.Net45/Properties/AssemblyInfo.cs @@ -13,6 +13,6 @@ using System.Runtime.InteropServices; [assembly: ComVisible(false)] [assembly: Guid("76ea00e6-ea24-41e1-acb2-639c0313fa80")] -[assembly: AssemblyVersion("0.8.0.0")] -[assembly: AssemblyFileVersion("0.8.0.0")] +[assembly: AssemblyVersion("0.8.1.0")] +[assembly: AssemblyFileVersion("0.8.1.0")] diff --git a/src/Discord.Net.Modules/project.json b/src/Discord.Net.Modules/project.json index 857314fb8..9f71ee00c 100644 --- a/src/Discord.Net.Modules/project.json +++ b/src/Discord.Net.Modules/project.json @@ -1,5 +1,5 @@ { - "version": "0.8.0-beta1", + "version": "0.8.1-beta1", "description": "A Discord.Net extension adding basic plugin support.", "authors": [ "RogueException" ], "tags": [ "discord", "discordapp" ], @@ -13,7 +13,7 @@ "warningsAsErrors": true }, "dependencies": { - "Discord.Net": "0.8.0-beta1" + "Discord.Net": "0.8.1-beta1" }, "frameworks": { "net45": { }, diff --git a/src/Discord.Net.Net45/Properties/AssemblyInfo.cs b/src/Discord.Net.Net45/Properties/AssemblyInfo.cs index 857ea2201..2825ff2a9 100644 --- a/src/Discord.Net.Net45/Properties/AssemblyInfo.cs +++ b/src/Discord.Net.Net45/Properties/AssemblyInfo.cs @@ -13,5 +13,5 @@ using System.Runtime.InteropServices; [assembly: ComVisible(false)] [assembly: Guid("76ea00e6-ea24-41e1-acb2-639c0313fa80")] -[assembly: AssemblyVersion("0.8.0")] -[assembly: AssemblyFileVersion("0.8.0")] +[assembly: AssemblyVersion("0.8.1.0")] +[assembly: AssemblyFileVersion("0.8.1.0")] diff --git a/src/Discord.Net/project.json b/src/Discord.Net/project.json index 8a2b2e1b2..3d0b55689 100644 --- a/src/Discord.Net/project.json +++ b/src/Discord.Net/project.json @@ -1,5 +1,5 @@ { - "version": "0.8.0-beta1", + "version": "0.8.1-beta1", "description": "An unofficial .Net API wrapper for the Discord client.", "authors": [ "RogueException" From bde4176dc2692dcfe4fd6fe1984e5c515e3a6230 Mon Sep 17 00:00:00 2001 From: Brandon Smith Date: Tue, 27 Oct 2015 14:21:03 -0300 Subject: [PATCH 03/10] Added support for GUILD_MEMBERS_CHUNK --- src/Discord.Net/API/Members.cs | 7 ++++++- src/Discord.Net/DiscordClient.cs | 11 +++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/Discord.Net/API/Members.cs b/src/Discord.Net/API/Members.cs index 9e69390c6..1f702719e 100644 --- a/src/Discord.Net/API/Members.cs +++ b/src/Discord.Net/API/Members.cs @@ -92,5 +92,10 @@ namespace Discord.API internal sealed class MemberAddEvent : MemberInfo { } internal sealed class MemberUpdateEvent : MemberInfo { } internal sealed class MemberRemoveEvent : MemberInfo { } - internal sealed class MemberVoiceStateUpdateEvent : VoiceMemberInfo { } + internal sealed class MemberVoiceStateUpdateEvent : VoiceMemberInfo { } + internal sealed class MembersChunkEvent + { + [JsonProperty("members")] + public MemberInfo[] Members; + } } diff --git a/src/Discord.Net/DiscordClient.cs b/src/Discord.Net/DiscordClient.cs index 39a280766..bef7a8986 100644 --- a/src/Discord.Net/DiscordClient.cs +++ b/src/Discord.Net/DiscordClient.cs @@ -418,6 +418,17 @@ namespace Discord RaiseUserRemoved(user); } break; + case "GUILD_MEMBERS_CHUNK": + { + var data = e.Payload.ToObject(_serializer); + foreach (var memberData in data.Members) + { + var user = _users.GetOrAdd(memberData.User.Id, memberData.GuildId); + user.Update(memberData); + //RaiseUserAdded(user); + } + } + break; //Roles case "GUILD_ROLE_CREATE": From d710b5d0fcc2a4fe9c13e3f1d9743cb55e570936 Mon Sep 17 00:00:00 2001 From: Brandon Smith Date: Tue, 27 Oct 2015 14:27:32 -0300 Subject: [PATCH 04/10] Added opcode 8 --- src/Discord.Net/API/Messages.cs | 15 +++++++++++++++ src/Discord.Net/DiscordClient.Users.cs | 8 ++++++++ src/Discord.Net/Net/WebSockets/DataWebSocket.cs | 6 ++++++ 3 files changed, 29 insertions(+) diff --git a/src/Discord.Net/API/Messages.cs b/src/Discord.Net/API/Messages.cs index 8fc031dd1..a5edb27ec 100644 --- a/src/Discord.Net/API/Messages.cs +++ b/src/Discord.Net/API/Messages.cs @@ -125,6 +125,21 @@ namespace Discord.API //Get public sealed class GetMessagesResponse : List { } + //Commands + internal sealed class GetUsersCommand : WebSocketMessage + { + public GetUsersCommand() : base(8) { } + public class Data + { + [JsonProperty("guild_id")] + public string ServerId; + [JsonProperty("query")] + public string Query; + [JsonProperty("limit")] + public int Limit; + } + } + //Events internal sealed class MessageCreateEvent : MessageInfo { } internal sealed class MessageUpdateEvent : MessageInfo { } diff --git a/src/Discord.Net/DiscordClient.Users.cs b/src/Discord.Net/DiscordClient.Users.cs index 2782909c3..fe75b6358 100644 --- a/src/Discord.Net/DiscordClient.Users.cs +++ b/src/Discord.Net/DiscordClient.Users.cs @@ -182,6 +182,14 @@ namespace Discord return response.Pruned ?? 0; } + /// When Config.UseLargeThreshold is enabled, running this command will request the Discord server to provide you with all offline users for a particular server. + public void RequestOfflineUsers(string serverId) + { + if (serverId == null) throw new ArgumentNullException(nameof(serverId)); + + _dataSocket.SendGetUsers(serverId); + } + public Task EditProfile(string currentPassword = "", string username = null, string email = null, string password = null, ImageType avatarType = ImageType.Png, byte[] avatar = null) diff --git a/src/Discord.Net/Net/WebSockets/DataWebSocket.cs b/src/Discord.Net/Net/WebSockets/DataWebSocket.cs index 49d368748..3db1c1a93 100644 --- a/src/Discord.Net/Net/WebSockets/DataWebSocket.cs +++ b/src/Discord.Net/Net/WebSockets/DataWebSocket.cs @@ -141,5 +141,11 @@ namespace Discord.Net.WebSockets leaveVoice.Payload.ServerId = serverId; QueueMessage(leaveVoice); } + public void SendGetUsers(string serverId, string query = "", int limit = 0) + { + var getOfflineUsers = new GetUsersCommand(); + getOfflineUsers.Payload.ServerId = serverId; + QueueMessage(getOfflineUsers); + } } } From dd7e570b6042f08f22b4c91fef44cfa8497b0d21 Mon Sep 17 00:00:00 2001 From: Brandon Smith Date: Tue, 27 Oct 2015 14:55:47 -0300 Subject: [PATCH 05/10] Bumped LargeThreshold up to 100 when enabled, to match client behavor --- src/Discord.Net/Net/WebSockets/DataWebSocket.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Discord.Net/Net/WebSockets/DataWebSocket.cs b/src/Discord.Net/Net/WebSockets/DataWebSocket.cs index 3db1c1a93..7e59565d7 100644 --- a/src/Discord.Net/Net/WebSockets/DataWebSocket.cs +++ b/src/Discord.Net/Net/WebSockets/DataWebSocket.cs @@ -27,7 +27,7 @@ namespace Discord.Net.WebSockets msg.Payload.Token = token; msg.Payload.Properties["$device"] = "Discord.Net"; if (_client.Config.UseLargeThreshold) - msg.Payload.LargeThreshold = 50; + msg.Payload.LargeThreshold = 100; msg.Payload.Compress = true; QueueMessage(msg); } From de1472160c9919b9c192a2f07535be48d238eeb1 Mon Sep 17 00:00:00 2001 From: Brandon Smith Date: Tue, 27 Oct 2015 20:47:34 -0300 Subject: [PATCH 06/10] Dont send the everyone role in EditUser --- src/Discord.Net/DiscordClient.Users.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Discord.Net/DiscordClient.Users.cs b/src/Discord.Net/DiscordClient.Users.cs index dad44fc63..21e257b0a 100644 --- a/src/Discord.Net/DiscordClient.Users.cs +++ b/src/Discord.Net/DiscordClient.Users.cs @@ -169,7 +169,10 @@ namespace Discord if (user == null) throw new ArgumentNullException(nameof(user)); CheckReady(); - return _api.EditUser(user.Server?.Id, user.Id, mute: mute, deaf: deaf, roles: roles.Select(x => x.Id)); + var everyoneId = user.Server.Id; + return _api.EditUser(user.Server?.Id, user.Id, + mute: mute, deaf: deaf, + roles: roles.Select(x => x.Id).Where(x => x != everyoneId)); } public Task KickUser(User user) From 3c0cef43617fc28003e79dacd5cf66d9ae4e3e49 Mon Sep 17 00:00:00 2001 From: Brandon Smith Date: Tue, 27 Oct 2015 20:51:48 -0300 Subject: [PATCH 07/10] Dont nullref if EditUser is called in a private channel. --- src/Discord.Net/DiscordClient.Users.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Discord.Net/DiscordClient.Users.cs b/src/Discord.Net/DiscordClient.Users.cs index 21e257b0a..e63fd04c1 100644 --- a/src/Discord.Net/DiscordClient.Users.cs +++ b/src/Discord.Net/DiscordClient.Users.cs @@ -169,10 +169,10 @@ namespace Discord if (user == null) throw new ArgumentNullException(nameof(user)); CheckReady(); - var everyoneId = user.Server.Id; - return _api.EditUser(user.Server?.Id, user.Id, + var serverId = user.Server?.Id; + return _api.EditUser(serverId, user.Id, mute: mute, deaf: deaf, - roles: roles.Select(x => x.Id).Where(x => x != everyoneId)); + roles: roles.Select(x => x.Id).Where(x => x != serverId)); } public Task KickUser(User user) From 3e5a6b2b32a15f95e72dece232ebb8e3d341c3b1 Mon Sep 17 00:00:00 2001 From: Brandon Smith Date: Tue, 27 Oct 2015 14:55:47 -0300 Subject: [PATCH 08/10] Bumped LargeThreshold up to 100 when enabled, to match client behavor --- src/Discord.Net/Net/WebSockets/DataWebSocket.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Discord.Net/Net/WebSockets/DataWebSocket.cs b/src/Discord.Net/Net/WebSockets/DataWebSocket.cs index 3db1c1a93..7e59565d7 100644 --- a/src/Discord.Net/Net/WebSockets/DataWebSocket.cs +++ b/src/Discord.Net/Net/WebSockets/DataWebSocket.cs @@ -27,7 +27,7 @@ namespace Discord.Net.WebSockets msg.Payload.Token = token; msg.Payload.Properties["$device"] = "Discord.Net"; if (_client.Config.UseLargeThreshold) - msg.Payload.LargeThreshold = 50; + msg.Payload.LargeThreshold = 100; msg.Payload.Compress = true; QueueMessage(msg); } From e162abc9ef81026641aacae65fdcb89be66f946d Mon Sep 17 00:00:00 2001 From: Brandon Smith Date: Tue, 27 Oct 2015 20:47:34 -0300 Subject: [PATCH 09/10] Dont send the everyone role in EditUser --- src/Discord.Net/DiscordClient.Users.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Discord.Net/DiscordClient.Users.cs b/src/Discord.Net/DiscordClient.Users.cs index dad44fc63..21e257b0a 100644 --- a/src/Discord.Net/DiscordClient.Users.cs +++ b/src/Discord.Net/DiscordClient.Users.cs @@ -169,7 +169,10 @@ namespace Discord if (user == null) throw new ArgumentNullException(nameof(user)); CheckReady(); - return _api.EditUser(user.Server?.Id, user.Id, mute: mute, deaf: deaf, roles: roles.Select(x => x.Id)); + var everyoneId = user.Server.Id; + return _api.EditUser(user.Server?.Id, user.Id, + mute: mute, deaf: deaf, + roles: roles.Select(x => x.Id).Where(x => x != everyoneId)); } public Task KickUser(User user) From 229f2ee7fbbcad3aa27374217685e32f7a2469a2 Mon Sep 17 00:00:00 2001 From: Brandon Smith Date: Tue, 27 Oct 2015 20:51:48 -0300 Subject: [PATCH 10/10] Dont nullref if EditUser is called in a private channel. --- src/Discord.Net/DiscordClient.Users.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Discord.Net/DiscordClient.Users.cs b/src/Discord.Net/DiscordClient.Users.cs index 21e257b0a..e63fd04c1 100644 --- a/src/Discord.Net/DiscordClient.Users.cs +++ b/src/Discord.Net/DiscordClient.Users.cs @@ -169,10 +169,10 @@ namespace Discord if (user == null) throw new ArgumentNullException(nameof(user)); CheckReady(); - var everyoneId = user.Server.Id; - return _api.EditUser(user.Server?.Id, user.Id, + var serverId = user.Server?.Id; + return _api.EditUser(serverId, user.Id, mute: mute, deaf: deaf, - roles: roles.Select(x => x.Id).Where(x => x != everyoneId)); + roles: roles.Select(x => x.Id).Where(x => x != serverId)); } public Task KickUser(User user)