diff --git a/lib/server.js b/lib/server.js index 9c5613058..bfd959f58 100644 --- a/lib/server.js +++ b/lib/server.js @@ -337,10 +337,22 @@ app._processOutstanding = function(key, id) { app._removePeer = function(key, id) { if (this._clients[key] && this._clients[key][id]) { var client = this._clients[key][id]; + var room = client.room; this._ips[this._clients[key][id].ip]--; delete this._clients[key][id]; delete this._room_members[client.room][id]; + // send to members + var members = Object.keys(this._room_members[room]); + for (var k = 0, kk = members.length; k < kk; k += 1) { + var member = members[k]; + this._handleTransmission(key, { + type: "LEAVE", + src: id, + dst: member + }); + } + console.log(this._clients); console.log(this._ips); console.log(this._room_members);