TelegramBotTemplate/app/core/dispatcher.py

29 lines
956 B
Python
Raw Normal View History

2025-03-29 01:13:50 +03:00
from aiogram import Dispatcher, F
from aiogram.filters import CommandStart, StateFilter, Command
from handlers import hmain
2025-03-29 01:46:56 +03:00
from data import callbacks, factory, states
2025-03-29 18:19:22 +03:00
from middlewares.getuser import GetUserMiddleware
2025-03-29 01:13:50 +03:00
def setup_dispatcher(dispatcher: Dispatcher) -> Dispatcher:
# # # # # # # # # # # # # # # # # Handlers # # # # # # # # # # # # # # # # # # # #
dispatcher.message.register(hmain.mainstart, CommandStart())
2025-03-29 01:46:56 +03:00
# Callback
dispatcher.callback_query.register(
hmain.example_callback,
F.data == callbacks.CExample.example,
)
# Factory Callback
dispatcher.callback_query.register(
hmain.example_callback_factory,
factory.ExampleFactory.filter(),
)
# State
dispatcher.message.register(
hmain.example_state,
StateFilter(states.ExampleState.input_user),
)
2025-03-29 18:19:22 +03:00
# Middleware connect
dispatcher.message.middleware(GetUserMiddleware())
2025-03-29 01:13:50 +03:00
return dispatcher