feat(bot): developing integration with solaris
This commit is contained in:
1
src/bot/handlers/message/__init__.py
Normal file
1
src/bot/handlers/message/__init__.py
Normal file
@@ -0,0 +1 @@
|
||||
from .message import router
|
||||
29
src/bot/handlers/message/message.py
Normal file
29
src/bot/handlers/message/message.py
Normal file
@@ -0,0 +1,29 @@
|
||||
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)
|
||||
Reference in New Issue
Block a user