connect method
Connect to Lavalink
Implementation
Future<void> connect({bool enableResuming = false, int resumeTimeout = 60}) async {
LavalinkLogger.info('Connecting to Lavalink...', tag: 'Client');
await webSocket.connect();
// Wait for ready event
await eventStream.firstWhere((event) => event is ReadyEvent);
// Enable session resuming if requested
if (enableResuming && webSocket.sessionId != null) {
LavalinkLogger.info('Enabling session resuming...', tag: 'Client');
try {
await rest.updateSession(
webSocket.sessionId!,
resuming: true,
timeout: resumeTimeout,
);
LavalinkLogger.info('Session resuming enabled', tag: 'Client');
} catch (e) {
LavalinkLogger.warning('Failed to enable session resuming: $e', tag: 'Client');
}
}
LavalinkLogger.info('Client connected successfully', tag: 'Client');
}