30 lines
837 B
Python
30 lines
837 B
Python
from aiogram import F, Router
|
|
from aiogram.types import Message
|
|
from dishka import FromDishka
|
|
|
|
from bot.modules.solaris.services.respond import RespondService
|
|
from bot.modules.solaris.structures import InputMessage
|
|
|
|
router = Router()
|
|
|
|
|
|
@router.message(F.text)
|
|
async def message_handler(
|
|
message: Message, respond_service: FromDishka[RespondService]
|
|
):
|
|
input_message = InputMessage(
|
|
time=message.date,
|
|
message_id=message.message_id,
|
|
text=message.text,
|
|
user_id=message.from_user.id,
|
|
username=message.from_user.full_name,
|
|
reply_to=(
|
|
message.reply_to_message.message_id if message.reply_to_message else None
|
|
),
|
|
)
|
|
|
|
output_messages = await respond_service.process_message(input_message)
|
|
|
|
for msg in output_messages:
|
|
await message.answer(msg.text)
|