Files
solaris-guest-bot/src/bot/handlers/message/message.py

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)