Browse Source

Added GetStreams

pull/1588/head
Jack Fox 5 years ago
parent
commit
7d3442eef4
2 changed files with 12 additions and 3 deletions
  1. +5
    -1
      src/Discord.Net.Core/Audio/IAudioClient.cs
  2. +7
    -2
      src/Discord.Net.WebSocket/Audio/AudioClient.cs

+ 5
- 1
src/Discord.Net.Core/Audio/IAudioClient.cs View File

@@ -1,4 +1,5 @@
using System;
using System;
using System.Collections.Generic;
using System.Threading.Tasks; using System.Threading.Tasks;


namespace Discord.Audio namespace Discord.Audio
@@ -20,6 +21,9 @@ namespace Discord.Audio
/// <summary> Gets the estimated round-trip latency, in milliseconds, to the voice UDP server. </summary> /// <summary> Gets the estimated round-trip latency, in milliseconds, to the voice UDP server. </summary>
int UdpLatency { get; } int UdpLatency { get; }


/// <summary>Gets the current audio streams.</summary>
Dictionary<ulong, AudioInStream> GetStreams();

Task StopAsync(); Task StopAsync();
Task SetSpeakingAsync(bool value); Task SetSpeakingAsync(bool value);




+ 7
- 2
src/Discord.Net.WebSocket/Audio/AudioClient.cs View File

@@ -99,11 +99,16 @@ namespace Discord.Audio
_token = token; _token = token;
await _connection.StartAsync().ConfigureAwait(false); await _connection.StartAsync().ConfigureAwait(false);
} }

public Dictionary<ulong, AudioInStream> GetStreams()
{
return _streams.ToDictionary(pair => pair.Key, pair => pair.Value.Reader);
}

public async Task StopAsync() public async Task StopAsync()
{ {
await _connection.StopAsync().ConfigureAwait(false); await _connection.StopAsync().ConfigureAwait(false);
} }

private async Task OnConnectingAsync() private async Task OnConnectingAsync()
{ {
await _audioLogger.DebugAsync("Connecting ApiClient").ConfigureAwait(false); await _audioLogger.DebugAsync("Connecting ApiClient").ConfigureAwait(false);
@@ -379,7 +384,7 @@ namespace Discord.Audio


private async Task RunHeartbeatAsync(int intervalMillis, CancellationToken cancelToken) private async Task RunHeartbeatAsync(int intervalMillis, CancellationToken cancelToken)
{ {
//TODO: Clean this up when Discord's session patch is live
// TODO: Clean this up when Discord's session patch is live
try try
{ {
await _audioLogger.DebugAsync("Heartbeat Started").ConfigureAwait(false); await _audioLogger.DebugAsync("Heartbeat Started").ConfigureAwait(false);


Loading…
Cancel
Save