diff options
| author | Igor Tolmachov <me@igorek.dev> | 2022-12-03 02:03:05 +0900 |
|---|---|---|
| committer | Igor Tolmachov <me@igorek.dev> | 2022-12-03 02:03:05 +0900 |
| commit | 70becfc32ec98084067686bd456971a4cb76082c (patch) | |
| tree | 87e426a5e5bfa789a750665707046e3ddc1a8c73 /handlers/middleware.py | |
| parent | 7f9e3d0055b3f659f3b5337b1a69418cc1fae72f (diff) | |
| download | karpov_ai_bot-70becfc32ec98084067686bd456971a4cb76082c.tar.gz karpov_ai_bot-70becfc32ec98084067686bd456971a4cb76082c.zip | |
Beta 2.0
Diffstat (limited to 'handlers/middleware.py')
| -rw-r--r-- | handlers/middleware.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/handlers/middleware.py b/handlers/middleware.py new file mode 100644 index 0000000..6cf39b6 --- /dev/null +++ b/handlers/middleware.py | |||
| @@ -0,0 +1,21 @@ | |||
| 1 | from logging import info | ||
| 2 | |||
| 3 | from aiogram import types as t | ||
| 4 | from aiogram.dispatcher.middlewares import BaseMiddleware | ||
| 5 | |||
| 6 | from shared.database import Message | ||
| 7 | from shared.instances import session | ||
| 8 | |||
| 9 | |||
| 10 | class MessageMiddleware(BaseMiddleware): | ||
| 11 | async def on_pre_process_message(self, msg: t.Message, data: dict) -> None: | ||
| 12 | text = msg.text or msg.caption | ||
| 13 | if text is not None and not text.startswith("/"): | ||
| 14 | with session.begin() as s: | ||
| 15 | s.add( | ||
| 16 | Message( | ||
| 17 | chat_id=msg.chat.id, | ||
| 18 | message_id=msg.message_id, | ||
| 19 | message=text, | ||
| 20 | ) | ||
| 21 | ) | ||
