selfhost debugger support part 1 -- give a VNC support flag in backend (#3418)
This commit is contained in:
@@ -3176,7 +3176,7 @@ class AgentDB:
|
|||||||
async def set_persistent_browser_session_browser_address(
|
async def set_persistent_browser_session_browser_address(
|
||||||
self,
|
self,
|
||||||
browser_session_id: str,
|
browser_session_id: str,
|
||||||
browser_address: str,
|
browser_address: str | None,
|
||||||
ip_address: str,
|
ip_address: str,
|
||||||
ecs_task_arn: str | None,
|
ecs_task_arn: str | None,
|
||||||
organization_id: str | None = None,
|
organization_id: str | None = None,
|
||||||
@@ -3193,11 +3193,14 @@ class AgentDB:
|
|||||||
)
|
)
|
||||||
).first()
|
).first()
|
||||||
if persistent_browser_session:
|
if persistent_browser_session:
|
||||||
|
if browser_address:
|
||||||
persistent_browser_session.browser_address = browser_address
|
persistent_browser_session.browser_address = browser_address
|
||||||
persistent_browser_session.ip_address = ip_address
|
|
||||||
persistent_browser_session.ecs_task_arn = ecs_task_arn
|
|
||||||
# once the address is set, the session is started
|
# once the address is set, the session is started
|
||||||
persistent_browser_session.started_at = datetime.utcnow()
|
persistent_browser_session.started_at = datetime.utcnow()
|
||||||
|
if ip_address:
|
||||||
|
persistent_browser_session.ip_address = ip_address
|
||||||
|
if ecs_task_arn:
|
||||||
|
persistent_browser_session.ecs_task_arn = ecs_task_arn
|
||||||
await session.commit()
|
await session.commit()
|
||||||
await session.refresh(persistent_browser_session)
|
await session.refresh(persistent_browser_session)
|
||||||
else:
|
else:
|
||||||
|
|||||||
@@ -39,6 +39,7 @@ class BrowserSessionResponse(BaseModel):
|
|||||||
description="Url for the browser session page",
|
description="Url for the browser session page",
|
||||||
examples=["https://app.skyvern.com/browser-session/pbs_123456"],
|
examples=["https://app.skyvern.com/browser-session/pbs_123456"],
|
||||||
)
|
)
|
||||||
|
vnc_streaming_supported: bool = Field(False, description="Whether the browser session supports VNC streaming")
|
||||||
started_at: datetime | None = Field(None, description="Timestamp when the session was started")
|
started_at: datetime | None = Field(None, description="Timestamp when the session was started")
|
||||||
completed_at: datetime | None = Field(None, description="Timestamp when the session was completed")
|
completed_at: datetime | None = Field(None, description="Timestamp when the session was completed")
|
||||||
created_at: datetime = Field(
|
created_at: datetime = Field(
|
||||||
@@ -68,6 +69,7 @@ class BrowserSessionResponse(BaseModel):
|
|||||||
runnable_id=browser_session.runnable_id,
|
runnable_id=browser_session.runnable_id,
|
||||||
timeout=browser_session.timeout_minutes,
|
timeout=browser_session.timeout_minutes,
|
||||||
browser_address=browser_session.browser_address,
|
browser_address=browser_session.browser_address,
|
||||||
|
vnc_streaming_supported=True if browser_session.ip_address else False,
|
||||||
app_url=app_url,
|
app_url=app_url,
|
||||||
started_at=browser_session.started_at,
|
started_at=browser_session.started_at,
|
||||||
completed_at=browser_session.completed_at,
|
completed_at=browser_session.completed_at,
|
||||||
|
|||||||
Reference in New Issue
Block a user