diff --git a/src/lib/webSocketClient/WebSocketClientManager.js b/src/lib/webSocketClient/WebSocketClientManager.js index 385402fd..969203c9 100644 --- a/src/lib/webSocketClient/WebSocketClientManager.js +++ b/src/lib/webSocketClient/WebSocketClientManager.js @@ -155,7 +155,10 @@ class WebSocketClientManager { disconnect (clientName) { if (this.ws[clientName]) { - this.ws[clientName].client.close() + if (this.ws[clientName].client) { + this.ws[clientName].client.removeAllListeners() + this.ws[clientName].client.close() + } if (this.ws[clientName].eventEmitter) { this.ws[clientName].eventEmitter.removeAllListeners() } @@ -170,7 +173,10 @@ class WebSocketClientManager { disconnectAll () { for (const clientName in this.ws) { - this.ws[clientName].client.close() + if (this.ws[clientName].client) { + this.ws[clientName].client.removeAllListeners() + this.ws[clientName].client.close() + } if (this.ws[clientName].eventEmitter) { this.ws[clientName].eventEmitter.removeAllListeners() }