kazagumo-bun 3.4.0-b → 3.4.0-c
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +270 -267
- package/package.json +21 -3
- package/.gitattributes +0 -2
- package/SECURITY.md +0 -21
- package/docs/.nojekyll +0 -1
- package/docs/assets/hierarchy.js +0 -1
- package/docs/assets/highlight.css +0 -99
- package/docs/assets/icons.js +0 -18
- package/docs/assets/icons.svg +0 -1
- package/docs/assets/main.js +0 -60
- package/docs/assets/navigation.js +0 -1
- package/docs/assets/search.js +0 -1
- package/docs/assets/style.css +0 -1633
- package/docs/classes/Kazagumo.Kazagumo.html +0 -307
- package/docs/classes/Managers_KazagumoPlayer.KazagumoPlayer.html +0 -81
- package/docs/classes/Managers_Supports_KazagumoQueue.KazagumoQueue.html +0 -222
- package/docs/classes/Managers_Supports_KazagumoTrack.KazagumoTrack.html +0 -43
- package/docs/classes/Modules_Interfaces.KazagumoError.html +0 -33
- package/docs/classes/Modules_Interfaces.KazagumoPlugin.html +0 -4
- package/docs/classes/Modules_Utils.KazagumoUtils.html +0 -3
- package/docs/classes/Plugins_PlayerMoved.KazagumoPlugin.html +0 -13
- package/docs/enums/Modules_Interfaces.PlayerState.html +0 -7
- package/docs/functions/Modules_Interfaces.escapeRegExp.html +0 -1
- package/docs/hierarchy.html +0 -1
- package/docs/index.html +0 -208
- package/docs/interfaces/Kazagumo.KazagumoEvents.html +0 -40
- package/docs/interfaces/Modules_Interfaces.CreatePlayerOptions.html +0 -21
- package/docs/interfaces/Modules_Interfaces.KazagumoOptions.html +0 -17
- package/docs/interfaces/Modules_Interfaces.KazagumoPlayerOptions.html +0 -9
- package/docs/interfaces/Modules_Interfaces.KazagumoSearchOptions.html +0 -5
- package/docs/interfaces/Modules_Interfaces.KazagumoSearchResult.html +0 -4
- package/docs/interfaces/Modules_Interfaces.Payload.html +0 -4
- package/docs/interfaces/Modules_Interfaces.PlayOptions.html +0 -6
- package/docs/interfaces/Modules_Interfaces.PlayerMovedChannels.html +0 -3
- package/docs/interfaces/Modules_Interfaces.RawTrack.html +0 -4
- package/docs/interfaces/Modules_Interfaces.ResolveOptions.html +0 -4
- package/docs/modules/Index.html +0 -1
- package/docs/modules/Kazagumo.html +0 -1
- package/docs/modules/Managers_KazagumoPlayer.html +0 -1
- package/docs/modules/Managers_Supports_KazagumoQueue.html +0 -1
- package/docs/modules/Managers_Supports_KazagumoTrack.html +0 -1
- package/docs/modules/Modules_Interfaces.html +0 -1
- package/docs/modules/Modules_Plugins.html +0 -1
- package/docs/modules/Modules_Utils.html +0 -1
- package/docs/modules/Plugins_PlayerMoved.html +0 -1
- package/docs/modules.html +0 -1
- package/docs/types/Modules_Interfaces.PlayerMovedState.html +0 -1
- package/docs/types/Modules_Interfaces.SearchEngines.html +0 -1
- package/docs/types/Modules_Interfaces.SearchResultTypes.html +0 -1
- package/docs/types/Modules_Interfaces.YoutubeThumbnail.html +0 -1
- package/docs/types/Modules_Utils.Constructor.html +0 -1
- package/docs/variables/Index.version.html +0 -1
- package/docs/variables/Modules_Interfaces.Events.html +0 -1
- package/docs/variables/Modules_Interfaces.SourceIDs.html +0 -1
- package/docs/variables/Modules_Interfaces.SupportedSources.html +0 -1
- package/docs/variables/Modules_Plugins.default.html +0 -1
- package/eslint.config.mjs +0 -15
- package/tsconfig.json +0 -23
package/docs/index.html
DELETED
|
@@ -1,208 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html><html class="default" lang="en" data-base="./"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>kazagumo</title><meta name="description" content="Documentation for kazagumo"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script defer src="assets/main.js"></script><script async src="assets/icons.js" id="tsd-icons-script"></script><script async src="assets/search.js" id="tsd-search-script"></script><script async src="assets/navigation.js" id="tsd-nav-script"></script><script async src="assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="index.html" class="title">kazagumo</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><h1>kazagumo</h1></div><div class="tsd-panel tsd-typography"><h1 id="kazagumo" class="tsd-anchor-link">Kazagumo<a href="#kazagumo" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h1><h4 id="a-shoukaku-wrapper-with-built-in-queue-system" class="tsd-anchor-link">A <a href="https://github.com/Deivu/Shoukaku">Shoukaku</a> wrapper with built in queue system<a href="#a-shoukaku-wrapper-with-built-in-queue-system" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4><p><img src="https://img.shields.io/appveyor/build/Takiyo0/kazagumo" alt="AppVeyor"> <img src="https://img.shields.io/npm/dm/kazagumo" alt="Downloads"> <img src="https://img.shields.io/npm/v/kazagumo" alt="npm"> <img src="https://img.shields.io/github/contributors/Takiyo0/Kazagumo" alt="GitHub contributors"> <img src="https://img.shields.io/github/commit-activity/m/Takiyo0/Kazagumo" alt="GitHub commit activity"> <img src="https://img.shields.io/github/last-commit/Takiyo0/Kazagumo" alt="GitHub last commit"> <img src="https://img.shields.io/npm/l/kazagumo" alt="NPM"></p>
|
|
2
|
-
<p><img src="https://i.imgur.com/jfVSvHj.png" alt="Kazagumo"></p>
|
|
3
|
-
<blockquote>
|
|
4
|
-
<p>Kazagumo © Azur Lane</p>
|
|
5
|
-
</blockquote>
|
|
6
|
-
<h2 id="features" class="tsd-anchor-link">Features:<a href="#features" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p>✓ Built-in queue system<br>
|
|
7
|
-
✓ Easy to use<br>
|
|
8
|
-
✓ Plugin system<br>
|
|
9
|
-
✓ Uses shoukaku v4 + capable of Lavalink v4<br>
|
|
10
|
-
✓ Stable <em>🙏</em></p>
|
|
11
|
-
<h2 id="note" class="tsd-anchor-link">Note<a href="#note" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p>⚠️Please check <a href="#environment">Environment</a> that Kazagumo 3.2.0 is verified working on. It's recommended to use the latest version of lavalink. If you encounter any problem, try using previous <a href="https://www.npmjs.com/package/kazagumo/v/3.1.2">version</a>. If issue still persist, please <a href="https://github.com/Takiyo0/Kazagumo/issues">open an issue</a> or ask me in <a href="https://discord.gg/nPPW2Gzqg2">Discord</a> (I will answer if I have time) ⚠️</p>
|
|
12
|
-
<h2 id="documentation" class="tsd-anchor-link">Documentation<a href="#documentation" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p>Please read the docs first before asking methods</p>
|
|
13
|
-
<blockquote>
|
|
14
|
-
<p>Kazagumo; <a href="https://takiyo0.github.io/Kazagumo">https://takiyo0.github.io/Kazagumo</a><br>
|
|
15
|
-
<a href="https://github.com/Deivu/Shoukaku">Shoukaku</a> by <a href="https://github.com/Deivu">Deivu</a>; <a href="https://deivu.github.io/Shoukaku">https://deivu.github.io/Shoukaku</a></p>
|
|
16
|
-
</blockquote>
|
|
17
|
-
<h2 id="installation" class="tsd-anchor-link">Installation<a href="#installation" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><blockquote>
|
|
18
|
-
<p>npm i kazagumo</p>
|
|
19
|
-
</blockquote>
|
|
20
|
-
<h2 id="metadata" class="tsd-anchor-link">Metadata<a href="#metadata" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><blockquote>
|
|
21
|
-
<p>version: 3.4.0<br>
|
|
22
|
-
pre-release: false<br>
|
|
23
|
-
Last build: 11-10-2025 21.20 PM</p>
|
|
24
|
-
</blockquote>
|
|
25
|
-
<h2 id="environment" class="tsd-anchor-link">Environment<a href="#environment" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p>The new lavalink system that separate YouTube plugins made configuration a bit harder. I will list all working environment that's known working.</p>
|
|
26
|
-
<table>
|
|
27
|
-
<thead>
|
|
28
|
-
<tr>
|
|
29
|
-
<th>Environment</th>
|
|
30
|
-
<th>Case 1</th>
|
|
31
|
-
<th>Case 2</th>
|
|
32
|
-
<th>Case 3</th>
|
|
33
|
-
</tr>
|
|
34
|
-
</thead>
|
|
35
|
-
<tbody>
|
|
36
|
-
<tr>
|
|
37
|
-
<td>Lavalink Version</td>
|
|
38
|
-
<td>v4.0.7</td>
|
|
39
|
-
<td>v4.0.7</td>
|
|
40
|
-
<td>v4.0.7</td>
|
|
41
|
-
</tr>
|
|
42
|
-
<tr>
|
|
43
|
-
<td>Youtube Plugin Version</td>
|
|
44
|
-
<td>v1.7.2</td>
|
|
45
|
-
<td>v1.7.2</td>
|
|
46
|
-
<td>none</td>
|
|
47
|
-
</tr>
|
|
48
|
-
<tr>
|
|
49
|
-
<td><a href="https://google.com">LavaSrc</a> Plugin Version</td>
|
|
50
|
-
<td>v4.1.1</td>
|
|
51
|
-
<td>v4.1.1</td>
|
|
52
|
-
<td>v4.1.1</td>
|
|
53
|
-
</tr>
|
|
54
|
-
<tr>
|
|
55
|
-
<td>Kazagumo Version</td>
|
|
56
|
-
<td>v3.2.0</td>
|
|
57
|
-
<td>v3.2.0</td>
|
|
58
|
-
<td>v3.2.0</td>
|
|
59
|
-
</tr>
|
|
60
|
-
<tr>
|
|
61
|
-
<td>Shoukaku Version</td>
|
|
62
|
-
<td>v4.1.0 (built-in v3.2.0)</td>
|
|
63
|
-
<td>v4.1.0 (built-in v3.2.0)</td>
|
|
64
|
-
<td>v4.1.0 (built-in v3.2.0)</td>
|
|
65
|
-
</tr>
|
|
66
|
-
<tr>
|
|
67
|
-
<td>Youtube Plugin Config</td>
|
|
68
|
-
<td>youtube.oauth.enabled = true<br>youtube.oauth.accessToken = "filled"<br>youtube.oauth.clients = MUSIC,ANDROID_TESTSUITE,WEB</td>
|
|
69
|
-
<td>youtube.oauth.enabled = true<br>youtube.oauth.accessToken = "filled"<br>youtube.oauth.clients = MUSIC,ANDROID_TESTSUITE,WEB,TVHTML5EMBEDDED</td>
|
|
70
|
-
<td>none</td>
|
|
71
|
-
</tr>
|
|
72
|
-
<tr>
|
|
73
|
-
<td>Lavalink Config</td>
|
|
74
|
-
<td>server.sources.youtube = false<br>server.sources.youtubeSearchEnabled = false</td>
|
|
75
|
-
<td>server.sources.youtube = false<br>server.sources.youtubeSearchEnabled = false</td>
|
|
76
|
-
<td>server.sources.youtube = true<br>server.sources.youtubeSearchEnabled = true</td>
|
|
77
|
-
</tr>
|
|
78
|
-
<tr>
|
|
79
|
-
<td>LavaSrc Config</td>
|
|
80
|
-
<td>lavasrc.sources.youtube = true</td>
|
|
81
|
-
<td>lavasrc.sources.youtube = true</td>
|
|
82
|
-
<td>lavasrc.sources.youtube = true</td>
|
|
83
|
-
</tr>
|
|
84
|
-
<tr>
|
|
85
|
-
<td><strong>Result</strong></td>
|
|
86
|
-
<td></td>
|
|
87
|
-
<td></td>
|
|
88
|
-
<td></td>
|
|
89
|
-
</tr>
|
|
90
|
-
<tr>
|
|
91
|
-
<td>YouTube Playlist Load*</td>
|
|
92
|
-
<td>✅</td>
|
|
93
|
-
<td>❌</td>
|
|
94
|
-
<td>✅</td>
|
|
95
|
-
</tr>
|
|
96
|
-
<tr>
|
|
97
|
-
<td>YouTube Track Load</td>
|
|
98
|
-
<td>✅</td>
|
|
99
|
-
<td>✅</td>
|
|
100
|
-
<td>❌</td>
|
|
101
|
-
</tr>
|
|
102
|
-
<tr>
|
|
103
|
-
<td>YouTube Search</td>
|
|
104
|
-
<td>✅</td>
|
|
105
|
-
<td>✅</td>
|
|
106
|
-
<td>✅</td>
|
|
107
|
-
</tr>
|
|
108
|
-
<tr>
|
|
109
|
-
<td>LavaSrc Spotify Playlist Load</td>
|
|
110
|
-
<td>✅</td>
|
|
111
|
-
<td>✅</td>
|
|
112
|
-
<td>✅</td>
|
|
113
|
-
</tr>
|
|
114
|
-
<tr>
|
|
115
|
-
<td>LavaSrc Spotify Track Load</td>
|
|
116
|
-
<td>✅</td>
|
|
117
|
-
<td>✅</td>
|
|
118
|
-
<td>✅</td>
|
|
119
|
-
</tr>
|
|
120
|
-
<tr>
|
|
121
|
-
<td>LavaSrc Spotify Search (spsearch:query)**</td>
|
|
122
|
-
<td>✅</td>
|
|
123
|
-
<td>✅</td>
|
|
124
|
-
<td>✅</td>
|
|
125
|
-
</tr>
|
|
126
|
-
<tr>
|
|
127
|
-
<td><strong>Summary</strong></td>
|
|
128
|
-
<td>✅ works just fine</td>
|
|
129
|
-
<td>➖ cannot load youtube playlist</td>
|
|
130
|
-
<td>❌ cannot play any track youtube related. including spotify</td>
|
|
131
|
-
</tr>
|
|
132
|
-
</tbody>
|
|
133
|
-
</table>
|
|
134
|
-
<p>Note:</p>
|
|
135
|
-
<ul>
|
|
136
|
-
<li><code>*</code> = youtube playlist load with YouTube plugin requires oauth enabled and accessToken filled and <code>TVHTML5EMBEDDED</code> to be removed from oauth clients, since it's the default config</li>
|
|
137
|
-
<li><code>**</code> = to do that, you need to add <code>source</code> option into <code>SearchOptions</code>. Example: <code>kazagumo.search(query, {source: "spsearch:"});</code> (⚠️you need to include <code>:</code> in the last of <code>spsearch</code> or anything to replace source)</li>
|
|
138
|
-
</ul>
|
|
139
|
-
<h2 id="plugins" class="tsd-anchor-link">Plugins<a href="#plugins" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><ul>
|
|
140
|
-
<li>Official <a href="https://npmjs.com/package/kazagumo-spotify">spotify plugin</a></li>
|
|
141
|
-
</ul>
|
|
142
|
-
<blockquote>
|
|
143
|
-
<p>npm i kazagumo-spotify</p>
|
|
144
|
-
</blockquote>
|
|
145
|
-
<ul>
|
|
146
|
-
<li>Additional <a href="https://www.npmjs.com/package/kazagumo-apple">apple plugin</a></li>
|
|
147
|
-
</ul>
|
|
148
|
-
<blockquote>
|
|
149
|
-
<p>npm i kazagumo-apple</p>
|
|
150
|
-
</blockquote>
|
|
151
|
-
<ul>
|
|
152
|
-
<li>Additional <a href="https://www.npmjs.com/package/kazagumo-filter">filter plugin</a></li>
|
|
153
|
-
</ul>
|
|
154
|
-
<blockquote>
|
|
155
|
-
<p>npm i kazagumo-filter</p>
|
|
156
|
-
</blockquote>
|
|
157
|
-
<ul>
|
|
158
|
-
<li>Additional <a href="https://www.npmjs.com/package/kazagumo-nico">nicovideo.jp plugin</a></li>
|
|
159
|
-
</ul>
|
|
160
|
-
<blockquote>
|
|
161
|
-
<p>npm i kazagumo-nico</p>
|
|
162
|
-
</blockquote>
|
|
163
|
-
<ul>
|
|
164
|
-
<li>Additional <a href="https://www.npmjs.com/package/kazagumo-deezer">deezer plugin</a></li>
|
|
165
|
-
</ul>
|
|
166
|
-
<blockquote>
|
|
167
|
-
<p>npm i kazagumo-deezer</p>
|
|
168
|
-
</blockquote>
|
|
169
|
-
<ul>
|
|
170
|
-
<li>Stone-Deezer <a href="https://www.npmjs.com/package/stone-deezer">deezer plugin</a></li>
|
|
171
|
-
</ul>
|
|
172
|
-
<blockquote>
|
|
173
|
-
<p>npm i stone-deezer</p>
|
|
174
|
-
</blockquote>
|
|
175
|
-
<h2 id="lavalink-installation" class="tsd-anchor-link">Lavalink installation<a href="#lavalink-installation" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><blockquote>
|
|
176
|
-
<p>Basically you can follow this <a href="https://lavalink.dev/getting-started/index.html">Official Step</a></p>
|
|
177
|
-
</blockquote>
|
|
178
|
-
<h2 id="changes-v2-v3" class="tsd-anchor-link">Changes v2 -> v3<a href="#changes-v2-v3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><pre><code class="javascript"><span class="hl-0">// You can get ShoukakuPlayer from here</span><br/><span class="hl-1">+ <</span><span class="hl-2">KazagumoPlayer</span><span class="hl-1">>.</span><span class="hl-2">shoukaku</span><br/><span class="hl-1">+ </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"69696969696969"</span><span class="hl-1">).</span><span class="hl-2">shoukaku</span><br/><br/><span class="hl-0">// Search tracks</span><br/><span class="hl-1">- </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-4">getNode</span><span class="hl-1">().</span><span class="hl-2">rest</span><span class="hl-1">.</span><span class="hl-4">resolve</span><span class="hl-1">(</span><span class="hl-5">"ytsearch:pretender Official髭男dism"</span><span class="hl-1">) </span><span class="hl-0">// Shoukaku</span><br/><span class="hl-1">+ </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-4">search</span><span class="hl-1">(</span><span class="hl-5">"pretender Official髭男dism"</span><span class="hl-1">) </span><span class="hl-0">// Kazagumo</span><br/><span class="hl-1"> </span><br/><span class="hl-0">// Create a player</span><br/><span class="hl-1">- </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-4">getNode</span><span class="hl-1">().</span><span class="hl-4">joinChannel</span><span class="hl-1">(...) </span><span class="hl-0">// Shoukaku</span><br/><span class="hl-1">+ </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-4">createPlayer</span><span class="hl-1">(...) </span><span class="hl-0">// Kazagumo</span><br/><span class="hl-1"> </span><br/><span class="hl-0">// Add a track to the queue. MUST BE A kazagumoTrack, you can get from <KazagumoPlayer>.search()</span><br/><span class="hl-1">+ </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"69696969696969"</span><span class="hl-1">).</span><span class="hl-2">queue</span><span class="hl-1">.</span><span class="hl-4">add</span><span class="hl-1">(</span><span class="hl-2">kazagumoTrack</span><span class="hl-1">) </span><span class="hl-0">// Kazagumo </span><br/><br/><span class="hl-0">// Play a track</span><br/><span class="hl-1">- </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"69696969696969"</span><span class="hl-1">).</span><span class="hl-4">playTrack</span><span class="hl-1">(</span><span class="hl-2">shoukakuTrack</span><span class="hl-1">) </span><span class="hl-0">// Shoukaku</span><br/><span class="hl-1">+ </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"69696969696969"</span><span class="hl-1">).</span><span class="hl-4">play</span><span class="hl-1">() </span><span class="hl-0">// Kazagumo, take the first song on queue</span><br/><span class="hl-1">+ </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"69696969696969"</span><span class="hl-1">).</span><span class="hl-4">play</span><span class="hl-1">(</span><span class="hl-2">kazagumoTrack</span><span class="hl-1">) </span><span class="hl-0">// Kazagumo, will unshift current song and forceplay this song</span><br/><span class="hl-1"> </span><br/><span class="hl-0">// Play previous song</span><br/><span class="hl-1">+ </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"69696969696969"</span><span class="hl-1">).</span><span class="hl-4">play</span><span class="hl-1">(</span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"69696969696969"</span><span class="hl-1">).</span><span class="hl-4">getPrevious</span><span class="hl-1">()) </span><span class="hl-0">// Kazagumo, make sure it's not undefined first </span><br/><br/><span class="hl-0">// Pauses or resumes the player. Control from kazagumoPlayer instead of shoukakuPlayer</span><br/><span class="hl-1">- </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"69696969696969"</span><span class="hl-1">).</span><span class="hl-4">setPaused</span><span class="hl-1">(</span><span class="hl-3">true</span><span class="hl-1">) </span><span class="hl-0">// Shoukaku</span><br/><span class="hl-1">+ </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"69696969696969"</span><span class="hl-1">).</span><span class="hl-4">pause</span><span class="hl-1">(</span><span class="hl-3">true</span><span class="hl-1">) </span><span class="hl-0">// Kazagumo</span><br/><span class="hl-1"> </span><br/><span class="hl-0">// Set filters. Access shoukakuPlayer from <KazagumoPlayer>.player</span><br/><span class="hl-1">- </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"69696969696969"</span><span class="hl-1">).</span><span class="hl-4">setFilters</span><span class="hl-1">({</span><span class="hl-2">lowPass:</span><span class="hl-1"> {</span><span class="hl-2">smoothing:</span><span class="hl-1"> </span><span class="hl-6">2</span><span class="hl-1">}}) </span><span class="hl-0">// Shoukaku</span><br/><span class="hl-1">+ </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"69696969696969"</span><span class="hl-1">).</span><span class="hl-2">shoukaku</span><span class="hl-1">.</span><span class="hl-4">setFilters</span><span class="hl-1">({</span><span class="hl-2">lowPass:</span><span class="hl-1"> {</span><span class="hl-2">smoothing:</span><span class="hl-1"> </span><span class="hl-6">2</span><span class="hl-1">}}) </span><span class="hl-0">// Kazagumo</span><br/><br/><span class="hl-0">// Set volume, use Kazagumo's for smoother volume</span><br/><span class="hl-1">- </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"69696969696969"</span><span class="hl-1">).</span><span class="hl-4">setVolume</span><span class="hl-1">(</span><span class="hl-6">1</span><span class="hl-1">) </span><span class="hl-0">// Shoukaku 100% volume</span><br/><span class="hl-1">+ </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"69696969696969"</span><span class="hl-1">).</span><span class="hl-4">setVolume</span><span class="hl-1">(</span><span class="hl-6">100</span><span class="hl-1">) </span><span class="hl-0">// Kazagumo 100% volume</span><br/><br/><span class="hl-0">// Skip the current song</span><br/><span class="hl-1">- </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"69696969696969"</span><span class="hl-1">).</span><span class="hl-4">stopTrack</span><span class="hl-1">() </span><span class="hl-0">// Stoptrack basically skip on shoukaku</span><br/><span class="hl-1">+ </span><span class="hl-3">this</span><span class="hl-1">.</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"69696969696969"</span><span class="hl-1">).</span><span class="hl-4">skip</span><span class="hl-1">() </span><span class="hl-0">// skip on kazagumo. easier to find :v</span>
|
|
179
|
-
</code><button type="button">Copy</button></pre>
|
|
180
|
-
|
|
181
|
-
<h2 id="support" class="tsd-anchor-link">Support<a href="#support" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p>⚠️ Please read the docs first before asking question ⚠️</p>
|
|
182
|
-
<blockquote>
|
|
183
|
-
<p>Kazagumo support server: <a href="https://discord.gg/nPPW2Gzqg2">https://discord.gg/nPPW2Gzqg2</a> (anywhere lmao)<br>
|
|
184
|
-
Shoukaku support server: <a href="https://discord.gg/FVqbtGu">https://discord.gg/FVqbtGu</a> (#development)<br>
|
|
185
|
-
Report if you found a bug here <a href="https://github.com/Takiyo0/Kazagumo/issues/new/choose">https://github.com/Takiyo0/Kazagumo/issues/new/choose</a></p>
|
|
186
|
-
</blockquote>
|
|
187
|
-
<h2 id="enable-playermoved-event" class="tsd-anchor-link">Enable playerMoved event<a href="#enable-playermoved-event" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><pre><code class="javascript"><span class="hl-7">import</span><span class="hl-1"> { </span><span class="hl-2">Kazagumo</span><span class="hl-1">, </span><span class="hl-2">Payload</span><span class="hl-1">, </span><span class="hl-2">Plugins</span><span class="hl-1"> } </span><span class="hl-7">from</span><span class="hl-1"> </span><span class="hl-5">"kazagumo"</span><span class="hl-1">;</span><br/><br/><span class="hl-3">const</span><span class="hl-1"> </span><span class="hl-8">kazagumo</span><span class="hl-1"> = </span><span class="hl-3">new</span><span class="hl-1"> </span><span class="hl-4">Kazagumo</span><span class="hl-1">({</span><br/><span class="hl-1"> ...,</span><br/><span class="hl-1"> </span><span class="hl-2">plugins:</span><span class="hl-1"> [</span><span class="hl-3">new</span><span class="hl-1"> </span><span class="hl-2">Plugins</span><span class="hl-1">.</span><span class="hl-4">PlayerMoved</span><span class="hl-1">(</span><span class="hl-2">client</span><span class="hl-1">)]</span><br/><span class="hl-1">}, </span><span class="hl-2">Connector</span><span class="hl-1">, </span><span class="hl-2">Nodes</span><span class="hl-1">, </span><span class="hl-2">ShoukakuOptions</span><span class="hl-1">)</span>
|
|
188
|
-
</code><button type="button">Copy</button></pre>
|
|
189
|
-
|
|
190
|
-
<h2 id="example-bot" class="tsd-anchor-link">Example bot<a href="#example-bot" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><pre><code class="javascript"><span class="hl-3">const</span><span class="hl-1"> {</span><span class="hl-8">Client</span><span class="hl-1">, </span><span class="hl-8">GatewayIntentBits</span><span class="hl-1">} = </span><span class="hl-4">require</span><span class="hl-1">(</span><span class="hl-5">'discord.js'</span><span class="hl-1">);</span><br/><span class="hl-3">const</span><span class="hl-1"> {</span><span class="hl-8">Guilds</span><span class="hl-1">, </span><span class="hl-8">GuildVoiceStates</span><span class="hl-1">, </span><span class="hl-8">GuildMessages</span><span class="hl-1">, </span><span class="hl-8">MessageContent</span><span class="hl-1">} = </span><span class="hl-2">GatewayIntentBits</span><span class="hl-1">;</span><br/><span class="hl-3">const</span><span class="hl-1"> {</span><span class="hl-8">Connectors</span><span class="hl-1">} = </span><span class="hl-4">require</span><span class="hl-1">(</span><span class="hl-5">"shoukaku"</span><span class="hl-1">);</span><br/><span class="hl-3">const</span><span class="hl-1"> {</span><span class="hl-8">Kazagumo</span><span class="hl-1">, </span><span class="hl-8">KazagumoTrack</span><span class="hl-1">} = </span><span class="hl-4">require</span><span class="hl-1">(</span><span class="hl-5">"../dist"</span><span class="hl-1">);</span><br/><br/><span class="hl-3">const</span><span class="hl-1"> </span><span class="hl-8">Nodes</span><span class="hl-1"> = [{</span><br/><span class="hl-1"> </span><span class="hl-2">name:</span><span class="hl-1"> </span><span class="hl-5">'owo'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">url:</span><span class="hl-1"> </span><span class="hl-5">'localhost:2333'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">auth:</span><span class="hl-1"> </span><span class="hl-5">'youshallnotpass'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">secure:</span><span class="hl-1"> </span><span class="hl-3">false</span><br/><span class="hl-1">}];</span><br/><span class="hl-3">const</span><span class="hl-1"> </span><span class="hl-8">client</span><span class="hl-1"> = </span><span class="hl-3">new</span><span class="hl-1"> </span><span class="hl-4">Client</span><span class="hl-1">({</span><span class="hl-2">intents:</span><span class="hl-1"> [</span><span class="hl-2">Guilds</span><span class="hl-1">, </span><span class="hl-2">GuildVoiceStates</span><span class="hl-1">, </span><span class="hl-2">GuildMessages</span><span class="hl-1">, </span><span class="hl-2">MessageContent</span><span class="hl-1">]});</span><br/><span class="hl-3">const</span><span class="hl-1"> </span><span class="hl-8">kazagumo</span><span class="hl-1"> = </span><span class="hl-3">new</span><span class="hl-1"> </span><span class="hl-4">Kazagumo</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-2">defaultSearchEngine:</span><span class="hl-1"> </span><span class="hl-5">"youtube"</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-0">// MAKE SURE YOU HAVE THIS</span><br/><span class="hl-1"> </span><span class="hl-4">send</span><span class="hl-2">:</span><span class="hl-1"> (</span><span class="hl-2">guildId</span><span class="hl-1">, </span><span class="hl-2">payload</span><span class="hl-1">) </span><span class="hl-3">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-3">const</span><span class="hl-1"> </span><span class="hl-8">guild</span><span class="hl-1"> = </span><span class="hl-2">client</span><span class="hl-1">.</span><span class="hl-2">guilds</span><span class="hl-1">.</span><span class="hl-2">cache</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-2">guildId</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-2">guild</span><span class="hl-1">) </span><span class="hl-2">guild</span><span class="hl-1">.</span><span class="hl-2">shard</span><span class="hl-1">.</span><span class="hl-4">send</span><span class="hl-1">(</span><span class="hl-2">payload</span><span class="hl-1">);</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">}, </span><span class="hl-3">new</span><span class="hl-1"> </span><span class="hl-2">Connectors</span><span class="hl-1">.</span><span class="hl-4">DiscordJS</span><span class="hl-1">(</span><span class="hl-2">client</span><span class="hl-1">), </span><span class="hl-2">Nodes</span><span class="hl-1">);</span><br/><br/><span class="hl-2">client</span><span class="hl-1">.</span><span class="hl-4">on</span><span class="hl-1">(</span><span class="hl-5">"ready"</span><span class="hl-1">, () </span><span class="hl-3">=></span><span class="hl-1"> </span><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-4">log</span><span class="hl-1">(</span><span class="hl-2">client</span><span class="hl-1">.</span><span class="hl-2">user</span><span class="hl-1">.</span><span class="hl-2">tag</span><span class="hl-1"> + </span><span class="hl-5">" Ready!"</span><span class="hl-1">));</span><br/><br/><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-2">shoukaku</span><span class="hl-1">.</span><span class="hl-4">on</span><span class="hl-1">(</span><span class="hl-5">'ready'</span><span class="hl-1">, (</span><span class="hl-2">name</span><span class="hl-1">) </span><span class="hl-3">=></span><span class="hl-1"> </span><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-4">log</span><span class="hl-1">(</span><span class="hl-5">`Lavalink </span><span class="hl-3">${</span><span class="hl-2">name</span><span class="hl-3">}</span><span class="hl-5">: Ready!`</span><span class="hl-1">));</span><br/><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-2">shoukaku</span><span class="hl-1">.</span><span class="hl-4">on</span><span class="hl-1">(</span><span class="hl-5">'error'</span><span class="hl-1">, (</span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">error</span><span class="hl-1">) </span><span class="hl-3">=></span><span class="hl-1"> </span><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-4">error</span><span class="hl-1">(</span><span class="hl-5">`Lavalink </span><span class="hl-3">${</span><span class="hl-2">name</span><span class="hl-3">}</span><span class="hl-5">: Error Caught,`</span><span class="hl-1">, </span><span class="hl-2">error</span><span class="hl-1">));</span><br/><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-2">shoukaku</span><span class="hl-1">.</span><span class="hl-4">on</span><span class="hl-1">(</span><span class="hl-5">'close'</span><span class="hl-1">, (</span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">code</span><span class="hl-1">, </span><span class="hl-2">reason</span><span class="hl-1">) </span><span class="hl-3">=></span><span class="hl-1"> </span><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-4">warn</span><span class="hl-1">(</span><span class="hl-5">`Lavalink </span><span class="hl-3">${</span><span class="hl-2">name</span><span class="hl-3">}</span><span class="hl-5">: Closed, Code </span><span class="hl-3">${</span><span class="hl-2">code</span><span class="hl-3">}</span><span class="hl-5">, Reason </span><span class="hl-3">${</span><span class="hl-2">reason</span><span class="hl-9"> </span><span class="hl-1">||</span><span class="hl-9"> </span><span class="hl-5">'No reason'</span><span class="hl-3">}</span><span class="hl-5">`</span><span class="hl-1">));</span><br/><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-2">shoukaku</span><span class="hl-1">.</span><span class="hl-4">on</span><span class="hl-1">(</span><span class="hl-5">'debug'</span><span class="hl-1">, (</span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">info</span><span class="hl-1">) </span><span class="hl-3">=></span><span class="hl-1"> </span><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-4">debug</span><span class="hl-1">(</span><span class="hl-5">`Lavalink </span><span class="hl-3">${</span><span class="hl-2">name</span><span class="hl-3">}</span><span class="hl-5">: Debug,`</span><span class="hl-1">, </span><span class="hl-2">info</span><span class="hl-1">));</span><br/><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-2">shoukaku</span><span class="hl-1">.</span><span class="hl-4">on</span><span class="hl-1">(</span><span class="hl-5">'disconnect'</span><span class="hl-1">, (</span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">count</span><span class="hl-1">) </span><span class="hl-3">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-3">const</span><span class="hl-1"> </span><span class="hl-8">players</span><span class="hl-1"> = [...</span><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-2">shoukaku</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">values</span><span class="hl-1">()].</span><span class="hl-4">filter</span><span class="hl-1">(</span><span class="hl-2">p</span><span class="hl-1"> </span><span class="hl-3">=></span><span class="hl-1"> </span><span class="hl-2">p</span><span class="hl-1">.</span><span class="hl-2">node</span><span class="hl-1">.</span><span class="hl-2">name</span><span class="hl-1"> === </span><span class="hl-2">name</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">map</span><span class="hl-1">(</span><span class="hl-2">player</span><span class="hl-1"> </span><span class="hl-3">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-4">destroyPlayer</span><span class="hl-1">(</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">guildId</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-4">destroy</span><span class="hl-1">();</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> </span><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-4">warn</span><span class="hl-1">(</span><span class="hl-5">`Lavalink </span><span class="hl-3">${</span><span class="hl-2">name</span><span class="hl-3">}</span><span class="hl-5">: Disconnected`</span><span class="hl-1">);</span><br/><span class="hl-1">});</span><br/><br/><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-4">on</span><span class="hl-1">(</span><span class="hl-5">"playerStart"</span><span class="hl-1">, (</span><span class="hl-2">player</span><span class="hl-1">, </span><span class="hl-2">track</span><span class="hl-1">) </span><span class="hl-3">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-2">client</span><span class="hl-1">.</span><span class="hl-2">channels</span><span class="hl-1">.</span><span class="hl-2">cache</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">textId</span><span class="hl-1">)?.</span><span class="hl-4">send</span><span class="hl-1">({</span><span class="hl-2">content:</span><span class="hl-1"> </span><span class="hl-5">`Now playing **</span><span class="hl-3">${</span><span class="hl-2">track</span><span class="hl-9">.</span><span class="hl-2">title</span><span class="hl-3">}</span><span class="hl-5">** by **</span><span class="hl-3">${</span><span class="hl-2">track</span><span class="hl-9">.</span><span class="hl-2">author</span><span class="hl-3">}</span><span class="hl-5">**`</span><span class="hl-1">})</span><br/><span class="hl-1"> .</span><span class="hl-4">then</span><span class="hl-1">(</span><span class="hl-2">x</span><span class="hl-1"> </span><span class="hl-3">=></span><span class="hl-1"> </span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">data</span><span class="hl-1">.</span><span class="hl-4">set</span><span class="hl-1">(</span><span class="hl-5">"message"</span><span class="hl-1">, </span><span class="hl-2">x</span><span class="hl-1">));</span><br/><span class="hl-1">});</span><br/><br/><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-4">on</span><span class="hl-1">(</span><span class="hl-5">"playerEnd"</span><span class="hl-1">, (</span><span class="hl-2">player</span><span class="hl-1">) </span><span class="hl-3">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">data</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-5">"message"</span><span class="hl-1">)?.</span><span class="hl-4">edit</span><span class="hl-1">({</span><span class="hl-2">content:</span><span class="hl-1"> </span><span class="hl-5">`Finished playing`</span><span class="hl-1">});</span><br/><span class="hl-1">});</span><br/><br/><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-4">on</span><span class="hl-1">(</span><span class="hl-5">"playerEmpty"</span><span class="hl-1">, </span><span class="hl-2">player</span><span class="hl-1"> </span><span class="hl-3">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-2">client</span><span class="hl-1">.</span><span class="hl-2">channels</span><span class="hl-1">.</span><span class="hl-2">cache</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">textId</span><span class="hl-1">)?.</span><span class="hl-4">send</span><span class="hl-1">({</span><span class="hl-2">content:</span><span class="hl-1"> </span><span class="hl-5">`Destroyed player due to inactivity.`</span><span class="hl-1">})</span><br/><span class="hl-1"> .</span><span class="hl-4">then</span><span class="hl-1">(</span><span class="hl-2">x</span><span class="hl-1"> </span><span class="hl-3">=></span><span class="hl-1"> </span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">data</span><span class="hl-1">.</span><span class="hl-4">set</span><span class="hl-1">(</span><span class="hl-5">"message"</span><span class="hl-1">, </span><span class="hl-2">x</span><span class="hl-1">));</span><br/><span class="hl-1"> </span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-4">destroy</span><span class="hl-1">();</span><br/><span class="hl-1">});</span><br/><br/><span class="hl-2">client</span><span class="hl-1">.</span><span class="hl-4">on</span><span class="hl-1">(</span><span class="hl-5">"messageCreate"</span><span class="hl-1">, </span><span class="hl-3">async</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1"> </span><span class="hl-3">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">author</span><span class="hl-1">.</span><span class="hl-2">bot</span><span class="hl-1">) </span><span class="hl-7">return</span><span class="hl-1">;</span><br/><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">content</span><span class="hl-1">.</span><span class="hl-4">startsWith</span><span class="hl-1">(</span><span class="hl-5">"!play"</span><span class="hl-1">)) {</span><br/><span class="hl-1"> </span><span class="hl-3">const</span><span class="hl-1"> </span><span class="hl-8">args</span><span class="hl-1"> = </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">content</span><span class="hl-1">.</span><span class="hl-4">split</span><span class="hl-1">(</span><span class="hl-5">" "</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-3">const</span><span class="hl-1"> </span><span class="hl-8">query</span><span class="hl-1"> = </span><span class="hl-2">args</span><span class="hl-1">.</span><span class="hl-4">slice</span><span class="hl-1">(</span><span class="hl-6">1</span><span class="hl-1">).</span><span class="hl-4">join</span><span class="hl-1">(</span><span class="hl-5">" "</span><span class="hl-1">);</span><br/><br/><span class="hl-1"> </span><span class="hl-3">const</span><span class="hl-1"> {</span><span class="hl-8">channel</span><span class="hl-1">} = </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">member</span><span class="hl-1">.</span><span class="hl-2">voice</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (!</span><span class="hl-2">channel</span><span class="hl-1">) </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-4">reply</span><span class="hl-1">(</span><span class="hl-5">"You need to be in a voice channel to use this command!"</span><span class="hl-1">);</span><br/><br/><span class="hl-1"> </span><span class="hl-3">let</span><span class="hl-1"> </span><span class="hl-2">player</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-4">createPlayer</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-2">guildId:</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">guild</span><span class="hl-1">.</span><span class="hl-2">id</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">textId:</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">channel</span><span class="hl-1">.</span><span class="hl-2">id</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">voiceId:</span><span class="hl-1"> </span><span class="hl-2">channel</span><span class="hl-1">.</span><span class="hl-2">id</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">volume:</span><span class="hl-1"> </span><span class="hl-6">40</span><br/><span class="hl-1"> })</span><br/><br/><span class="hl-1"> </span><span class="hl-3">let</span><span class="hl-1"> </span><span class="hl-2">result</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-4">search</span><span class="hl-1">(</span><span class="hl-2">query</span><span class="hl-1">, {</span><span class="hl-2">requester:</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">author</span><span class="hl-1">});</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (!</span><span class="hl-2">result</span><span class="hl-1">.</span><span class="hl-2">tracks</span><span class="hl-1">.</span><span class="hl-2">length</span><span class="hl-1">) </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-4">reply</span><span class="hl-1">(</span><span class="hl-5">"No results found!"</span><span class="hl-1">);</span><br/><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-2">result</span><span class="hl-1">.</span><span class="hl-2">type</span><span class="hl-1"> === </span><span class="hl-5">"PLAYLIST"</span><span class="hl-1">) </span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">queue</span><span class="hl-1">.</span><span class="hl-4">add</span><span class="hl-1">(</span><span class="hl-2">result</span><span class="hl-1">.</span><span class="hl-2">tracks</span><span class="hl-1">); </span><span class="hl-0">// do this instead of using for loop if you want queueUpdate not spammy</span><br/><span class="hl-1"> </span><span class="hl-7">else</span><span class="hl-1"> </span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">queue</span><span class="hl-1">.</span><span class="hl-4">add</span><span class="hl-1">(</span><span class="hl-2">result</span><span class="hl-1">.</span><span class="hl-2">tracks</span><span class="hl-1">[</span><span class="hl-6">0</span><span class="hl-1">]);</span><br/><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (!</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">playing</span><span class="hl-1"> && !</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-2">paused</span><span class="hl-1">) </span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-4">play</span><span class="hl-1">();</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-4">reply</span><span class="hl-1">({</span><span class="hl-2">content:</span><span class="hl-1"> </span><span class="hl-2">result</span><span class="hl-1">.</span><span class="hl-2">type</span><span class="hl-1"> === </span><span class="hl-5">"PLAYLIST"</span><span class="hl-1"> ? </span><span class="hl-5">`Queued </span><span class="hl-3">${</span><span class="hl-2">result</span><span class="hl-9">.</span><span class="hl-2">tracks</span><span class="hl-9">.</span><span class="hl-2">length</span><span class="hl-3">}</span><span class="hl-5"> from </span><span class="hl-3">${</span><span class="hl-2">result</span><span class="hl-9">.</span><span class="hl-2">playlistName</span><span class="hl-3">}</span><span class="hl-5">`</span><span class="hl-1"> : </span><span class="hl-5">`Queued </span><span class="hl-3">${</span><span class="hl-2">result</span><span class="hl-9">.</span><span class="hl-2">tracks</span><span class="hl-9">[</span><span class="hl-6">0</span><span class="hl-9">].</span><span class="hl-2">title</span><span class="hl-3">}</span><span class="hl-5">`</span><span class="hl-1">});</span><br/><span class="hl-1"> }</span><br/><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">content</span><span class="hl-1">.</span><span class="hl-4">startsWith</span><span class="hl-1">(</span><span class="hl-5">"!skip"</span><span class="hl-1">)) {</span><br/><span class="hl-1"> </span><span class="hl-3">let</span><span class="hl-1"> </span><span class="hl-2">player</span><span class="hl-1"> = </span><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">guild</span><span class="hl-1">.</span><span class="hl-2">id</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (!</span><span class="hl-2">player</span><span class="hl-1">) </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-4">reply</span><span class="hl-1">(</span><span class="hl-5">"No player found!"</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-4">skip</span><span class="hl-1">();</span><br/><span class="hl-1"> </span><span class="hl-4">log</span><span class="hl-1">(</span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">guild</span><span class="hl-1">.</span><span class="hl-2">id</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-4">reply</span><span class="hl-1">({</span><span class="hl-2">content:</span><span class="hl-1"> </span><span class="hl-5">`Skipped to **</span><span class="hl-3">${</span><span class="hl-2">player</span><span class="hl-9">.</span><span class="hl-2">queue</span><span class="hl-9">[</span><span class="hl-6">0</span><span class="hl-9">]?.</span><span class="hl-2">title</span><span class="hl-3">}</span><span class="hl-5">** by **</span><span class="hl-3">${</span><span class="hl-2">player</span><span class="hl-9">.</span><span class="hl-2">queue</span><span class="hl-9">[</span><span class="hl-6">0</span><span class="hl-9">]?.</span><span class="hl-2">author</span><span class="hl-3">}</span><span class="hl-5">**`</span><span class="hl-1">});</span><br/><span class="hl-1"> }</span><br/><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">content</span><span class="hl-1">.</span><span class="hl-4">startsWith</span><span class="hl-1">(</span><span class="hl-5">"!forceplay"</span><span class="hl-1">)) {</span><br/><span class="hl-1"> </span><span class="hl-3">let</span><span class="hl-1"> </span><span class="hl-2">player</span><span class="hl-1"> = </span><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">guild</span><span class="hl-1">.</span><span class="hl-2">id</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (!</span><span class="hl-2">player</span><span class="hl-1">) </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-4">reply</span><span class="hl-1">(</span><span class="hl-5">"No player found!"</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-3">const</span><span class="hl-1"> </span><span class="hl-8">args</span><span class="hl-1"> = </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">content</span><span class="hl-1">.</span><span class="hl-4">split</span><span class="hl-1">(</span><span class="hl-5">" "</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-3">const</span><span class="hl-1"> </span><span class="hl-8">query</span><span class="hl-1"> = </span><span class="hl-2">args</span><span class="hl-1">.</span><span class="hl-4">slice</span><span class="hl-1">(</span><span class="hl-6">1</span><span class="hl-1">).</span><span class="hl-4">join</span><span class="hl-1">(</span><span class="hl-5">" "</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-3">let</span><span class="hl-1"> </span><span class="hl-2">result</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-4">search</span><span class="hl-1">(</span><span class="hl-2">query</span><span class="hl-1">, {</span><span class="hl-2">requester:</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">author</span><span class="hl-1">});</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (!</span><span class="hl-2">result</span><span class="hl-1">.</span><span class="hl-2">tracks</span><span class="hl-1">.</span><span class="hl-2">length</span><span class="hl-1">) </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-4">reply</span><span class="hl-1">(</span><span class="hl-5">"No results found!"</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-4">play</span><span class="hl-1">(</span><span class="hl-3">new</span><span class="hl-1"> </span><span class="hl-4">KazagumoTrack</span><span class="hl-1">(</span><span class="hl-2">result</span><span class="hl-1">.</span><span class="hl-2">tracks</span><span class="hl-1">[</span><span class="hl-6">0</span><span class="hl-1">].</span><span class="hl-4">getRaw</span><span class="hl-1">(), </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">author</span><span class="hl-1">));</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-4">reply</span><span class="hl-1">({</span><span class="hl-2">content:</span><span class="hl-1"> </span><span class="hl-5">`Forced playing **</span><span class="hl-3">${</span><span class="hl-2">result</span><span class="hl-9">.</span><span class="hl-2">tracks</span><span class="hl-9">[</span><span class="hl-6">0</span><span class="hl-9">].</span><span class="hl-2">title</span><span class="hl-3">}</span><span class="hl-5">** by **</span><span class="hl-3">${</span><span class="hl-2">result</span><span class="hl-9">.</span><span class="hl-2">tracks</span><span class="hl-9">[</span><span class="hl-6">0</span><span class="hl-9">].</span><span class="hl-2">author</span><span class="hl-3">}</span><span class="hl-5">**`</span><span class="hl-1">});</span><br/><span class="hl-1"> }</span><br/><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">content</span><span class="hl-1">.</span><span class="hl-4">startsWith</span><span class="hl-1">(</span><span class="hl-5">"!previous"</span><span class="hl-1">)) {</span><br/><span class="hl-1"> </span><span class="hl-3">let</span><span class="hl-1"> </span><span class="hl-2">player</span><span class="hl-1"> = </span><span class="hl-2">kazagumo</span><span class="hl-1">.</span><span class="hl-2">players</span><span class="hl-1">.</span><span class="hl-4">get</span><span class="hl-1">(</span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-2">guild</span><span class="hl-1">.</span><span class="hl-2">id</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (!</span><span class="hl-2">player</span><span class="hl-1">) </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-4">reply</span><span class="hl-1">(</span><span class="hl-5">"No player found!"</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-3">const</span><span class="hl-1"> </span><span class="hl-8">previous</span><span class="hl-1"> = </span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-4">getPrevious</span><span class="hl-1">(); </span><span class="hl-0">// we get the previous track without removing it first</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (!</span><span class="hl-2">previous</span><span class="hl-1">) </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-4">reply</span><span class="hl-1">(</span><span class="hl-5">"No previous track found!"</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-4">play</span><span class="hl-1">(</span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-4">getPrevious</span><span class="hl-1">(</span><span class="hl-3">true</span><span class="hl-1">)); </span><span class="hl-0">// now we remove the previous track and play it</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-2">msg</span><span class="hl-1">.</span><span class="hl-4">reply</span><span class="hl-1">(</span><span class="hl-5">"Previous!"</span><span class="hl-1">);</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">})</span><br/><br/><br/><span class="hl-2">client</span><span class="hl-1">.</span><span class="hl-4">login</span><span class="hl-1">(</span><span class="hl-5">''</span><span class="hl-1">);</span>
|
|
191
|
-
</code><button type="button">Copy</button></pre>
|
|
192
|
-
|
|
193
|
-
<h2 id="known-issue" class="tsd-anchor-link">Known issue<a href="#known-issue" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><h6 id="this-part-should-be-in-kazagumo-spotify-but-whatever" class="tsd-anchor-link">This part should be in kazagumo-spotify but whatever<a href="#this-part-should-be-in-kazagumo-spotify-but-whatever" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h6><ul>
|
|
194
|
-
<li>Force playing song from spotify module (player.play(result.tracks[0]); <code>result.tracks[0]</code> is from spotify) is currently not working. <strong>ONLY WHEN YOU DO player.play(thing), NOT player.play() OR player.queue.add(new KazagumoTrack(...))</strong> Please use this workaround</li>
|
|
195
|
-
</ul>
|
|
196
|
-
<pre><code class="js"><span class="hl-1"> </span><span class="hl-3">const</span><span class="hl-1"> { </span><span class="hl-8">KazagumoTrack</span><span class="hl-1"> } = </span><span class="hl-4">require</span><span class="hl-1">(</span><span class="hl-5">"kazagumo"</span><span class="hl-1">); </span><span class="hl-0">// CommonJS</span><br/><span class="hl-1"> </span><span class="hl-7">import</span><span class="hl-1"> { </span><span class="hl-2">KazagumoTrack</span><span class="hl-1"> } </span><span class="hl-7">from</span><span class="hl-1"> </span><span class="hl-5">"kazagumo"</span><span class="hl-1">; </span><span class="hl-0">// ES6; don't laugh if it's wrong</span><br/><br/><span class="hl-1"> </span><span class="hl-3">let</span><span class="hl-1"> </span><span class="hl-2">track</span><span class="hl-1"> = </span><span class="hl-2">result</span><span class="hl-1">.</span><span class="hl-2">tracks</span><span class="hl-1">[</span><span class="hl-6">0</span><span class="hl-1">] </span><span class="hl-0">// the spotify track</span><br/><span class="hl-1"> </span><span class="hl-3">let</span><span class="hl-1"> </span><span class="hl-2">convertedTrack</span><span class="hl-1"> = </span><span class="hl-3">new</span><span class="hl-1"> </span><span class="hl-4">KazagumoTrack</span><span class="hl-1">(</span><span class="hl-2">track</span><span class="hl-1">.</span><span class="hl-4">getRaw</span><span class="hl-1">().</span><span class="hl-2">_raw</span><span class="hl-1">, </span><span class="hl-2">track</span><span class="hl-1">.</span><span class="hl-2">author</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-2">player</span><span class="hl-1">.</span><span class="hl-4">play</span><span class="hl-1">(</span><span class="hl-2">convertedTrack</span><span class="hl-1">);</span>
|
|
197
|
-
</code><button type="button">Copy</button></pre>
|
|
198
|
-
|
|
199
|
-
<h2 id="contributors" class="tsd-anchor-link">Contributors<a href="#contributors" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><blockquote>
|
|
200
|
-
<ul>
|
|
201
|
-
<li>Deivu as the owner of Shoukaku<br>
|
|
202
|
-
Github: <a href="https://github.com/Deivu">https://github.com/Deivu</a><br>
|
|
203
|
-
</li>
|
|
204
|
-
<li>Takiyo as the owner of this project<br>
|
|
205
|
-
Github: <a href="https://github.com/Takiyo0">https://github.com/Takiyo0</a></li>
|
|
206
|
-
</ul>
|
|
207
|
-
</blockquote>
|
|
208
|
-
</div></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><a href="#kazagumo"><span>Kazagumo</span></a><ul><li><ul><li><ul><li><a href="#a-shoukaku-wrapper-with-built-in-queue-system"><span>A <wbr/>Shoukaku wrapper with built in queue system</span></a></li></ul></li></ul></li><li><a href="#features"><span>Features:</span></a></li><li><a href="#note"><span>Note</span></a></li><li><a href="#documentation"><span>Documentation</span></a></li><li><a href="#installation"><span>Installation</span></a></li><li><a href="#metadata"><span>Metadata</span></a></li><li><a href="#environment"><span>Environment</span></a></li><li><a href="#plugins"><span>Plugins</span></a></li><li><a href="#lavalink-installation"><span>Lavalink installation</span></a></li><li><a href="#changes-v2-v3"><span>Changes v2 -<wbr/>> v3</span></a></li><li><a href="#support"><span>Support</span></a></li><li><a href="#enable-playermoved-event"><span>Enable player<wbr/>Moved event</span></a></li><li><a href="#example-bot"><span>Example bot</span></a></li><li><a href="#known-issue"><span>Known issue</span></a></li><li><ul><li><ul><li><ul><li><ul><li><a href="#this-part-should-be-in-kazagumo-spotify-but-whatever"><span>This part should be in kazagumo-<wbr/>spotify but whatever</span></a></li></ul></li></ul></li></ul></li></ul></li><li><a href="#contributors"><span>Contributors</span></a></li></ul></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="modules.html">kazagumo</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>KazagumoEvents | kazagumo</title><meta name="description" content="Documentation for kazagumo"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">kazagumo</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="../modules/Kazagumo.html">Kazagumo</a></li><li><a href="" aria-current="page">KazagumoEvents</a></li></ul><h1>Interface KazagumoEvents</h1></div><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">KazagumoEvents</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#playerclosed">playerClosed</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span> data<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">WebSocketClosedEvent</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#playercreate">playerCreate</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#playerdestroy">playerDestroy</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#playerempty">playerEmpty</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#playerend">playerEnd</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#playerexception">playerException</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span> data<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">TrackExceptionEvent</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#playermoved">playerMoved</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><br/> player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span><br/> state<span class="tsd-signature-symbol">:</span> <a href="../types/Modules_Interfaces.PlayerMovedState.html" class="tsd-signature-type tsd-kind-type-alias">PlayerMovedState</a><span class="tsd-signature-symbol">,</span><br/> channels<span class="tsd-signature-symbol">:</span> <a href="Modules_Interfaces.PlayerMovedChannels.html" class="tsd-signature-type tsd-kind-interface">PlayerMovedChannels</a><span class="tsd-signature-symbol">,</span><br/> <span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#playerresolveerror">playerResolveError</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><br/> player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span><br/> track<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_Supports_KazagumoTrack.KazagumoTrack.html" class="tsd-signature-type tsd-kind-class">KazagumoTrack</a><span class="tsd-signature-symbol">,</span><br/> message<span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">,</span><br/> <span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#playerresumed">playerResumed</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#playerstart">playerStart</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span> track<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_Supports_KazagumoTrack.KazagumoTrack.html" class="tsd-signature-type tsd-kind-class">KazagumoTrack</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#playerstuck">playerStuck</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span> data<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">TrackStuckEvent</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#playerupdate">playerUpdate</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span> data<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">PlayerUpdate</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#queueupdate">queueUpdate</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span> queue<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_Supports_KazagumoQueue.KazagumoQueue.html" class="tsd-signature-type tsd-kind-class">KazagumoQueue</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/Takiyo0/Kazagumo/blob/8b14039ef9786f37e611cfc93ae7b44c7352a31a/src/Kazagumo.ts#L38">src/Kazagumo.ts:38</a></li></ul></aside><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h5 class="tsd-index-heading uppercase">Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Events</h3><div class="tsd-index-list"><a href="#playerclosed" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Closed</span></a>
|
|
2
|
-
<a href="#playercreate" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Create</span></a>
|
|
3
|
-
<a href="#playerdestroy" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Destroy</span></a>
|
|
4
|
-
<a href="#playerempty" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Empty</span></a>
|
|
5
|
-
<a href="#playerend" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>End</span></a>
|
|
6
|
-
<a href="#playerexception" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Exception</span></a>
|
|
7
|
-
<a href="#playermoved" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Moved</span></a>
|
|
8
|
-
<a href="#playerresolveerror" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Resolve<wbr/>Error</span></a>
|
|
9
|
-
<a href="#playerresumed" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Resumed</span></a>
|
|
10
|
-
<a href="#playerstart" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Start</span></a>
|
|
11
|
-
<a href="#playerstuck" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Stuck</span></a>
|
|
12
|
-
<a href="#playerupdate" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Update</span></a>
|
|
13
|
-
<a href="#queueupdate" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>queue<wbr/>Update</span></a>
|
|
14
|
-
</div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Events"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Events</h2></summary><section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="playerclosed"><span>player<wbr/>Closed</span><a href="#playerclosed" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">playerClosed</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span> data<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">WebSocketClosedEvent</span><span class="tsd-signature-symbol">]</span></div><div class="tsd-comment tsd-typography"><p>Emitted when a player got closed.
|
|
15
|
-
Kazagumo#playerClosed</p>
|
|
16
|
-
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/Takiyo0/Kazagumo/blob/8b14039ef9786f37e611cfc93ae7b44c7352a31a/src/Kazagumo.ts#L79">src/Kazagumo.ts:79</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="playercreate"><span>player<wbr/>Create</span><a href="#playercreate" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">playerCreate</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">]</span></div><div class="tsd-comment tsd-typography"><p>Emitted when a player created.
|
|
17
|
-
Kazagumo#playerCreate</p>
|
|
18
|
-
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/Takiyo0/Kazagumo/blob/8b14039ef9786f37e611cfc93ae7b44c7352a31a/src/Kazagumo.ts#L61">src/Kazagumo.ts:61</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="playerdestroy"><span>player<wbr/>Destroy</span><a href="#playerdestroy" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">playerDestroy</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">]</span></div><div class="tsd-comment tsd-typography"><p>Emitted when a player got destroyed.
|
|
19
|
-
Kazagumo#playerDestroy</p>
|
|
20
|
-
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/Takiyo0/Kazagumo/blob/8b14039ef9786f37e611cfc93ae7b44c7352a31a/src/Kazagumo.ts#L55">src/Kazagumo.ts:55</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="playerempty"><span>player<wbr/>Empty</span><a href="#playerempty" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">playerEmpty</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">]</span></div><div class="tsd-comment tsd-typography"><p>Emitted when a player got empty.
|
|
21
|
-
Kazagumo#playerEmpty</p>
|
|
22
|
-
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/Takiyo0/Kazagumo/blob/8b14039ef9786f37e611cfc93ae7b44c7352a31a/src/Kazagumo.ts#L73">src/Kazagumo.ts:73</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="playerend"><span>player<wbr/>End</span><a href="#playerend" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">playerEnd</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">]</span></div><div class="tsd-comment tsd-typography"><p>Emitted when a track ended.
|
|
23
|
-
Kazagumo#playerEnd</p>
|
|
24
|
-
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/Takiyo0/Kazagumo/blob/8b14039ef9786f37e611cfc93ae7b44c7352a31a/src/Kazagumo.ts#L67">src/Kazagumo.ts:67</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="playerexception"><span>player<wbr/>Exception</span><a href="#playerexception" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">playerException</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span> data<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">TrackExceptionEvent</span><span class="tsd-signature-symbol">]</span></div><div class="tsd-comment tsd-typography"><p>Emitted when an exception occured.
|
|
25
|
-
Kazagumo#playerException</p>
|
|
26
|
-
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/Takiyo0/Kazagumo/blob/8b14039ef9786f37e611cfc93ae7b44c7352a31a/src/Kazagumo.ts#L103">src/Kazagumo.ts:103</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="playermoved"><span>player<wbr/>Moved</span><a href="#playermoved" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">playerMoved</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><br/> player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span><br/> state<span class="tsd-signature-symbol">:</span> <a href="../types/Modules_Interfaces.PlayerMovedState.html" class="tsd-signature-type tsd-kind-type-alias">PlayerMovedState</a><span class="tsd-signature-symbol">,</span><br/> channels<span class="tsd-signature-symbol">:</span> <a href="Modules_Interfaces.PlayerMovedChannels.html" class="tsd-signature-type tsd-kind-interface">PlayerMovedChannels</a><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">]</span></div><div class="tsd-comment tsd-typography"><p>Emitted only when you use playerMoved plugin and when the bot moved, joined, or left voice channel.
|
|
27
|
-
Kazagumo#playerMoved</p>
|
|
28
|
-
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/Takiyo0/Kazagumo/blob/8b14039ef9786f37e611cfc93ae7b44c7352a31a/src/Kazagumo.ts#L97">src/Kazagumo.ts:97</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="playerresolveerror"><span>player<wbr/>Resolve<wbr/>Error</span><a href="#playerresolveerror" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">playerResolveError</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><br/> player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span><br/> track<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_Supports_KazagumoTrack.KazagumoTrack.html" class="tsd-signature-type tsd-kind-class">KazagumoTrack</a><span class="tsd-signature-symbol">,</span><br/> message<span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">]</span></div><div class="tsd-comment tsd-typography"><p>Emitted when an error occured while resolving track.
|
|
29
|
-
Kazagumo#playerResolveError</p>
|
|
30
|
-
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/Takiyo0/Kazagumo/blob/8b14039ef9786f37e611cfc93ae7b44c7352a31a/src/Kazagumo.ts#L49">src/Kazagumo.ts:49</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="playerresumed"><span>player<wbr/>Resumed</span><a href="#playerresumed" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">playerResumed</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">]</span></div><div class="tsd-comment tsd-typography"><p>Emitted when a player got resumed.
|
|
31
|
-
Kazagumo#playerResumed</p>
|
|
32
|
-
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/Takiyo0/Kazagumo/blob/8b14039ef9786f37e611cfc93ae7b44c7352a31a/src/Kazagumo.ts#L91">src/Kazagumo.ts:91</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="playerstart"><span>player<wbr/>Start</span><a href="#playerstart" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">playerStart</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span> track<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_Supports_KazagumoTrack.KazagumoTrack.html" class="tsd-signature-type tsd-kind-class">KazagumoTrack</a><span class="tsd-signature-symbol">]</span></div><div class="tsd-comment tsd-typography"><p>Emitted when a track is going to play.
|
|
33
|
-
Kazagumo#playerStart</p>
|
|
34
|
-
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/Takiyo0/Kazagumo/blob/8b14039ef9786f37e611cfc93ae7b44c7352a31a/src/Kazagumo.ts#L43">src/Kazagumo.ts:43</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="playerstuck"><span>player<wbr/>Stuck</span><a href="#playerstuck" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">playerStuck</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span> data<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">TrackStuckEvent</span><span class="tsd-signature-symbol">]</span></div><div class="tsd-comment tsd-typography"><p>Emitted when a player got stuck.
|
|
35
|
-
Kazagumo#playerStuck</p>
|
|
36
|
-
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/Takiyo0/Kazagumo/blob/8b14039ef9786f37e611cfc93ae7b44c7352a31a/src/Kazagumo.ts#L85">src/Kazagumo.ts:85</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="playerupdate"><span>player<wbr/>Update</span><a href="#playerupdate" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">playerUpdate</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span> data<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">PlayerUpdate</span><span class="tsd-signature-symbol">]</span></div><div class="tsd-comment tsd-typography"><p>Emitted when a player updated.
|
|
37
|
-
Kazagumo#playerUpdate</p>
|
|
38
|
-
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/Takiyo0/Kazagumo/blob/8b14039ef9786f37e611cfc93ae7b44c7352a31a/src/Kazagumo.ts#L109">src/Kazagumo.ts:109</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="queueupdate"><span>queue<wbr/>Update</span><a href="#queueupdate" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">queueUpdate</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>player<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_KazagumoPlayer.KazagumoPlayer.html" class="tsd-signature-type tsd-kind-class">KazagumoPlayer</a><span class="tsd-signature-symbol">,</span> queue<span class="tsd-signature-symbol">:</span> <a href="../classes/Managers_Supports_KazagumoQueue.KazagumoQueue.html" class="tsd-signature-type tsd-kind-class">KazagumoQueue</a><span class="tsd-signature-symbol">]</span></div><div class="tsd-comment tsd-typography"><p>Emitted when a queue updated (track added, changed, etc).
|
|
39
|
-
Kazagumo#queueUpdate</p>
|
|
40
|
-
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/Takiyo0/Kazagumo/blob/8b14039ef9786f37e611cfc93ae7b44c7352a31a/src/Kazagumo.ts#L122">src/Kazagumo.ts:122</a></li></ul></aside></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Events"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Events</summary><div><a href="#playerclosed"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Closed</span></a><a href="#playercreate"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Create</span></a><a href="#playerdestroy"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Destroy</span></a><a href="#playerempty"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Empty</span></a><a href="#playerend"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>End</span></a><a href="#playerexception"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Exception</span></a><a href="#playermoved"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Moved</span></a><a href="#playerresolveerror"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Resolve<wbr/>Error</span></a><a href="#playerresumed"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Resumed</span></a><a href="#playerstart"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Start</span></a><a href="#playerstuck"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Stuck</span></a><a href="#playerupdate"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>player<wbr/>Update</span></a><a href="#queueupdate"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>queue<wbr/>Update</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">kazagumo</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|