diff --git a/lib/index.js b/lib/index.js index ca00cb58..24c87e6b 100644 --- a/lib/index.js +++ b/lib/index.js @@ -44,8 +44,22 @@ rpc.on('session add', data => { store_.dispatch(sessionActions.addSession(data)); }); +let req, objects = {} rpc.on('session data', ({uid, data}) => { - store_.dispatch(sessionActions.addSessionData(uid, data)); + if (objects[uid] === undefined) { + objects[uid] = data; + } else { + objects[uid] += data; + } + if (!req) { + req = requestAnimationFrame(function () { + for (var i in objects) { + store_.dispatch(sessionActions.addSessionData(i, objects[i])); + } + objects = {}; + req = null; + }) + } }); rpc.on('session data send', ({uid, data}) => {