# SOME DESCRIPTIVE TITLE. # Copyright (C) 2022, aiogram Team # This file is distributed under the same license as the aiogram package. # FIRST AUTHOR , 2022. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: aiogram \n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-10-01 22:51+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.10.3\n" #: ../../dispatcher/middlewares.rst:3 msgid "Middlewares" msgstr "" #: ../../dispatcher/middlewares.rst:5 msgid "" "**aiogram** provides powerful mechanism for customizing event handlers " "via middlewares." msgstr "" #: ../../dispatcher/middlewares.rst:7 msgid "" "Middlewares in bot framework seems like Middlewares mechanism in web-" "frameworks like `aiohttp " "`_, `fastapi " "`_, `Django " "`_ or " "etc.) with small difference - here is implemented two layers of " "middlewares (before and after filters)." msgstr "" #: ../../dispatcher/middlewares.rst:15 msgid "" "Middleware is function that triggered on every event received from " "Telegram Bot API in many points on processing pipeline." msgstr "" #: ../../dispatcher/middlewares.rst:19 msgid "Base theory" msgstr "" #: ../../dispatcher/middlewares.rst:21 msgid "As many books and other literature in internet says:" msgstr "" #: ../../dispatcher/middlewares.rst:23 msgid "" "Middleware is reusable software that leverages patterns and frameworks to" " bridge the gap between the functional requirements of applications and " "the underlying operating systems, network protocol stacks, and databases." msgstr "" #: ../../dispatcher/middlewares.rst:27 msgid "" "Middleware can modify, extend or reject processing event in many places " "of pipeline." msgstr "" #: ../../dispatcher/middlewares.rst:30 msgid "Basics" msgstr "" #: ../../dispatcher/middlewares.rst:32 msgid "" "Middleware instance can be applied for every type of Telegram Event " "(Update, Message, etc.) in two places" msgstr "" #: ../../dispatcher/middlewares.rst:34 msgid "" "Outer scope - before processing filters " "(:code:`..outer_middleware(...)`)" msgstr "" #: ../../dispatcher/middlewares.rst:35 msgid "" "Inner scope - after processing filters but before handler " "(:code:`..middleware(...)`)" msgstr "" #: ../../dispatcher/middlewares.rst:-1 msgid "Middleware basics" msgstr "" #: ../../dispatcher/middlewares.rst:42 msgid "" "Middleware should be subclass of :code:`BaseMiddleware` (:code:`from " "aiogram import BaseMiddleware`) or any async callable" msgstr "" #: ../../dispatcher/middlewares.rst:45 msgid "Arguments specification" msgstr "" #: aiogram.dispatcher.middlewares.base.BaseMiddleware:1 of msgid "Bases: :py:class:`~abc.ABC`" msgstr "" #: aiogram.dispatcher.middlewares.base.BaseMiddleware:1 of msgid "Generic middleware class" msgstr "" #: aiogram.dispatcher.middlewares.base.BaseMiddleware.__call__:1 of msgid "Execute middleware" msgstr "" #: aiogram.dispatcher.middlewares.base.BaseMiddleware.__call__ of msgid "Parameters" msgstr "" #: aiogram.dispatcher.middlewares.base.BaseMiddleware.__call__:3 of msgid "Wrapped handler in middlewares chain" msgstr "" #: aiogram.dispatcher.middlewares.base.BaseMiddleware.__call__:4 of msgid "Incoming event (Subclass of :class:`aiogram.types.base.TelegramObject`)" msgstr "" #: aiogram.dispatcher.middlewares.base.BaseMiddleware.__call__:5 of msgid "Contextual data. Will be mapped to handler arguments" msgstr "" #: aiogram.dispatcher.middlewares.base.BaseMiddleware.__call__ of msgid "Returns" msgstr "" #: aiogram.dispatcher.middlewares.base.BaseMiddleware.__call__:6 of msgid ":class:`Any`" msgstr "" #: ../../dispatcher/middlewares.rst:56 msgid "Examples" msgstr "" #: ../../dispatcher/middlewares.rst:60 msgid "" "Middleware should always call :code:`await handler(event, data)` to " "propagate event for next middleware/handler" msgstr "" #: ../../dispatcher/middlewares.rst:64 msgid "Class-based" msgstr "" #: ../../dispatcher/middlewares.rst:85 msgid "and then" msgstr "" #: ../../dispatcher/middlewares.rst:94 msgid "Function-based" msgstr "" #: ../../dispatcher/middlewares.rst:109 msgid "Facts" msgstr "" #: ../../dispatcher/middlewares.rst:111 msgid "Middlewares from outer scope will be called on every incoming event" msgstr "" #: ../../dispatcher/middlewares.rst:112 msgid "Middlewares from inner scope will be called only when filters pass" msgstr "" #: ../../dispatcher/middlewares.rst:113 msgid "" "Inner middlewares is always calls for " ":class:`aiogram.types.update.Update` event type in due to all incoming " "updates going to specific event type handler through built in update " "handler" msgstr ""