diff --git a/lib/client/socket/events.js b/lib/client/socket/events.js index 50befb30..787b0c71 100644 --- a/lib/client/socket/events.js +++ b/lib/client/socket/events.js @@ -80,16 +80,21 @@ class SocketEvent { } }); - this.jiffClient.socket.on('crypto_provider', (_msg, callback) => { + this.jiffClient.socket.on('crypto_provider', (msg, callback) => { callback(true); // send ack to server - const msg = JSON.parse(_msg); - this.jiffClient.handlers.receive_crypto_provider(msg); + if (msg.op_id != null) { + const msg = JSON.parse(msg); + this.jiffClient.handlers.receive_crypto_provider(msg); + } }); - this.jiffClient.socket.on('error', (_msg) => { - const msg = JSON.parse(_msg); - this.jiffClient.handlers.error(msg['label'], msg['error']); - this.jiffClient.handlers.error('socket.io', _msg); + this.socket.on('error', (msg) => { + try { + msg = JSON.parse(msg); + this.jiffClient.handlers.error(msg['label'], msg['error']); + } catch (error) { + this.jiffClient.handlers.error('socket.io', msg); + } }); this.jiffClient.socket.on('disconnect', (reason) => {