diff --git a/src/client.js b/src/client.js index fe602bce..eda7f194 100644 --- a/src/client.js +++ b/src/client.js @@ -396,7 +396,7 @@ Client.prototype.more = function(data) { const target = client.find(data.target); if (!target) { - return; + return null; } const chan = target.chan; @@ -415,10 +415,10 @@ Client.prototype.more = function(data) { messages = chan.messages.slice(Math.max(0, index - 100), index); } - client.emit("more", { + return { chan: chan.id, messages: messages, - }); + }; }; Client.prototype.open = function(socketId, target) { diff --git a/src/server.js b/src/server.js index beed5d34..6ec523ff 100644 --- a/src/server.js +++ b/src/server.js @@ -258,7 +258,11 @@ function initializeClient(socket, client, token, lastMessage) { socket.on( "more", function(data) { - client.more(data); + const history = client.more(data); + + if (history !== null) { + socket.emit("more", history); + } } );