websocket cleanup (#1346)

* websocket cleanup

* resume event

* Update Resumed.js

* Update WebSocketManager.js
This commit is contained in:
Gus Caplan
2017-04-10 13:02:17 -05:00
committed by Crawl
parent 8436cbe8b1
commit 0a56fa0aae
8 changed files with 167 additions and 79 deletions

View File

@@ -0,0 +1,26 @@
const AbstractHandler = require('./AbstractHandler');
class ResumedHandler extends AbstractHandler {
handle(packet) {
const client = this.packetManager.client;
const ws = client.ws;
ws._trace = packet.d._trace;
const replayed = ws.sequence - ws.resumeStart;
ws.resumeStart = -1;
client.emit('debug', `RESUMED ${ws._trace.join(' -> ')} | replayed ${replayed} events. `);
client.emit('resume', replayed);
ws.heartbeat();
}
}
/**
* Emitted whenever a websocket resumes
* @event Client#resume
* @param {Number} replayed Number of events that were replayed
*/
module.exports = ResumedHandler;