Define get_persistent_browser_session_by_id (#1774)
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
This commit is contained in:
@@ -2526,6 +2526,30 @@ class AgentDB:
|
|||||||
LOG.error("UnexpectedError", exc_info=True)
|
LOG.error("UnexpectedError", exc_info=True)
|
||||||
raise
|
raise
|
||||||
|
|
||||||
|
async def get_persistent_browser_session_by_id(self, session_id: str) -> Optional[PersistentBrowserSession]:
|
||||||
|
"""Get a specific persistent browser session."""
|
||||||
|
try:
|
||||||
|
async with self.Session() as session:
|
||||||
|
persistent_browser_session = (
|
||||||
|
await session.scalars(
|
||||||
|
select(PersistentBrowserSessionModel)
|
||||||
|
.filter_by(persistent_browser_session_id=session_id)
|
||||||
|
.filter_by(deleted_at=None)
|
||||||
|
)
|
||||||
|
).first()
|
||||||
|
if persistent_browser_session:
|
||||||
|
return PersistentBrowserSession.model_validate(persistent_browser_session)
|
||||||
|
raise NotFoundError(f"PersistentBrowserSession {session_id} not found")
|
||||||
|
except NotFoundError:
|
||||||
|
LOG.error("NotFoundError", exc_info=True)
|
||||||
|
raise
|
||||||
|
except SQLAlchemyError:
|
||||||
|
LOG.error("SQLAlchemyError", exc_info=True)
|
||||||
|
raise
|
||||||
|
except Exception:
|
||||||
|
LOG.error("UnexpectedError", exc_info=True)
|
||||||
|
raise
|
||||||
|
|
||||||
async def get_persistent_browser_session(
|
async def get_persistent_browser_session(
|
||||||
self, session_id: str, organization_id: str
|
self, session_id: str, organization_id: str
|
||||||
) -> Optional[PersistentBrowserSessionModel]:
|
) -> Optional[PersistentBrowserSessionModel]:
|
||||||
|
|||||||
Reference in New Issue
Block a user