Archived
1
0
Fork 0
This repository has been archived on 2024-04-26. You can view files and clone it, but cannot push or open issues or pull requests.
akari-bot/bots/aiogram/bot.py

40 lines
1.4 KiB
Python
Raw Normal View History

2021-08-19 12:17:48 +00:00
import os
2021-08-18 13:11:14 +00:00
2021-08-19 12:17:48 +00:00
from aiogram import types, executor
2022-06-12 07:07:53 +00:00
from bots.aiogram.client import dp
from bots.aiogram.message import MessageSession, FetchTarget
2023-02-05 14:33:33 +00:00
from core.builtins import PrivateAssets, Url
from core.parser.message import parser
2023-02-05 14:33:33 +00:00
from core.types import MsgInfo, Session
2023-03-01 13:41:42 +00:00
from core.utils.bot import load_prompt, init_async
2021-08-19 12:17:48 +00:00
PrivateAssets.set(os.path.abspath(os.path.dirname(__file__) + '/assets'))
2022-06-12 07:07:53 +00:00
Url.disable_mm = True
2021-08-20 16:32:46 +00:00
@dp.message_handler()
async def msg_handler(message: types.Message):
2022-06-17 03:50:28 +00:00
targetId = f'Telegram|{message.chat.type}|{message.chat.id}'
2022-06-28 06:11:03 +00:00
replyId = None
if message.reply_to_message is not None:
replyId = message.reply_to_message.message_id
2022-06-17 03:50:28 +00:00
msg = MessageSession(MsgInfo(targetId=targetId,
2021-08-23 12:44:31 +00:00
senderId=f'Telegram|User|{message.from_user.id}',
targetFrom=f'Telegram|{message.chat.type}',
2022-07-31 08:33:20 +00:00
senderFrom='Telegram|User', senderName=message.from_user.username,
clientName='Telegram',
2022-06-28 06:11:03 +00:00
messageId=message.message_id,
replyId=replyId),
2021-08-18 13:11:14 +00:00
Session(message=message, target=message.chat.id, sender=message.from_user.id))
await parser(msg)
2021-08-18 13:11:14 +00:00
async def on_startup(dispatcher):
2023-03-01 13:41:42 +00:00
await init_async()
2021-08-21 15:58:07 +00:00
await load_prompt(FetchTarget)
2021-08-18 13:11:14 +00:00
if dp:
2021-08-18 13:11:14 +00:00
executor.start_polling(dp, skip_updates=True, on_startup=on_startup)