Principles
KawaLink works by acting as a bridge between your Discord bot and a Lavalink node.
1. Manager
The Manager is the heart of KawaLink. it handles connections to Lavalink nodes and manages players for each server (guild).
2. Nodes
Nodes are instances of the Lavalink server. KawaLink can connect to multiple nodes to ensure high availability and better load distribution.
3. Players
Each server gets its own Player instance. The player manages the queue, playback controls (pause, skip, stop), and audio filters.
4. Communication
KawaLink uses WebSockets to communicate with Lavalink nodes and expects you to provide a way to send voice gateway payloads to Discord via discord.js.