From 7322e1f1ec509f59e0caf0762dbd604bcf74c6ef Mon Sep 17 00:00:00 2001 From: Rohit Date: Mon, 23 Jun 2025 13:23:29 +0530 Subject: [PATCH] feat: sub to dom mode --- server/src/browser-management/controller.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/server/src/browser-management/controller.ts b/server/src/browser-management/controller.ts index 0589b68c..3a2c31e3 100644 --- a/server/src/browser-management/controller.ts +++ b/server/src/browser-management/controller.ts @@ -20,7 +20,7 @@ import logger from "../logger"; * @returns string * @category BrowserManagement-Controller */ -export const initializeRemoteBrowserForRecording = (userId: string): string => { +export const initializeRemoteBrowserForRecording = (userId: string, mode: string = "dom"): string => { const id = getActiveBrowserIdByState(userId, "recording") || uuid(); createSocketConnection( io.of(id), @@ -37,7 +37,15 @@ export const initializeRemoteBrowserForRecording = (userId: string): string => { browserSession.interpreter.subscribeToPausing(); await browserSession.initialize(userId); await browserSession.registerEditorEvents(); - await browserSession.subscribeToScreencast(); + + if (mode === "dom") { + await browserSession.subscribeToDOM(); + logger.info('DOM streaming started for scraping browser in recording mode'); + } else { + await browserSession.subscribeToScreencast(); + logger.info('Screenshot streaming started for local browser in recording mode'); + } + browserPool.addRemoteBrowser(id, browserSession, userId, false, "recording"); } socket.emit('loaded');