magmastream 2.9.2-dev.1 → 2.9.2-dev.2
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/dist/index.d.ts +63 -4
- package/dist/index.js +1 -0
- package/dist/statestorage/JsonQueue.js +273 -171
- package/dist/statestorage/MemoryQueue.js +260 -203
- package/dist/statestorage/RedisQueue.js +396 -203
- package/dist/structures/Enums.js +110 -1
- package/dist/structures/Filters.js +27 -13
- package/dist/structures/MagmastreamError.js +19 -0
- package/dist/structures/Manager.js +345 -219
- package/dist/structures/Node.js +222 -64
- package/dist/structures/Player.js +169 -56
- package/dist/structures/Rest.js +23 -12
- package/dist/structures/Utils.js +66 -65
- package/dist/utils/managerCheck.js +99 -21
- package/dist/utils/nodeCheck.js +59 -34
- package/dist/utils/playerCheck.js +47 -28
- package/package.json +1 -1
package/dist/structures/Enums.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AvailableFilters = exports.SponsorBlockSegment = exports.SeverityTypes = exports.TrackEndReasonTypes = exports.ManagerEventTypes = exports.TrackPartial = exports.UseNodeOptions = exports.TrackSourceTypes = exports.PlayerStateEventTypes = exports.SearchPlatform = exports.LoadTypes = exports.StateTypes = exports.AutoPlayPlatform = exports.StateStorageType = void 0;
|
|
3
|
+
exports.MagmaStreamErrorNumbers = exports.MagmaStreamErrorCode = exports.AvailableFilters = exports.SponsorBlockSegment = exports.SeverityTypes = exports.TrackEndReasonTypes = exports.ManagerEventTypes = exports.TrackPartial = exports.UseNodeOptions = exports.TrackSourceTypes = exports.PlayerStateEventTypes = exports.SearchPlatform = exports.LoadTypes = exports.StateTypes = exports.AutoPlayPlatform = exports.StateStorageType = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* State Storage Enum
|
|
6
6
|
*/
|
|
@@ -273,3 +273,112 @@ var AvailableFilters;
|
|
|
273
273
|
AvailableFilters["Vaporwave"] = "vaporwave";
|
|
274
274
|
AvailableFilters["Vibrato"] = "vibrato";
|
|
275
275
|
})(AvailableFilters || (exports.AvailableFilters = AvailableFilters = {}));
|
|
276
|
+
/**
|
|
277
|
+
* MagmaStream Error Codes Enum
|
|
278
|
+
*/
|
|
279
|
+
var MagmaStreamErrorCode;
|
|
280
|
+
(function (MagmaStreamErrorCode) {
|
|
281
|
+
// GENERAL (1000)
|
|
282
|
+
MagmaStreamErrorCode["GENERAL_UNKNOWN"] = "MS_GENERAL_UNKNOWN";
|
|
283
|
+
MagmaStreamErrorCode["GENERAL_TIMEOUT"] = "MS_GENERAL_TIMEOUT";
|
|
284
|
+
MagmaStreamErrorCode["GENERAL_INVALID_MANAGER"] = "MS_GENERAL_INVALID_MANAGER";
|
|
285
|
+
// MANAGER (1100)
|
|
286
|
+
MagmaStreamErrorCode["MANAGER_INIT_FAILED"] = "MS_MANAGER_INIT_FAILED";
|
|
287
|
+
MagmaStreamErrorCode["MANAGER_INVALID_CONFIG"] = "MS_MANAGER_INVALID_CONFIG";
|
|
288
|
+
MagmaStreamErrorCode["MANAGER_SHUTDOWN_FAILED"] = "MS_MANAGER_SHUTDOWN_FAILED";
|
|
289
|
+
MagmaStreamErrorCode["MANAGER_NO_NODES"] = "MS_MANAGER_NO_NODES";
|
|
290
|
+
MagmaStreamErrorCode["MANAGER_NODE_NOT_FOUND"] = "MS_MANAGER_NODE_NOT_FOUND";
|
|
291
|
+
MagmaStreamErrorCode["MANAGER_SEARCH_FAILED"] = "MS_MANAGER_SEARCH_FAILED";
|
|
292
|
+
MagmaStreamErrorCode["MANAGER_CLEANUP_INACTIVE_PLAYERS_FAILED"] = "MS_MANAGER_CLEANUP_INACTIVE_PLAYERS_FAILED";
|
|
293
|
+
// NODE (1200)
|
|
294
|
+
MagmaStreamErrorCode["NODE_INVALID_CONFIG"] = "MS_NODE_INVALID_CONFIG";
|
|
295
|
+
MagmaStreamErrorCode["NODE_CONNECT_FAILED"] = "MS_NODE_CONNECT_FAILED";
|
|
296
|
+
MagmaStreamErrorCode["NODE_RECONNECT_FAILED"] = "MS_NODE_RECONNECT_FAILED";
|
|
297
|
+
MagmaStreamErrorCode["NODE_DISCONNECTED"] = "MS_NODE_DISCONNECTED";
|
|
298
|
+
MagmaStreamErrorCode["NODE_PROTOCOL_ERROR"] = "MS_NODE_PROTOCOL_ERROR";
|
|
299
|
+
MagmaStreamErrorCode["NODE_SESSION_IDS_LOAD_FAILED"] = "MS_NODE_SESSION_IDS_LOAD_FAILED";
|
|
300
|
+
MagmaStreamErrorCode["NODE_SESSION_IDS_UPDATE_FAILED"] = "MS_NODE_SESSION_IDS_UPDATE_FAILED";
|
|
301
|
+
MagmaStreamErrorCode["NODE_PLUGIN_ERROR"] = "MS_NODE_PLUGIN_ERROR";
|
|
302
|
+
// PLAYER (1300)
|
|
303
|
+
MagmaStreamErrorCode["PLAYER_INVALID_CONFIG"] = "MS_PLAYER_INVALID_CONFIG";
|
|
304
|
+
MagmaStreamErrorCode["PLAYER_STATE_INVALID"] = "MS_PLAYER_STATE_INVALID";
|
|
305
|
+
MagmaStreamErrorCode["PLAYER_QUEUE_EMPTY"] = "MS_PLAYER_QUEUE_EMPTY";
|
|
306
|
+
MagmaStreamErrorCode["PLAYER_PREVIOUS_EMPTY"] = "MS_PLAYER_PREVIOUS_EMPTY";
|
|
307
|
+
MagmaStreamErrorCode["PLAYER_INVALID_NOW_PLAYING_MESSAGE"] = "MS_PLAYER_INVALID_NOW_PLAYING_MESSAGE";
|
|
308
|
+
MagmaStreamErrorCode["PLAYER_INVALID_AUTOPLAY"] = "MS_PLAYER_INVALID_AUTOPLAY";
|
|
309
|
+
MagmaStreamErrorCode["PLAYER_INVALID_VOLUME"] = "MS_PLAYER_INVALID_VOLUME";
|
|
310
|
+
MagmaStreamErrorCode["PLAYER_INVALID_REPEAT"] = "MS_PLAYER_INVALID_REPEAT";
|
|
311
|
+
MagmaStreamErrorCode["PLAYER_INVALID_PAUSE"] = "MS_PLAYER_INVALID_PAUSE";
|
|
312
|
+
MagmaStreamErrorCode["PLAYER_INVALID_SEEK"] = "MS_PLAYER_INVALID_SEEK";
|
|
313
|
+
MagmaStreamErrorCode["PLAYER_MOVE_FAILED"] = "MS_PLAYER_MOVE_FAILED";
|
|
314
|
+
MagmaStreamErrorCode["PLAYER_VOICE_RECEIVER_ERROR"] = "MS_PLAYER_VOICE_RECEIVER_ERROR";
|
|
315
|
+
// QUEUE (1400)
|
|
316
|
+
MagmaStreamErrorCode["QUEUE_REDIS_ERROR"] = "MS_QUEUE_REDIS_ERROR";
|
|
317
|
+
MagmaStreamErrorCode["QUEUE_JSON_ERROR"] = "MS_QUEUE_JSON_ERROR";
|
|
318
|
+
MagmaStreamErrorCode["QUEUE_MEMORY_ERROR"] = "MS_QUEUE_MEMORY_ERROR";
|
|
319
|
+
// FILTERS (1500)
|
|
320
|
+
MagmaStreamErrorCode["FILTER_APPLY_FAILED"] = "MS_FILTER_APPLY_FAILED";
|
|
321
|
+
// REST (1600)
|
|
322
|
+
MagmaStreamErrorCode["REST_REQUEST_FAILED"] = "MS_REST_REQUEST_FAILED";
|
|
323
|
+
MagmaStreamErrorCode["REST_UNAUTHORIZED"] = "MS_REST_UNAUTHORIZED";
|
|
324
|
+
// UTILS (1700)
|
|
325
|
+
MagmaStreamErrorCode["UTILS_TRACK_PARTIAL_INVALID"] = "MS_UTILS_TRACK_PARTIAL_INVALID";
|
|
326
|
+
MagmaStreamErrorCode["UTILS_TRACK_BUILD_FAILED"] = "MS_UTILS_TRACK_BUILD_FAILED";
|
|
327
|
+
MagmaStreamErrorCode["UTILS_AUTOPLAY_BUILD_FAILED"] = "MS_UTILS_AUTOPLAY_BUILD_FAILED";
|
|
328
|
+
// PLUGIN (1800)
|
|
329
|
+
MagmaStreamErrorCode["PLUGIN_LOAD_FAILED"] = "MS_PLUGIN_LOAD_FAILED";
|
|
330
|
+
MagmaStreamErrorCode["PLUGIN_RUNTIME_ERROR"] = "MS_PLUGIN_RUNTIME_ERROR";
|
|
331
|
+
})(MagmaStreamErrorCode || (exports.MagmaStreamErrorCode = MagmaStreamErrorCode = {}));
|
|
332
|
+
// Numeric mappings (secondary, machine-friendly)
|
|
333
|
+
exports.MagmaStreamErrorNumbers = {
|
|
334
|
+
// GENERAL
|
|
335
|
+
[MagmaStreamErrorCode.GENERAL_UNKNOWN]: 1000,
|
|
336
|
+
[MagmaStreamErrorCode.GENERAL_TIMEOUT]: 1001,
|
|
337
|
+
[MagmaStreamErrorCode.GENERAL_INVALID_MANAGER]: 1002,
|
|
338
|
+
// MANAGER
|
|
339
|
+
[MagmaStreamErrorCode.MANAGER_INIT_FAILED]: 1100,
|
|
340
|
+
[MagmaStreamErrorCode.MANAGER_INVALID_CONFIG]: 1101,
|
|
341
|
+
[MagmaStreamErrorCode.MANAGER_SHUTDOWN_FAILED]: 1102,
|
|
342
|
+
[MagmaStreamErrorCode.MANAGER_NO_NODES]: 1103,
|
|
343
|
+
[MagmaStreamErrorCode.MANAGER_NODE_NOT_FOUND]: 1104,
|
|
344
|
+
[MagmaStreamErrorCode.MANAGER_SEARCH_FAILED]: 1105,
|
|
345
|
+
[MagmaStreamErrorCode.MANAGER_CLEANUP_INACTIVE_PLAYERS_FAILED]: 1106,
|
|
346
|
+
// NODE
|
|
347
|
+
[MagmaStreamErrorCode.NODE_INVALID_CONFIG]: 1200,
|
|
348
|
+
[MagmaStreamErrorCode.NODE_CONNECT_FAILED]: 1201,
|
|
349
|
+
[MagmaStreamErrorCode.NODE_RECONNECT_FAILED]: 1202,
|
|
350
|
+
[MagmaStreamErrorCode.NODE_DISCONNECTED]: 1203,
|
|
351
|
+
[MagmaStreamErrorCode.NODE_PROTOCOL_ERROR]: 1204,
|
|
352
|
+
[MagmaStreamErrorCode.NODE_SESSION_IDS_LOAD_FAILED]: 1205,
|
|
353
|
+
[MagmaStreamErrorCode.NODE_SESSION_IDS_UPDATE_FAILED]: 1206,
|
|
354
|
+
[MagmaStreamErrorCode.NODE_PLUGIN_ERROR]: 1207,
|
|
355
|
+
// PLAYER
|
|
356
|
+
[MagmaStreamErrorCode.PLAYER_INVALID_CONFIG]: 1300,
|
|
357
|
+
[MagmaStreamErrorCode.PLAYER_STATE_INVALID]: 1301,
|
|
358
|
+
[MagmaStreamErrorCode.PLAYER_QUEUE_EMPTY]: 1302,
|
|
359
|
+
[MagmaStreamErrorCode.PLAYER_PREVIOUS_EMPTY]: 1303,
|
|
360
|
+
[MagmaStreamErrorCode.PLAYER_INVALID_NOW_PLAYING_MESSAGE]: 1304,
|
|
361
|
+
[MagmaStreamErrorCode.PLAYER_INVALID_AUTOPLAY]: 1305,
|
|
362
|
+
[MagmaStreamErrorCode.PLAYER_INVALID_VOLUME]: 1306,
|
|
363
|
+
[MagmaStreamErrorCode.PLAYER_INVALID_REPEAT]: 1307,
|
|
364
|
+
[MagmaStreamErrorCode.PLAYER_INVALID_PAUSE]: 1308,
|
|
365
|
+
[MagmaStreamErrorCode.PLAYER_INVALID_SEEK]: 1309,
|
|
366
|
+
[MagmaStreamErrorCode.PLAYER_MOVE_FAILED]: 1310,
|
|
367
|
+
[MagmaStreamErrorCode.PLAYER_VOICE_RECEIVER_ERROR]: 1311,
|
|
368
|
+
// QUEUE
|
|
369
|
+
[MagmaStreamErrorCode.QUEUE_REDIS_ERROR]: 1400,
|
|
370
|
+
[MagmaStreamErrorCode.QUEUE_JSON_ERROR]: 1401,
|
|
371
|
+
[MagmaStreamErrorCode.QUEUE_MEMORY_ERROR]: 1402,
|
|
372
|
+
// FILTERS
|
|
373
|
+
[MagmaStreamErrorCode.FILTER_APPLY_FAILED]: 1500,
|
|
374
|
+
// REST
|
|
375
|
+
[MagmaStreamErrorCode.REST_REQUEST_FAILED]: 1600,
|
|
376
|
+
[MagmaStreamErrorCode.REST_UNAUTHORIZED]: 1601,
|
|
377
|
+
// UTILS
|
|
378
|
+
[MagmaStreamErrorCode.UTILS_TRACK_PARTIAL_INVALID]: 1700,
|
|
379
|
+
[MagmaStreamErrorCode.UTILS_TRACK_BUILD_FAILED]: 1701,
|
|
380
|
+
[MagmaStreamErrorCode.UTILS_AUTOPLAY_BUILD_FAILED]: 1702,
|
|
381
|
+
// PLUGIN
|
|
382
|
+
[MagmaStreamErrorCode.PLUGIN_LOAD_FAILED]: 1800,
|
|
383
|
+
[MagmaStreamErrorCode.PLUGIN_RUNTIME_ERROR]: 1801,
|
|
384
|
+
};
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.Filters = void 0;
|
|
4
4
|
const filtersEqualizers_1 = require("../utils/filtersEqualizers");
|
|
5
5
|
const Enums_1 = require("./Enums");
|
|
6
|
+
const MagmastreamError_1 = require("./MagmastreamError");
|
|
6
7
|
class Filters {
|
|
7
8
|
distortion;
|
|
8
9
|
equalizer;
|
|
@@ -47,20 +48,33 @@ class Filters {
|
|
|
47
48
|
*/
|
|
48
49
|
async updateFilters() {
|
|
49
50
|
const { distortion, equalizer, karaoke, rotation, timescale, vibrato, volume } = this;
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
51
|
+
try {
|
|
52
|
+
await this.player.node.rest.updatePlayer({
|
|
53
|
+
data: {
|
|
54
|
+
filters: {
|
|
55
|
+
distortion,
|
|
56
|
+
equalizer,
|
|
57
|
+
karaoke,
|
|
58
|
+
rotation,
|
|
59
|
+
timescale,
|
|
60
|
+
vibrato,
|
|
61
|
+
volume,
|
|
62
|
+
},
|
|
60
63
|
},
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
}
|
|
64
|
+
guildId: this.player.guildId,
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
catch (err) {
|
|
68
|
+
const error = err instanceof MagmastreamError_1.MagmaStreamError
|
|
69
|
+
? err
|
|
70
|
+
: new MagmastreamError_1.MagmaStreamError({
|
|
71
|
+
code: Enums_1.MagmaStreamErrorCode.FILTER_APPLY_FAILED,
|
|
72
|
+
message: `Failed to apply filters to player "${this.player.guildId}".`,
|
|
73
|
+
cause: err instanceof Error ? err : undefined,
|
|
74
|
+
context: { nodeId: this.player.node.options.identifier },
|
|
75
|
+
});
|
|
76
|
+
console.log(error);
|
|
77
|
+
}
|
|
64
78
|
return this;
|
|
65
79
|
}
|
|
66
80
|
/**
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MagmaStreamError = void 0;
|
|
4
|
+
const Enums_1 = require("./Enums");
|
|
5
|
+
class MagmaStreamError extends Error {
|
|
6
|
+
code;
|
|
7
|
+
number;
|
|
8
|
+
context;
|
|
9
|
+
constructor({ code, message, cause, context }) {
|
|
10
|
+
super(message || code);
|
|
11
|
+
this.name = "MagmaStreamError";
|
|
12
|
+
this.code = code;
|
|
13
|
+
this.number = Enums_1.MagmaStreamErrorNumbers[code]; // auto-lookup
|
|
14
|
+
this.context = context;
|
|
15
|
+
if (cause)
|
|
16
|
+
this.cause = cause;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.MagmaStreamError = MagmaStreamError;
|