02e2243a9864dac0ed8814ea956f82d295aa9dfd
The dank074 Streamer creates its own WebRTC voice connection, but Discord allows only ONE voice session per user. When VoiceController (audio) was already connected, the Streamer join hung forever (never got VOICE_SERVER_UPDATE). Now: 1. ScreenShareController takes releaseVoice/restoreVoice callbacks. 2. Before joining, it disconnects the @discordjs audio connection via VoiceController.disconnectGuild. 3. Streamer joins + streams GoLive. 4. After the stream ends, restoreVoice reconnects the audio connection so mic/listen keep working. 5. media.handler wires these via a new setVoiceController accessor from commandHandler; VoiceController is the single source of truth. Also adds caller-bound timeouts & safe .catch() everywhere so a stream failure can never become an unhandledRejection again.
Description
Bete Discord moderation watcher
26 MiB
Languages
TypeScript
97.2%
Nix
0.9%
Shell
0.8%
CSS
0.7%
PLpgSQL
0.4%