Пример #1
0
 public async ValueTask HandleVoiceServerUpdated(object sender, VoiceServerUpdatedEventArgs e)
 {
     foreach (var service in VoiceServerUpdatedServices)
     {
         await ExecuteAsync((service, e) => service.OnVoiceServerUpdated(e), service, e).ConfigureAwait(false);
     }
 }
Пример #2
0
        private Task VoiceServerUpdatedAsync(VoiceServerUpdatedEventArgs e)
        {
            // Shouldn't ever be false.
            if (!Players.TryGetValue(e.Guild.Id, out var player))
            {
                return(Task.CompletedTask);
            }

            return(VoiceServerUpdated.SendAsync(player, e).AsTask());
        }
Пример #3
0
        internal static ValueTask SendAsync(LavalinkPlayer player, VoiceServerUpdatedEventArgs e)
        {
            using var payloadWriter = new PayloadWriter(player);
            var writer = payloadWriter.Writer;

            payloadWriter.WriteStartPayload("voiceUpdate");

            writer.WriteString("sessionId", player.SessionId);

            writer.WriteStartObject("event");
            writer.WriteString("token", e.Token);
            writer.WriteString("guild_id", player.GuildIdStr);
            writer.WriteString("endpoint", e.Endpoint);
            writer.WriteEndObject();

            return(payloadWriter.SendAsync());
        }
 protected internal virtual ValueTask OnVoiceServerUpdated(VoiceServerUpdatedEventArgs e)
 => default;