disconnect method

Future<void> disconnect()

Disconnect this player from the voice channel and destroy it.

Implementation

Future<void> disconnect() async {
  await lavalinkClient.deletePlayer(guildId.toString());
  client.gateway.updateVoiceState(
    guildId,
    GatewayVoiceStateBuilder(
      channelId: null,
      isMuted: false,
      isDeafened: false,
    ),
  );

  await Future.wait([
    _onTrackEndController.close(),
    _onTrackExceptionController.close(),
    _onTrackStartController.close(),
    _onTrackStuckController.close(),
    _onWebsocketClosedController.close(),
    _onUpdateController.close(),
  ]);
}