mirror of
https://github.com/EvolutionAPI/adk-python.git
synced 2025-12-19 11:52:19 -06:00
fix: Continue fetching events if there are multiple pages.
Fixes https://github.com/google/adk-python/issues/920 PiperOrigin-RevId: 764985371
This commit is contained in:
committed by
Copybara-Service
parent
18fbe3cbfc
commit
65063023a5
@@ -159,15 +159,29 @@ class VertexAiSessionService(BaseSessionService):
|
||||
if list_events_api_response.get('httpHeaders', None):
|
||||
return session
|
||||
|
||||
session.events = [
|
||||
session.events += [
|
||||
_from_api_event(event)
|
||||
for event in list_events_api_response['sessionEvents']
|
||||
]
|
||||
|
||||
while list_events_api_response.get('nextPageToken', None):
|
||||
page_token = list_events_api_response.get('nextPageToken', None)
|
||||
list_events_api_response = await api_client.async_request(
|
||||
http_method='GET',
|
||||
path=f'reasoningEngines/{reasoning_engine_id}/sessions/{session_id}/events?pageToken={page_token}',
|
||||
request_dict={},
|
||||
)
|
||||
session.events += [
|
||||
_from_api_event(event)
|
||||
for event in list_events_api_response['sessionEvents']
|
||||
]
|
||||
|
||||
session.events = [
|
||||
event for event in session.events if event.timestamp <= update_timestamp
|
||||
]
|
||||
session.events.sort(key=lambda event: event.timestamp)
|
||||
|
||||
# Filter events based on config
|
||||
if config:
|
||||
if config.num_recent_events:
|
||||
session.events = session.events[-config.num_recent_events :]
|
||||
|
||||
Reference in New Issue
Block a user