Ignore setSpeaking requests when VC isn't connected (#1638)

This commit is contained in:
aemino
2017-07-01 02:14:41 -07:00
committed by Crawl
parent 407500bf52
commit 7aa791eaaa
2 changed files with 3 additions and 0 deletions

View File

@@ -132,6 +132,7 @@ class VoiceConnection extends EventEmitter {
*/ */
setSpeaking(value) { setSpeaking(value) {
if (this.speaking === value) return; if (this.speaking === value) return;
if (this.status !== Constants.VoiceStatus.CONNECTED) return;
this.speaking = value; this.speaking = value;
this.sockets.ws.sendPacket({ this.sockets.ws.sendPacket({
op: Constants.VoiceOPCodes.SPEAKING, op: Constants.VoiceOPCodes.SPEAKING,

View File

@@ -1,5 +1,6 @@
const VolumeInterface = require('../util/VolumeInterface'); const VolumeInterface = require('../util/VolumeInterface');
const VoiceBroadcast = require('../VoiceBroadcast'); const VoiceBroadcast = require('../VoiceBroadcast');
const Constants = require('../../../util/Constants');
const secretbox = require('../util/Secretbox'); const secretbox = require('../util/Secretbox');
@@ -108,6 +109,7 @@ class StreamDispatcher extends VolumeInterface {
setSpeaking(value) { setSpeaking(value) {
if (this.speaking === value) return; if (this.speaking === value) return;
if (this.player.voiceConnection.status !== Constants.VoiceStatus.CONNECTED) return;
this.speaking = value; this.speaking = value;
/** /**
* Emitted when the dispatcher starts/stops speaking. * Emitted when the dispatcher starts/stops speaking.