diff --git a/src/Discord.Net.WebSocket/Audio/AudioClient.cs b/src/Discord.Net.WebSocket/Audio/AudioClient.cs index e1379fdd92..9f028ed874 100644 --- a/src/Discord.Net.WebSocket/Audio/AudioClient.cs +++ b/src/Discord.Net.WebSocket/Audio/AudioClient.cs @@ -321,11 +321,9 @@ private async Task ProcessPacketAsync(byte[] packet) return; } string ip; - int port; try { ip = Encoding.UTF8.GetString(packet, 8, 74 - 10).TrimEnd('\0'); - port = (packet[73] << 8) | packet[72]; } catch (Exception ex) { @@ -334,7 +332,7 @@ private async Task ProcessPacketAsync(byte[] packet) } await _audioLogger.DebugAsync("Received Discovery").ConfigureAwait(false); - await ApiClient.SendSelectProtocol(ip, port).ConfigureAwait(false); + await ApiClient.SendSelectProtocol(ip).ConfigureAwait(false); } else if (_connection.State == ConnectionState.Connected) { diff --git a/src/Discord.Net.WebSocket/DiscordVoiceApiClient.cs b/src/Discord.Net.WebSocket/DiscordVoiceApiClient.cs index 31be80a379..891bade2dd 100644 --- a/src/Discord.Net.WebSocket/DiscordVoiceApiClient.cs +++ b/src/Discord.Net.WebSocket/DiscordVoiceApiClient.cs @@ -143,7 +143,7 @@ public Task SendIdentityAsync(ulong userId, string sessionId, string token) }); } - public Task SendSelectProtocol(string externalIp, int externalPort) + public Task SendSelectProtocol(string externalIp) { return SendAsync(VoiceOpCode.SelectProtocol, new SelectProtocolParams { @@ -151,7 +151,7 @@ public Task SendSelectProtocol(string externalIp, int externalPort) Data = new UdpProtocolInfo { Address = externalIp, - Port = externalPort, + Port = UdpPort, Mode = Mode } }); diff --git a/src/Discord.Net.WebSocket/Entities/Guilds/SocketGuild.cs b/src/Discord.Net.WebSocket/Entities/Guilds/SocketGuild.cs index 6ca80cd738..34e5e6c21e 100644 --- a/src/Discord.Net.WebSocket/Entities/Guilds/SocketGuild.cs +++ b/src/Discord.Net.WebSocket/Entities/Guilds/SocketGuild.cs @@ -1744,11 +1744,9 @@ internal async Task ConnectAudioAsync(ulong channelId, bool selfDe if (external) { -#pragma warning disable IDISP001 - var _ = promise.TrySetResultAsync(null); + _ = promise.TrySetResultAsync(null); await Discord.ApiClient.SendVoiceStateUpdateAsync(_voiceStateUpdateParams).ConfigureAwait(false); return null; -#pragma warning restore IDISP001 } if (_audioClient == null) @@ -1766,19 +1764,15 @@ internal async Task ConnectAudioAsync(ulong channelId, bool selfDe await promise.TrySetExceptionAsync(ex); else await promise.TrySetCanceledAsync(); - return; } }; audioClient.Connected += () => { -#pragma warning disable IDISP001 - var _ = promise.TrySetResultAsync(_audioClient); -#pragma warning restore IDISP001 + _ = promise.TrySetResultAsync(_audioClient); return Task.Delay(0); }; -#pragma warning disable IDISP003 + _audioClient = audioClient; -#pragma warning restore IDISP003 } await Discord.ApiClient.SendVoiceStateUpdateAsync(_voiceStateUpdateParams).ConfigureAwait(false);