diff --git a/lib/engine.js b/lib/engine.js index acaa4188..fb2f88a1 100644 --- a/lib/engine.js +++ b/lib/engine.js @@ -209,12 +209,26 @@ Engine.prototype.onOpen = function () { Engine.prototype.onMessage = function (msg) { switch (msg.type) { + case 'noop': + break; + case 'open': this.onOpen(); break; - case 'heartbeat': - this.writePacket('heartbeat'); + case 'ping': + this.writePacket('pong'); + break; + + case 'error': + var err = new Error('server error'); + err.code = msg.data; + this.emit('error', err); + break; + + case 'message': + this.emit('message', msg.data); + this.onmessage && this.onmessage.call(this, msg.data); break; } };