| @@ -84,7 +84,9 @@ namespace Discord.API | |||||
| public bool? Mute; | public bool? Mute; | ||||
| [JsonProperty("deaf", NullValueHandling = NullValueHandling.Ignore)] | [JsonProperty("deaf", NullValueHandling = NullValueHandling.Ignore)] | ||||
| public bool? Deaf; | public bool? Deaf; | ||||
| [JsonProperty("roles", NullValueHandling = NullValueHandling.Ignore)] | |||||
| [JsonProperty("channel_id", NullValueHandling = NullValueHandling.Ignore)] | |||||
| public long? ChannelId; | |||||
| [JsonProperty("roles", NullValueHandling = NullValueHandling.Ignore)] | |||||
| [JsonConverter(typeof(EnumerableLongStringConverter))] | [JsonConverter(typeof(EnumerableLongStringConverter))] | ||||
| public IEnumerable<long> Roles; | public IEnumerable<long> Roles; | ||||
| } | } | ||||
| @@ -150,12 +150,12 @@ namespace Discord | |||||
| } | } | ||||
| //Users | //Users | ||||
| public Task EditUser(long serverId, long userId, bool? mute = null, bool? deaf = null, IEnumerable<long> roleIds = null) | |||||
| public Task EditUser(long serverId, long userId, bool? mute = null, bool? deaf = null, long? voiceChannelId = null, IEnumerable<long> roleIds = null) | |||||
| { | { | ||||
| if (serverId <= 0) throw new ArgumentOutOfRangeException(nameof(serverId)); | if (serverId <= 0) throw new ArgumentOutOfRangeException(nameof(serverId)); | ||||
| if (userId <= 0) throw new ArgumentOutOfRangeException(nameof(userId)); | if (userId <= 0) throw new ArgumentOutOfRangeException(nameof(userId)); | ||||
| var request = new EditMemberRequest { Mute = mute, Deaf = deaf, Roles = roleIds }; | |||||
| var request = new EditMemberRequest { Mute = mute, Deaf = deaf, ChannelId = voiceChannelId, Roles = roleIds }; | |||||
| return _rest.Patch(Endpoints.ServerMember(serverId, userId), request); | return _rest.Patch(Endpoints.ServerMember(serverId, userId), request); | ||||
| } | } | ||||
| public Task KickUser(long serverId, long userId) | public Task KickUser(long serverId, long userId) | ||||
| @@ -203,7 +203,7 @@ namespace Discord | |||||
| return query; | return query; | ||||
| } | } | ||||
| public Task EditUser(User user, bool? mute = null, bool? deaf = null, IEnumerable<Role> roles = null, EditMode rolesMode = EditMode.Set) | |||||
| public Task EditUser(User user, bool? mute = null, bool? deaf = null, Channel voiceChannel = null, IEnumerable<Role> roles = null, EditMode rolesMode = EditMode.Set) | |||||
| { | { | ||||
| if (user == null) throw new ArgumentNullException(nameof(user)); | if (user == null) throw new ArgumentNullException(nameof(user)); | ||||
| if (user.IsPrivate) throw new InvalidOperationException("Unable to edit users in a private channel"); | if (user.IsPrivate) throw new InvalidOperationException("Unable to edit users in a private channel"); | ||||
| @@ -217,8 +217,9 @@ namespace Discord | |||||
| var serverId = user.Server.Id; | var serverId = user.Server.Id; | ||||
| return _api.EditUser(serverId, user.Id, | return _api.EditUser(serverId, user.Id, | ||||
| mute: mute, deaf: deaf, | |||||
| roleIds: roleIds); | |||||
| mute: mute, deaf: deaf, | |||||
| voiceChannelId: voiceChannel?.Id, | |||||
| roleIds: roleIds); | |||||
| } | } | ||||
| public Task KickUser(User user) | public Task KickUser(User user) | ||||