Event
Table of Contents
Classes
- Bases
- Dispatcher base sentinels and helpers. `UNHANDLED`/`REJECTED` are singleton
objects (not strings) so identity comparison via `===` can't collide with a
user handler that happens to return the same string literal.
- CallableObject
- Reflection-cached "kwarg binder" mirroring upstream
`aiogram.dispatcher.event.handler.CallableObject`. The dispatcher injects a
large bag of context arguments (`bot`, `event_context`, `event_from_user`,
`state`, …) and each handler declares only the subset it actually needs.
- CancelHandlerException
- EventObserver
- Simple events observer used for managing events that are **not** related to
Telegram updates — primarily startup/shutdown lifecycle hooks (mirrors
upstream `aiogram.dispatcher.event.event.EventObserver`). Update routing is
handled separately by `TelegramEventObserver` (filters + middlewares +
handler results), which is intentionally a different class.
- FilterObject
- Wraps a filter callback that votes on whether a handler should run for a
given update. Mirrors upstream
`aiogram.dispatcher.event.handler.FilterObject`.
- HandlerObject
- Wraps a handler callback together with its filter chain and metadata flags.
- RejectedSentinel
- Sentinel singleton signalling that a handler explicitly rejected the update
(filter chain produced false / handler raised SkipHandlerException). Identity
only — `===` is the only reliable comparison.
- SkipHandlerException
- TelegramEventObserver
- Routing observer for a single Telegram update type — port of
`aiogram.dispatcher.event.telegram.TelegramEventObserver`.
- UnhandledSentinel
- Sentinel singleton returned/compared by reference to mark a handler chain that
did not produce a result (mirrors aiogram's `unittest.mock.sentinel.UNHANDLED`).