Add docs for ContentTypesFilter

This commit is contained in:
Alex Root Junior 2019-12-11 21:42:56 +02:00
parent 6ee05fb901
commit 1d9e80a4dc
3 changed files with 45 additions and 5 deletions

View file

@ -0,0 +1,38 @@
# ContentTypesFilter
Is useful for handling specific types of messages (For example separate text and stickers handlers).
This is always automatically adds to the filters list for message handlers.
Can be imported:
- `#!python3 from aiogram.dispatcher.filters.content_types import ContentTypesFilter`
- `#!python3 from aiogram.dispatcher.filters import ContentTypesFilter`
- `#!python3 from aiogram.filters import ContentTypesFilter`
Or used from filters factory by passing corresponding arguments to handler registration line
!!! warning "Please be patient!"
If no one content type filter is specified the `["text"]` value is automatically will be used.
## Specification
| Argument | Type | Description |
| --- | --- | --- |
| `content_types` | `#!python3 Optional[List[str]]` | List of allowed content types |
## Usage
1. Single content type: `#!python3 ContentTypesFilter(content_types=["sticker"])`
1. Multiple content types: `#!python3 ContentTypesFilter(content_types=["sticker", "photo"])`
1. Recommended: With usage of `ContentType` helper: `#!python3 ContentTypesFilter(content_types=[ContentType.PHOTO])`
1. Any content type: `#!python3 ContentTypesFilter(content_types=[ContentType.ANY])`
## Allowed handlers
Allowed update types for this filter:
- `message`
- `edited_message`
- `channel_post`
- `edited_channel_post`

View file

@ -9,11 +9,12 @@ Searching of handler is always stops on first match set of filters are pass.
Here is list of builtin filters and event types where it can be used:
| Filter | update | message | edited_message | channel_post | edited_channel_post | inline_query | chosen_inline_result | callback_query | shipping_query | pre_checkout_query | poll |
| --------------------------- |:------:|:-------:|:--------------:|:------------:|:-------------------:|:------------:|:--------------------:|:--------------:|:--------------:|:------------------:|:----:|
| [Text](text.md) | | + | + | + | + | + | | + | | | + |
| [Command](command.md) | | + | | | | | | | | | |
| | | | | | | | | | | | |
| Filter | update | message | edited_message | channel_post | edited_channel_post | inline_query | chosen_inline_result | callback_query | shipping_query | pre_checkout_query | poll |
| ----------------------------------------- |:------:|:-------:|:--------------:|:------------:|:-------------------:|:------------:|:--------------------:|:--------------:|:--------------:|:------------------:|:----:|
| [Text](text.md) | | + | + | + | + | + | | + | | | + |
| [ContentTypesFilter](content_types.md) | | + | + | + | + | | | | | | |
| [Command](command.md) | | + | | | | | | | | | |
| | | | | | | | | | | | |
## Own filters specification

View file

@ -226,6 +226,7 @@ nav:
- dispatcher/filters/index.md
- dispatcher/filters/text.md
- dispatcher/filters/command.md
- dispatcher/filters/content_types.md
- Class based handlers:
- dispatcher/class_based_handlers/basics.md
- dispatcher/class_based_handlers/message.md