mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-16 03:23:29 +01:00
Slightly reduced promise bloat
This commit is contained in:
@@ -54,16 +54,11 @@ class InternalClient {
|
|||||||
|
|
||||||
//def leaveVoiceChannel
|
//def leaveVoiceChannel
|
||||||
leaveVoiceChannel() {
|
leaveVoiceChannel() {
|
||||||
var self = this;
|
if (self.voiceConnection) {
|
||||||
return new Promise((resolve, reject) => {
|
self.voiceConnection.destroy();
|
||||||
if (self.voiceConnection) {
|
self.voiceConnection = null;
|
||||||
self.voiceConnection.destroy();
|
}
|
||||||
self.voiceConnection = null;
|
return Promise.resolve();
|
||||||
resolve();
|
|
||||||
} else {
|
|
||||||
resolve();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//def awaitResponse
|
//def awaitResponse
|
||||||
@@ -91,51 +86,45 @@ class InternalClient {
|
|||||||
|
|
||||||
//def joinVoiceChannel
|
//def joinVoiceChannel
|
||||||
joinVoiceChannel(chann) {
|
joinVoiceChannel(chann) {
|
||||||
var self = this;
|
var channel = self.resolver.resolveVoiceChannel(chann);
|
||||||
return new Promise((resolve, reject) => {
|
|
||||||
|
|
||||||
var channel = self.resolver.resolveVoiceChannel(chann);
|
if (!channel) {
|
||||||
|
return Promise.reject(new Error("voice channel does not exist"));
|
||||||
|
}
|
||||||
|
return self.leaveVoiceChannel()
|
||||||
|
.then(() => {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
var session, token, server = channel.server, endpoint;
|
||||||
|
|
||||||
if (channel) {
|
var check = (m) => {
|
||||||
|
var data = JSON.parse(m);
|
||||||
|
if (data.t === "VOICE_STATE_UPDATE") {
|
||||||
|
session = data.d.session_id;
|
||||||
|
} else if (data.t === "VOICE_SERVER_UPDATE") {
|
||||||
|
token = data.d.token;
|
||||||
|
endpoint = data.d.endpoint;
|
||||||
|
var chan = self.voiceConnection = new VoiceConnection(channel, self.client, session, token, server, endpoint);
|
||||||
|
|
||||||
self.leaveVoiceChannel().then(next);
|
chan.on("ready", () => resolve(chan));
|
||||||
|
chan.on("error", reject);
|
||||||
|
|
||||||
function next() {
|
self.client.emit("debug", "removed temporary voice websocket listeners");
|
||||||
var session, token, server = channel.server, endpoint;
|
self.websocket.removeListener("message", check);
|
||||||
|
|
||||||
var check = (m) => {
|
}
|
||||||
var data = JSON.parse(m);
|
};
|
||||||
if (data.t === "VOICE_STATE_UPDATE") {
|
|
||||||
session = data.d.session_id;
|
|
||||||
} else if (data.t === "VOICE_SERVER_UPDATE") {
|
|
||||||
token = data.d.token;
|
|
||||||
endpoint = data.d.endpoint;
|
|
||||||
var chan = self.voiceConnection = new VoiceConnection(channel, self.client, session, token, server, endpoint);
|
|
||||||
|
|
||||||
chan.on("ready", () => resolve(chan));
|
|
||||||
chan.on("error", reject);
|
|
||||||
|
|
||||||
self.client.emit("debug", "removed temporary voice websocket listeners");
|
|
||||||
self.websocket.removeListener("message", check);
|
|
||||||
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
self.websocket.on("message", check);
|
|
||||||
self.sendWS({
|
|
||||||
op: 4,
|
|
||||||
d: {
|
|
||||||
"guild_id": server.id,
|
|
||||||
"channel_id": channel.id,
|
|
||||||
"self_mute": false,
|
|
||||||
"self_deaf": false
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
reject(new Error("voice channel does not exist"));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
self.websocket.on("message", check);
|
||||||
|
self.sendWS({
|
||||||
|
op: 4,
|
||||||
|
d: {
|
||||||
|
"guild_id": server.id,
|
||||||
|
"channel_id": channel.id,
|
||||||
|
"self_mute": false,
|
||||||
|
"self_deaf": false
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1697,4 +1686,4 @@ class InternalClient {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = InternalClient;
|
module.exports = InternalClient;
|
||||||
|
|||||||
Reference in New Issue
Block a user