aiogram/docs2/dispatcher/dispatcher.rst
Alex Root Junior 4008a3114d
Upgrade architecture + 5.0 Bot API (#469)
Upgrade architecture + 5.0 Bot API (#469)
* Moved `methods`, `types` and `client` to root package
* Removed update handler from routers to dispatcher
* Reworked events propagation mechanism to handlers
* Reworked inner middlewares logic (very small change)
* Updated to Bot API 5.0
* Initial migration from MkDocs to Sphinx + config for readthedocs
2021-01-26 21:20:52 +02:00

72 lines
1.3 KiB
ReStructuredText

##########
Dispathcer
##########
Dispatcher is root :obj:`Router` and in code Dispatcher can be used directly for routing updates or attach another routers into dispatcher.
Here is only listed base information about Dispatcher. All about writing handlers, filters and etc. you can found in next pages:
- `Router <router.html>`__
- `Observer <observer.html>`__
.. autoclass:: aiogram.dispatcher.dispatcher.Dispatcher
:members: __init__, feed_update, feed_raw_update, feed_webhook_update, start_polling, run_polling
Simple usage
============
Example:
.. code-block:: python
dp = Dispatcher()
@dp.message()
async def message_handler(message: types.Message) -> None:
await SendMessage(chat_id=message.from_user.id, text=message.text)
Including routers
Example:
.. code-block:: python
dp = Dispatcher()
router1 = Router()
dp.include_router(router1)
Handling updates
================
All updates can be propagated to the dispatcher by :obj:`Dispatcher.feed_update(bot=..., update=...)` method:
.. code-block:: python
bot = Bot(...)
dp = Dispathcher()
...
result = await dp.feed_update(bot=bot, update=incoming_update)
Polling
=======
.. warning::
not yet docummented
...
Webhook
=======
.. warning::
not yet docummented
...