42 lines
995 B
Python
42 lines
995 B
Python
#!/usr/bin/env python3
|
|
"""Print the conversation summary for a specific user's session."""
|
|
|
|
import asyncio
|
|
|
|
from google.cloud.firestore_v1.async_client import AsyncClient
|
|
|
|
from adk_firestore_sessionmanager import FirestoreSessionService
|
|
|
|
APP_NAME = "test_agent"
|
|
USER_ID = "dev_user"
|
|
|
|
|
|
async def main() -> None:
|
|
db = AsyncClient()
|
|
session_service = FirestoreSessionService(db=db)
|
|
|
|
resp = await session_service.list_sessions(
|
|
app_name=APP_NAME, user_id=USER_ID
|
|
)
|
|
|
|
if not resp.sessions:
|
|
print("No sessions found.")
|
|
return
|
|
|
|
for s in resp.sessions:
|
|
ref = session_service._session_ref(APP_NAME, USER_ID, s.id)
|
|
snap = await ref.get()
|
|
data = snap.to_dict() or {}
|
|
summary = data.get("conversation_summary")
|
|
|
|
print(f"Session: {s.id}")
|
|
if summary:
|
|
print(f"Summary:\n{summary}")
|
|
else:
|
|
print("No summary yet.")
|
|
print()
|
|
|
|
|
|
if __name__ == "__main__":
|
|
asyncio.run(main())
|