start.py 781 B

1234567891011121314151617181920212223
  1. from aiogram import Router
  2. from aiogram.filters import CommandStart
  3. from aiogram.types import Message
  4. from anonflow.services import MessageRouter, UserService
  5. from anonflow.services.transport.results import CommandStartResult
  6. class StartRouter(Router):
  7. def __init__(self, message_router: MessageRouter, user_service: UserService):
  8. super().__init__()
  9. self.message_router = message_router
  10. self.user_service = user_service
  11. def setup(self):
  12. @self.message(CommandStart())
  13. async def on_start(message: Message):
  14. if message.from_user:
  15. await self.user_service.add(message.from_user.id)
  16. await self.message_router.dispatch(
  17. CommandStartResult(),
  18. message
  19. )