diff --git a/src/replay/machine.ts b/src/replay/machine.ts index 4ba618221a..d4635a04dc 100644 --- a/src/replay/machine.ts +++ b/src/replay/machine.ts @@ -114,6 +114,10 @@ export function createPlayerService( target: 'paused', actions: 'castEvent', }, + TO_LIVE: { + target: 'live', + actions: ['startLive'] + } }, }, live: { diff --git a/test/replayer.test.ts b/test/replayer.test.ts index 4390442101..731bd9c489 100644 --- a/test/replayer.test.ts +++ b/test/replayer.test.ts @@ -131,4 +131,16 @@ describe('replayer', function (this: ISuite) { expect(currentTime).to.equal(2500); expect(currentState).to.equal('paused'); }); + + it('can stream events in live mode', async () => { + const status = await this.page.evaluate(` + const { Replayer } = rrweb; + const replayer = new Replayer(events, { + liveMode: true + }); + replayer.startLive(); + replayer.service.state.value; + `); + expect(status).to.equal('live'); + }) });