-
-
Notifications
You must be signed in to change notification settings - Fork 29
Open
Description
Describe the bug
When a bot joins a voice channel and stays in there for a longer time (can vary between 50 minutes to 6 hours) it will disconnect itself from the channel when DSharpPlus automatically reconnects to the gateway.
To Reproduce
Steps to reproduce the behavior:
- Create a bot with Lavalink4NET
- Let the bot join into a stage channel
- Invite the bot to speak
- Let it connect via Lavalink to an .mp3 stream over HTTP
- Leave the channel and wait
Expected behavior
The bot stays in the voice channel and the L4N wrapper tries to reconnect if DSP does it too.
Screenshots
No answer
(please complete the following information):
- Lavalink4NET 4.0.27
- No exception thrown
Trace Logs:
[2025-03-06 17:40:58] Trace: DSharpPlus.Net.Gateway.ITransportService[0] Length for the last inbound gateway event: 11
[2025-03-06 17:40:58] Trace: DSharpPlus.Net.Gateway.ITransportService[0] Payload for the last inbound gateway event: {"t":null,"s":null,"op":7,"d":null}
[2025-03-06 17:40:58] Debug: DSharpPlus.Net.Gateway.IGatewayClient[0] Received RECONNECT
[2025-03-06 17:40:58] Trace: DSharpPlus.Net.Gateway.IGatewayClient[0] Attempting reconnect, attempt 1
[2025-03-06 17:40:58] Trace: DSharpPlus.Net.Gateway.ITransportService[0] Disconnect requested: NormalClosure
[2025-03-06 17:40:58] Trace: DSharpPlus.Net.Gateway.ITransportService[0] Disconnecting. Current websocket state: Open
[2025-03-06 17:40:58] Trace: DSharpPlus.Net.Gateway.ITransportService[0] Connecting to the Discord gateway.
[2025-03-06 17:40:59] Trace: Lavalink4NET.LavalinkNode[2] [AzzyBot] Received payload from lavalink node: {
"op": "event",
"type": "WebSocketClosedEvent",
"guildId": "<redacted>",
"code": 4014,
"reason": "Disconnected.",
"byRemote": true
}
[2025-03-06 17:40:59] Debug: DSharpPlus.Net.Gateway.ITransportService[0] Connected to the Discord websocket, using zlib-stream compression.
[2025-03-06 17:40:59] Trace: DSharpPlus.Net.Gateway.ITransportService[0] Length for the last inbound gateway event: 113
[2025-03-06 17:40:59] Trace: DSharpPlus.Net.Gateway.ITransportService[0] Payload for the last inbound gateway event: {"t":null,"s":null,"op":10,"d":{"heartbeat_interval":41250,"_trace":["[\"gateway-prd-us-east1-d-2mtn\",{\"micros\":0.0}]"]}}
[2025-03-06 17:40:59] Debug: DSharpPlus.Net.Gateway.IGatewayClient[0] Received hello event, starting heartbeating with an interval of 00:00:41.2500000 and identifying.
[2025-03-06 17:40:59] Trace: Lavalink4NET.LavalinkNode[2] [AzzyBot] Received payload from lavalink node: {
"op": "playerUpdate",
"guildId": "<redacted>",
"state": {
"time": 1741279259003,
"position": 2492080,
"connected": false,
"ping": 11
}
}
[2025-03-06 17:40:59] Trace: Lavalink4NET.Players.LavalinkPlayer[1] [LavalinkPlayer@1163881113513627699 on AzzyBot] Processed player update (absolute timestamp: 03/06/2025 16:40:59 +00:00, relative track position: 00:41:32.0800000, connected: False, latency: 00:00:00.0110000).
[2025-03-06 17:40:59] Trace: DSharpPlus.Net.Gateway.ITransportService[0] Length for the last outbound outbound event: 311
[2025-03-06 17:40:59] Trace: DSharpPlus.Net.Gateway.ITransportService[0] Payload for the last outbound gateway event: {"op":2,"d":{"token":"<redacted>","properties":{"os":"linux","browser":"DSharpPlus 5.0.0.0","device":"DSharpPlus 5.0.0.0"},"large_threshold":250,"presence":{"since":null,"afk":false,"status":"online","game":{"name":"Music","type":2}},"intents":129}}
[2025-03-06 17:40:59] Debug: DSharpPlus.Net.Gateway.IGatewayClient[0] Identified with the Discord gateway
[2025-03-06 17:40:59] Trace: DSharpPlus.Net.Gateway.ITransportService[0] Length for the last inbound gateway event: 768
[2025-03-06 17:40:59] Trace: DSharpPlus.Net.Gateway.ITransportService[0] Payload for the last inbound gateway event: {"t":"READY","s":1,"op":0,"d":{"v":10,"user_settings":{},"user":{"verified":true,"username":"AzzyBot","public_flags":65536,"primary_guild":null,"mfa_enabled":true,"id":"<redacted>","global_name":null,"flags":65536,"email":null,"discriminator":"2199","clan":null,"bot":true,"avatar":"4a6b72823ae4dc075f497d48366683a5"},"session_type":"normal","session_id":"488236610662aefd9e422bb9980e7740","resume_gateway_url":"wss://gateway-us-east1-d.discord.gg","relationships":[],"private_channels":[],"presences":[],"guilds":[{"unavailable":true,"id":"<redacted>"},{"unavailable":true,"id":"<redacted>"},{"unavailable":true,"id":"<redacted>"}],"guild_join_requests":[],"geo_ordered_rtc_regions":["frankfurt","frankfurt-two","rotterdam","milan","warsaw"],"game_relationships":[],"auth":{},"application":{"id":"1270502179936931840","flags":27262976},"_trace":["[\"gateway-prd-us-east1-d-2mtn\",{\"micros\":56753,\"calls\":[\"id_created\",{\"micros\":1133,\"calls\":[]},\"session_lookup_time\",{\"micros\":2194,\"calls\":[]},\"session_lookup_finished\",{\"micros\":38,\"calls\":[]},\"discord-sessions-prd-1-183\",{\"micros\":51424,\"calls\":[\"start_session\",{\"micros\":46459,\"calls\":[\"discord-api-rpc-5877f57968-rthpk\",{\"micros\":41494,\"calls\":[\"get_user\",{\"micros\":4631},\"get_guilds\",{\"micros\":5842},\"send_scheduled_deletion_message\",{\"micros\":6},\"guild_join_requests\",{\"micros\":1},\"authorized_ip_coro\",{\"micros\":9},\"pending_payments\",{\"micros\":356}]}]},\"starting_guild_connect\",{\"micros\":72,\"calls\":[]},\"presence_started\",{\"micros\":4293,\"calls\":[]},\"guilds_started\",{\"micros\":165,\"calls\":[]},\"lobbies_started\",{\"micros\":2,\"calls\":[]},\"guilds_connect\",{\"micros\":2,\"calls\":[]},\"presence_connect\",{\"micros\":385,\"calls\":[]},\"connect_finished\",{\"micros\":411,\"calls\":[]},\"build_ready\",{\"micros\":19,\"calls\":[]},\"clean_ready\",{\"micros\":1,\"calls\":[]},\"optimize_ready\",{\"micros\":0,\"calls\":[]},\"split_ready\",{\"micros\":1,\"calls\":[]}]}]}]"]}}
[2025-03-06 17:40:59] Debug: DSharpPlus.Net.Gateway.IGatewayClient[0] Received READY, the gateway is now operational.
Additional context
I originally created the issue in the DSharpPlus/DSharpPlus#2255 library repo and was redirected to here. 🙂
Metadata
Metadata
Assignees
Labels
No labels