telegram.ext.RegexHandler¶
-
class
telegram.ext.
RegexHandler
(pattern, callback, pass_groups=False, pass_groupdict=False, pass_update_queue=False, pass_job_queue=False, pass_user_data=False, pass_chat_data=False, allow_edited=False, message_updates=True, channel_post_updates=False, edited_updates=False, run_async=False)¶ Bases:
telegram.ext.handler.Handler
[telegram.update.Update
]Handler class to handle Telegram updates based on a regex.
It uses a regular expression to check text messages. Read the documentation of the
re
module for more information. There.match
function is used to determine if an update should be handled by this handler.Note
This handler is being deprecated. For the same use case use:
MessageHandler(Filters.regex(r'pattern'), callback)
Warning
When setting
run_async
toTrue
, you cannot rely on adding custom attributes totelegram.ext.CallbackContext
. See its docs for more info.- Parameters
pattern (
str
|Pattern
) – The regex pattern.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
.pass_groups (
bool
, optional) – If the callback should be passed the result ofre.match(pattern, data).groups()
as a keyword argument calledgroups
. Default isFalse
pass_groupdict (
bool
, optional) – If the callback should be passed the result ofre.match(pattern, data).groupdict()
as a keyword argument calledgroupdict
. Default isFalse
pass_update_queue (
bool
, optional) – If set toTrue
, a keyword argument calledupdate_queue
will be passed to the callback function. It will be theQueue
instance used by thetelegram.ext.Updater
andtelegram.ext.Dispatcher
that contains new updates which can be used to insert updates. Default isFalse
.pass_job_queue (
bool
, optional) – If set toTrue
, a keyword argument calledjob_queue
will be passed to the callback function. It will be atelegram.ext.JobQueue
instance created by thetelegram.ext.Updater
which can be used to schedule new jobs. Default isFalse
.pass_user_data (
bool
, optional) – If set toTrue
, a keyword argument calleduser_data
will be passed to the callback function. Default isFalse
.pass_chat_data (
bool
, optional) – If set toTrue
, a keyword argument calledchat_data
will be passed to the callback function. Default isFalse
.message_updates (
bool
, optional) – Should “normal” message updates be handled? Default isTrue
.channel_post_updates (
bool
, optional) – Should channel posts updates be handled? Default isTrue
.edited_updates (
bool
, optional) – Should “edited” message updates be handled? Default isFalse
.run_async (
bool
) – Determines whether the callback will run asynchronously. Defaults toFalse
.
- Raises
ValueError –
-
pattern
¶ The regex pattern.
- Type
str
|Pattern
-
callback
¶ The callback function for this handler.
- Type
callable
-
pass_groups
¶ Determines whether
groups
will be passed to the callback function.- Type
bool
-
pass_groupdict
¶ Determines whether
groupdict
. will be passed to the callback function.- 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
-
pass_user_data
¶ Determines whether
user_data
will be passed to the callback function.- Type
bool
-
pass_chat_data
¶ Determines whether
chat_data
will be passed to the callback function.- Type
bool
-
run_async
¶ Determines whether the callback will run asynchronously.
- Type
bool
-
collect_optional_args
(dispatcher, update=None, check_result=None)¶ Prepares the optional arguments. If the handler has additional optional args, it should subclass this method, but remember to call this super method.
DEPRECATED: This method is being replaced by new context based callbacks. Please see https://git.io/fxJuV for more info.
- Parameters
dispatcher (
telegram.ext.Dispatcher
) – The dispatcher.update (
telegram.Update
) – The update to gather chat/user id from.check_result – The result from check_update