Fixed switching voice channels

This commit is contained in:
hydrabolt
2015-11-08 10:45:49 +00:00
parent 04c3dbedac
commit c5fe16af5b
5 changed files with 7 additions and 18 deletions

View File

@@ -70,29 +70,24 @@ class InternalClient {
self.leaveVoiceChannel().then(next);
function next(){
var session, token, server = channel.server, endpoint, fired = 0;
var session, token, server = channel.server, endpoint;
var check = (m) => {
var data = JSON.parse(m);
if(data.t === "VOICE_STATE_UPDATE"){
session = data.d.session_id;
fired++;
}else if(data.t === "VOICE_SERVER_UPDATE"){
token = data.d.token;
endpoint = data.d.endpoint;
fired++;
var chan = self.voiceConnection = new VoiceConnection(channel, self.client, session, token, server, endpoint);
chan.on("ready", resolve);
chan.on("error", reject);
}
if(fired >= 2){
self.client.emit("debug", "removed temporary voice websocket listeners");
self.websocket.removeListener('message', check);
self.websocket.removeListener("message", check);
}
};
self.websocket.on("message", check);

View File

@@ -190,7 +190,6 @@ class VoiceConnection extends EventEmitter {
.encodeFile(stream)
.catch(error)
.then(data => {
self.streamProc = data.proc;
var intent = self.playRawStream(data.stream);
resolve(intent);