Skip to content

Commit d3c45c5

Browse files
authored
Added Event overview
1 parent 113a37d commit d3c45c5

File tree

1 file changed

+85
-0
lines changed

1 file changed

+85
-0
lines changed

README.md

Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,91 @@ Check out the [Documentation](https://lc4.gitbook.io/lavalink-client) | or the [
9797

9898
- 😁 Much much more!
9999

100+
***
101+
102+
# All Events:
103+
104+
## On **Lavalink-Manager**:
105+
> *Player related logs*
106+
- `playerCreate` :arrow~5: `(player) => {}`
107+
- `playerDestroy` :arrow~5: `(player, reason) => {}`
108+
- `playerDisconnect` :arrow~5: `(player, voiceChannelId) => {}`
109+
- `playerMove` :arrow~5: `(player, oldChannelId, newChannelId) => {}`
110+
- Updating the voice channel is handled by the client automatically
111+
- `playerSocketClosed` :arrow~5: `(player, payload) => {}`
112+
113+
> *Track / Manager related logs*
114+
- `trackStart` :arrow~5: `(player, track, payload) => {}`
115+
- `trackStuck` :arrow~5: `(player, track, payload) => {}`
116+
- `trackError` :arrow~5: `(player, track, payload) => {}`
117+
- `trackEnd` :arrow~5: `(player, track, payload) => {}`
118+
- `queueEnd` :arrow~5: `(player, track, payload) => {}`
119+
- `playerUpdate` :arrow~5: `(player) => {}`
120+
121+
```js
122+
client.lavalink.on("create", (node, payload) => {
123+
console.log(`The Lavalink Node #${node.id} connected`);
124+
});
125+
// for all node based errors:
126+
client.lavalink.on("error", (node, error, payload) => {
127+
console.error(`The Lavalink Node #${node.id} errored: `, error);
128+
console.error(`Error-Payload: `, payload)
129+
});
130+
```
131+
132+
## On **Node-Manager**:
133+
- `raw` :arrow~5: `(node, payload) => {}`
134+
- `disconnect` :arrow~5: `(node, reason) => {}`
135+
- `connect` :arrow~5: `(node) => {}`
136+
- `reconnecting` :arrow~5: `(node) => {}`
137+
- `create` :arrow~5: `(node) => {}`
138+
- `destroy` :arrow~5: `(node) => {}`
139+
- `error` :arrow~5: `(node, error, payload) => {}`
140+
- `resumed` :arrow~5: `(node, payload, players) => {}`
141+
- Resuming needs to be handled manually by you *(aka add the players to the manager)*
142+
- e.g.:
143+
```js
144+
client.lavalink.nodeManager.on("create", (node, payload) => {
145+
console.log(`The Lavalink Node #${node.id} connected`);
146+
});
147+
// for all node based errors:
148+
client.lavalink.nodeManager.on("error", (node, error, payload) => {
149+
console.error(`The Lavalink Node #${node.id} errored: `, error);
150+
console.error(`Error-Payload: `, payload)
151+
});
152+
```
153+
154+
## How to log queue logs?
155+
> When creating the manager, add the option: `queueOptions.queueChangesWatcher: new myCustomWatcher(botClient)`
156+
> E.g:
157+
```js
158+
import { QueueChangesWatcher, LavalinkManager } from "lavalink-client";
159+
160+
class myCustomWatcher implements QueueChangesWatcher {
161+
constructor(client) {
162+
this.client = client;
163+
}
164+
shuffled(guildId, oldStoredQueue, newStoredQueue) {
165+
console.log(`${this.client.guilds.cache.get(guildId)?.name || guildId}: Queue got shuffled`)
166+
}
167+
tracksAdd(guildId, tracks, position, oldStoredQueue, newStoredQueue) {
168+
console.log(`${this.client.guilds.cache.get(guildId)?.name || guildId}: ${tracks.length} Tracks got added into the Queue at position #${position}`);
169+
}
170+
tracksRemoved(guildId, tracks, position, oldStoredQueue, newStoredQueue) {
171+
console.log(`${this.client.guilds.cache.get(guildId)?.name || guildId}: ${tracks.length} Tracks got removed from the Queue at position #${position}`);
172+
}
173+
}
174+
175+
client.lavalink = new LavalinkManager({
176+
// ... other options
177+
queueOptions: {
178+
queueChangesWatcher: new myCustomWatcher(client)
179+
}
180+
})
181+
```
182+
183+
***
184+
100185
# UpdateLog
101186
102187
## **Version 1.2.0**

0 commit comments

Comments
 (0)