telegram.ext.TypeHandler

class telegram.ext.TypeHandler(type: Type[UT], callback: Callable[[UT, CallbackContext], RT], strict: bool = False, pass_update_queue: bool = False, pass_job_queue: bool = False, run_async: Union[bool, telegram.utils.helpers.DefaultValue] = <telegram.utils.helpers.DefaultValue object>)

Bases: telegram.ext.handler.Handler

Handler class to handle updates of custom types.

Warning

When setting run_async to True, you cannot rely on adding custom attributes to telegram.ext.CallbackContext. See its docs for more info.

Parameters:
  • type (type) – The type of updates this handler should process, as determined by isinstance
  • callback (callable) –

    The callback function for this handler. Will be called when check_update has determined that an update should be processed by this handler. Callback signature for context based API:

    def callback(update: Update, context: CallbackContext)

    The return value of the callback is usually ignored except for the special case of telegram.ext.ConversationHandler.

  • strict (bool, optional) – Use type instead of isinstance. Default is False
  • pass_update_queue (bool, optional) – If set to True, a keyword argument called update_queue will be passed to the callback function. It will be the Queue instance used by the telegram.ext.Updater and telegram.ext.Dispatcher that contains new updates which can be used to insert updates. Default is False. DEPRECATED: Please switch to context based callbacks.
  • pass_job_queue (bool, optional) – If set to True, a keyword argument called job_queue will be passed to the callback function. It will be a telegram.ext.JobQueue instance created by the telegram.ext.Updater which can be used to schedule new jobs. Default is False. DEPRECATED: Please switch to context based callbacks.
  • run_async (bool) – Determines whether the callback will run asynchronously. Defaults to False.
type

The type of updates this handler should process.

Type:type
callback

The callback function for this handler.

Type:callable
strict

Use type instead of isinstance. Default is False.

Type:bool
pass_update_queue

Determines whether update_queue will be passed to the callback function.

Type:bool
pass_job_queue

Determines whether job_queue will be passed to the callback function.

Type:bool
run_async

Determines whether the callback will run asynchronously.

Type:bool
check_update(update: object) → bool

Determines whether an update should be passed to this handlers callback.

Parameters:update (object) – Incoming update.
Returns:bool