PoolStatusObserver

toloka.streaming.observer.PoolStatusObserver | Source code

PoolStatusObserver(
self,
toloka_client: Union[TolokaClient, AsyncTolokaClient],
pool_id: str,
*,
name: Optional[str] = None
)

Observer for pool status change.

For usage with Pipeline.

Allow to register callbacks using the following methods:

  • on_open
  • on_closed
  • on_archieved
  • on_locked
  • on_status_change

The Pool object will be passed to the triggered callbacks.

Parameters description

ParametersTypeDescription
toloka_clientAsyncInterfaceWrapper[Union[TolokaClient, AsyncTolokaClient]]

TolokaClient instance or async wrapper around it.

pool_idstr

Pool ID.

Examples:

Bind to the pool's close to make some aggregations.

def call_this_on_close(pool: Pool) -> None:
assignments = client.get_assignments_df(pool_id=pool.id, status=['APPROVED'])
do_some_aggregation(assignments)
observer = PoolStatusObserver(toloka_client, pool_id='123')
observer.on_close(call_this_on_close)

Call something at any status change.

observer.on_status_change(lambda pool: ...)

Methods summary

MethodDescription
get_unique_keyNone
injectNone
on_archievedNone
on_closedNone
on_lockedNone
on_openNone
on_status_changeNone
register_callbackRegister given callable for pool status change to given value.

Last updated: August 28, 2023

Toloka-Kit
OverviewGetting API keyQuick start
Recipes
Reference
toloka.client
toloka.async_client
toloka.autoquality [autoquality]
toloka.metrics
toloka.streaming