diff options
| author | huker667 <huker@tuta.io> | 2026-07-14 08:23:17 +0300 |
|---|---|---|
| committer | huker667 <huker@tuta.io> | 2026-07-14 08:23:17 +0300 |
| commit | 2cce59fb5806633db002d4145070035414e9c42d (patch) | |
| tree | 569b1c2e0e58384cb5a10903ffc94592e0c4a3cd /main.py | |
| parent | b3f345838899498eee98e16e86e7c3dcba092864 (diff) | |
| download | uzbekgpt-2cce59fb5806633db002d4145070035414e9c42d.tar.gz uzbekgpt-2cce59fb5806633db002d4145070035414e9c42d.tar.bz2 uzbekgpt-2cce59fb5806633db002d4145070035414e9c42d.zip | |
add new markdown
Diffstat (limited to 'main.py')
| -rw-r--r-- | main.py | 76 |
1 files changed, 58 insertions, 18 deletions
@@ -11,7 +11,7 @@ from datetime import datetime from aiogram import Bot, Dispatcher, F from aiogram.client.default import DefaultBotProperties from aiogram.types import Update -from aiogram.methods import AnswerGuestQuery +from aiogram.methods import AnswerGuestQuery, SendRichMessage from aiogram.types import InlineQueryResultArticle, InputTextMessageContent from aiogram import BaseMiddleware @@ -25,6 +25,8 @@ from aiogram.types import ( InlineQuery, InlineQueryResultArticle, InputTextMessageContent, + InputRichMessageContent, + InputRichMessage, Message, ) from callbacks import * @@ -260,18 +262,38 @@ async def guest_middleware(handler, event, data): images += [b64_image] except Exception as e: print(f"{RED} -- photo - {e}{RESET}") - - if event.message: - if msg: - await msg.edit_text("💬") - if not msg and stream == "edit": - msg = await message.reply("💬") prompt = f"{prompt}\n{user_text}" if replied_text: prompt = f"<ответ на>{replied_text}</ответ> {prompt}" prompt = prompt[:MAX_PROMPT] + if config["markdown"] == "" and message.from_user.id != 777000: + last_command_time[user_id][1] = False + last_command_time[user_id][2] = [] + alloh_text = """👆*врат важный вопрос*👆если ты видишь сообщение сверху то нажми "новый стиль", +а если у тебя тг старый и ты не видишь, то нажми "старый стиль". потому что тг обновил +фукция маркdown.✅✅✅""" + alloh_one_text = """👇*перед моим ответом ответь на очень важный вопрос*👇 +ты хочешь использовать новый стиль выделения текста телеграм 12.8+ (6.9.3+ десктоп) или +хочешь старый для старых версий телеграм и телеграм х? эту настройку можно будет изменить.✅ """ + reply_markup_url = InlineKeyboardMarkup(inline_keyboard=[ + [InlineKeyboardButton(text="новый стиль", url=f"https://t.me/{BOT_USERNAME}?start=new_md")], + [InlineKeyboardButton(text="старый стиль", url=f"https://t.me/{BOT_USERNAME}?start=old_md")], + ] + ) + reply_markup = InlineKeyboardMarkup(inline_keyboard=[ + [InlineKeyboardButton(text="новый стиль", callback_data=f"set_markdown%{user_id}%new")], + [InlineKeyboardButton(text="старый стиль", callback_data=f"set_markdown%{user_id}%old")], + ] + ) + if event.guest_message: + await g_answer(data, message, alloh_one_text, reply_markup=reply_markup_url) + elif event.message: + await message.reply_rich(InputRichMessage(markdown="# ало\n```\nкак дела\n```")) + await message.answer(alloh_text, reply_markup=reply_markup) + return + if event.message: try: await bot.send_chat_action(chat_id=message.chat.id, action="typing") @@ -371,6 +393,8 @@ async def guest_middleware(handler, event, data): else: poll_type = "regular" + + try: result = await answer_poll( data=data, @@ -399,32 +423,51 @@ async def guest_middleware(handler, event, data): return + + kwargs = ( + {"rich_message": InputRichMessage(markdown=result)} + if config["markdown"] == "new" + else {"text": result} + ) try: if event.guest_message: - await g_answer(data, message, result) + await g_answer(data, message, result, user_id=user_id) elif event.message: if msg: if stream == "native": await msg.delete() - await message.reply(result) + if config["markdown"] == "new": + await message.reply_rich(**kwargs) + else: + await message.reply(**kwargs) else: - await msg.edit_text(result) + await msg.edit_text(**kwargs) else: - await message.reply(result) + if config["markdown"] == "new": + await message.reply_rich(**kwargs) + else: + await message.reply(**kwargs) except Exception as e: + kwargs["parse_mode"] = None try: if event.guest_message: - await g_answer(data, message, result, parse_mode="None") + await g_answer(data, message, result) elif event.message: if msg: if stream == "native": await msg.delete() - await message.reply(result, parse_mode="None") + if config["markdown"] == "new": + await message.reply_rich(**kwargs) + else: + await message.reply(**kwargs) else: - await msg.edit_text(result, parse_mode="None") + await msg.edit_text(**kwargs) else: - await message.reply(result, parse_mode="None") + if config["markdown"] == "new": + await message.reply_rich(**kwargs) + else: + await message.reply(**kwargs) except Exception as e: print(f"{RED} -- send guest - {e}{RESET}") else: @@ -513,9 +556,6 @@ async def chosen_inline_result_handler(chosen_result: ChosenInlineResult): print(f"{RED} -- {error['type']} -- {error['message']}") return if result: - if result.startswith("<!block>") or result.endswith("<!block>"): - result = result.replace("<!block>", "") - last_block_time[user_id] = current_time try: await bot.edit_message_text( text=result, inline_message_id=inline_message_id |