From 647472b32c67c7f88dfeac16f7d3e1f25132722a Mon Sep 17 00:00:00 2001 From: Suren Khorenyan Date: Wed, 14 Feb 2018 22:14:09 +0300 Subject: [PATCH] Dispatcher init typos fix --- aiogram/dispatcher/__init__.py | 78 ++++++++++++++++++---------------- 1 file changed, 42 insertions(+), 36 deletions(-) diff --git a/aiogram/dispatcher/__init__.py b/aiogram/dispatcher/__init__.py index 99b26e99..11f33fd5 100644 --- a/aiogram/dispatcher/__init__.py +++ b/aiogram/dispatcher/__init__.py @@ -5,11 +5,12 @@ import logging import time import typing -from .filters import CommandsFilter, ContentTypeFilter, ExceptionsFilter, RegexpFilter, USER_STATE, \ - generate_default_filters +from .filters import CommandsFilter, ContentTypeFilter, ExceptionsFilter, RegexpFilter, \ + USER_STATE, generate_default_filters from .handler import CancelHandler, Handler, SkipHandler from .middlewares import MiddlewareManager -from .storage import BaseStorage, DELTA, DisabledStorage, EXCEEDED_COUNT, FSMContext, LAST_CALL, RATE_LIMIT, RESULT +from .storage import BaseStorage, DELTA, DisabledStorage, EXCEEDED_COUNT, FSMContext, \ + LAST_CALL, RATE_LIMIT, RESULT from .webhook import BaseResponse from ..bot import Bot from ..types.message import ContentType @@ -30,9 +31,8 @@ class Dispatcher: """ Simple Updates dispatcher - It will be can process incoming updates, messages, edited messages, channel posts, edited channels posts, - inline query, chosen inline result, callback query, shipping query, pre-checkout query. - Provide next step handler and etc. + It will process incoming updates: messages, edited messages, channel posts, edited channel posts, + inline queries, chosen inline results, callback queries, shipping queries, pre-checkout queries. """ def __init__(self, bot, loop=None, storage: typing.Optional[BaseStorage] = None, @@ -181,7 +181,6 @@ class Dispatcher: state=state) return await self.pre_checkout_query_handlers.notify(update.pre_checkout_query) except Exception as e: - success = False err = await self.errors_handlers.notify(self, update, e) if err: return err @@ -293,7 +292,7 @@ class Dispatcher: async def wait_closed(self): """ - Wait closing the long polling + Wait for the long-polling to close :return: """ @@ -305,7 +304,7 @@ class Dispatcher: def is_polling(self): """ - Check polling is enabled? + Check if polling is enabled :return: """ @@ -314,18 +313,18 @@ class Dispatcher: def register_message_handler(self, callback, *, commands=None, regexp=None, content_types=None, func=None, state=None, custom_filters=None, run_task=None, **kwargs): """ - You can register messages handler by this method + Register handler for message .. code-block:: python3 - # This handler works only is state is None (by default). + # This handler works only if state is None (by default). dp.register_message_handler(cmd_start, commands=['start', 'about']) dp.register_message_handler(entry_point, commands=['setup']) - # That handler works only if current state is "first_step" + # This handler works only if current state is "first_step" dp.register_message_handler(step_handler_1, state="first_step") - # If you want to handle all states by one handler then use state="*". + # If you want to handle all states by one handler then use `state="*"`. dp.register_message_handler(cancel_handler, commands=['cancel'], state="*") dp.register_message_handler(cancel_handler, func=lambda msg: msg.text.lower() == 'cancel', state="*") @@ -357,7 +356,7 @@ class Dispatcher: def message_handler(self, *custom_filters, commands=None, regexp=None, content_types=None, func=None, state=None, run_task=None, **kwargs): """ - Decorator for messages handler + Decorator for message handler Examples: @@ -375,6 +374,13 @@ class Dispatcher: @dp.messages_handler(rexexp='^[a-z]+-[0-9]+') async def msg_handler(message: types.Message): + Filter messages by command regular expression: + + .. code-block:: python3 + + @dp.message_handler(filters.RegexpCommandsFilter(regexp_commands=['item_([0-9]*)'])) + async def send_welcome(message: types.Message): + Filter by content type: .. code-block:: python3 @@ -431,7 +437,7 @@ class Dispatcher: def register_edited_message_handler(self, callback, *, commands=None, regexp=None, content_types=None, func=None, state=None, custom_filters=None, run_task=None, **kwargs): """ - Analog of message_handler but only for edited messages + Register handler for edited message :param callback: :param commands: list of commands @@ -462,7 +468,7 @@ class Dispatcher: def edited_message_handler(self, *custom_filters, commands=None, regexp=None, content_types=None, func=None, state=None, run_task=None, **kwargs): """ - Analog of message_handler but only for edited messages + Decorator for edited message handler You can use combination of different handlers @@ -494,7 +500,7 @@ class Dispatcher: def register_channel_post_handler(self, callback, *, commands=None, regexp=None, content_types=None, func=None, state=None, custom_filters=None, run_task=None, **kwargs): """ - Register channels posts handler + Register handler for channel post :param callback: :param commands: list of commands @@ -525,7 +531,7 @@ class Dispatcher: def channel_post_handler(self, *custom_filters, commands=None, regexp=None, content_types=None, func=None, state=None, run_task=None, **kwargs): """ - Register channels posts handler + Decorator for channel post handler :param commands: list of commands :param regexp: REGEXP @@ -549,7 +555,7 @@ class Dispatcher: def register_edited_channel_post_handler(self, callback, *, commands=None, regexp=None, content_types=None, func=None, state=None, custom_filters=None, run_task=None, **kwargs): """ - Register handler for edited channels posts + Register handler for edited channel post :param callback: :param commands: list of commands @@ -580,7 +586,7 @@ class Dispatcher: def edited_channel_post_handler(self, *custom_filters, commands=None, regexp=None, content_types=None, func=None, state=None, run_task=None, **kwargs): """ - Register handler for edited channels posts + Decorator for edited channel post handler :param commands: list of commands :param regexp: REGEXP @@ -603,7 +609,7 @@ class Dispatcher: def register_inline_handler(self, callback, *, func=None, state=None, custom_filters=None, run_task=None, **kwargs): """ - Handle inline query + Register handler for inline query Example: @@ -631,7 +637,7 @@ class Dispatcher: def inline_handler(self, *custom_filters, func=None, state=None, run_task=None, **kwargs): """ - Handle inline query + Decorator for inline query handler Example: @@ -658,7 +664,7 @@ class Dispatcher: def register_chosen_inline_handler(self, callback, *, func=None, state=None, custom_filters=None, run_task=None, **kwargs): """ - Register chosen inline handler + Register handler for chosen inline query Example: @@ -686,7 +692,7 @@ class Dispatcher: def chosen_inline_handler(self, *custom_filters, func=None, state=None, run_task=None, **kwargs): """ - Register chosen inline handler + Decorator for chosen inline query handler Example: @@ -713,7 +719,7 @@ class Dispatcher: def register_callback_query_handler(self, callback, *, func=None, state=None, custom_filters=None, run_task=None, **kwargs): """ - Add callback query handler + Register handler for callback query Example: @@ -740,7 +746,7 @@ class Dispatcher: def callback_query_handler(self, *custom_filters, func=None, state=None, run_task=None, **kwargs): """ - Add callback query handler + Decorator for callback query handler Example: @@ -766,7 +772,7 @@ class Dispatcher: def register_shipping_query_handler(self, callback, *, func=None, state=None, custom_filters=None, run_task=None, **kwargs): """ - Add shipping query handler + Register handler for shipping query Example: @@ -793,7 +799,7 @@ class Dispatcher: def shipping_query_handler(self, *custom_filters, func=None, state=None, run_task=None, **kwargs): """ - Add shipping query handler + Decorator for shipping query handler Example: @@ -819,7 +825,7 @@ class Dispatcher: def register_pre_checkout_query_handler(self, callback, *, func=None, state=None, custom_filters=None, run_task=None, **kwargs): """ - Add shipping query handler + Register handler for pre-checkout query Example: @@ -846,7 +852,7 @@ class Dispatcher: def pre_checkout_query_handler(self, *custom_filters, func=None, state=None, run_task=None, **kwargs): """ - Add shipping query handler + Decorator for pre-checkout query handler Example: @@ -871,7 +877,7 @@ class Dispatcher: def register_errors_handler(self, callback, *, func=None, exception=None, run_task=None): """ - Register errors handler + Register handler for errors :param callback: :param func: @@ -887,7 +893,7 @@ class Dispatcher: def errors_handler(self, func=None, exception=None, run_task=None): """ - Decorator for registering errors handler + Decorator for errors handler :param func: :param exception: you can make handler for specific errors type @@ -932,10 +938,10 @@ class Dispatcher: async def throttle(self, key, *, rate=None, user=None, chat=None, no_error=None) -> bool: """ Execute throttling manager. - Return True limit is not exceeded otherwise raise ThrottleError or return False + Returns True if limit has not exceeded otherwise raises ThrottleError or returns False :param key: key in storage - :param rate: limit (by default is equals with default rate limit) + :param rate: limit (by default is equal to default rate limit) :param user: user id :param chat: chat id :param no_error: return boolean value instead of raising error @@ -983,7 +989,7 @@ class Dispatcher: await self.storage.set_bucket(chat=chat, user=user, bucket=bucket) if not result and not no_error: - # Raise if that is allowed + # Raise if it is allowed raise Throttled(key=key, chat=chat, user=user, **data) return result @@ -1035,7 +1041,7 @@ class Dispatcher: def async_task(self, func): """ Execute handler as task and return None. - Use that decorator for slow handlers (with timeouts) + Use this decorator for slow handlers (with timeouts) .. code-block:: python3