diff options
| author | huker667 <huker@tuta.io> | 2026-05-24 17:44:26 +0300 |
|---|---|---|
| committer | huker667 <huker@tuta.io> | 2026-05-24 17:44:26 +0300 |
| commit | ff615e434e3fe947781fae7b7bff19ad59b06ba3 (patch) | |
| tree | 41e1b4e7a763848f5e0ca1bee11e9634b2ad17b3 /main.py | |
| parent | 7d1ea4dc9abecd658cdb7231162baeb0d2d7e608 (diff) | |
| download | uzbekgpt-ff615e434e3fe947781fae7b7bff19ad59b06ba3.tar.gz uzbekgpt-ff615e434e3fe947781fae7b7bff19ad59b06ba3.tar.bz2 uzbekgpt-ff615e434e3fe947781fae7b7bff19ad59b06ba3.zip | |
added polls
Diffstat (limited to 'main.py')
| -rw-r--r-- | main.py | 40 |
1 files changed, 37 insertions, 3 deletions
@@ -135,7 +135,19 @@ async def guest_middleware(handler, event, data): replied_text = message.reply_to_message.text or message.reply_to_message.caption or None else: replied_text = None + prompt = "" + + if replied and replied.poll: + poll = replied.poll + if poll.allows_multiple_answers: + prompt += "<множественный " + else: + prompt += "<одиночный " + prompt += f"опрос в ответе: {poll.question}>\n" + for option in poll.options: + prompt += f"- {option.text}\n" + prompt += "</опрос в ответе>" if replied and replied.photo and IMAGE_MODEL != "": try: photo = replied.photo[-1] @@ -208,9 +220,9 @@ async def guest_middleware(handler, event, data): return return await handler(event, data) + - -@router.message(F.content_type.in_({"text", "photo", "document"})) +@router.message(F.content_type.in_({"text", "photo", "document", "poll"})) async def text_handler(message: Message): chat_type = message.sender_chat.type if message.sender_chat else "" user_id = message.sender_chat.id if message.sender_chat else message.from_user.id @@ -250,6 +262,28 @@ async def text_handler(message: Message): except TelegramForbiddenError: return + if replied and replied.poll: + poll = replied.poll + if poll.allows_multiple_answers: + prompt += "<множественный " + else: + prompt += "<одиночный " + prompt += f"опрос в ответе: {poll.question}>\n" + for option in poll.options: + prompt += f"- {option.text}\n" + prompt += "</опрос в ответе>" + + if message.poll: + poll = message.poll + if poll.allows_multiple_answers: + prompt += "<множественный " + else: + prompt += "<одиночный " + prompt += f"опрос: {poll.question}>\n" + for option in poll.options: + prompt += f"- {option.text}\n" + prompt += "</опрос>" + if message.document: if message.document.file_size > 4096: await message.reply("слишком много данных не хочу отвечать☝️☝️") @@ -502,7 +536,7 @@ async def main(): "callback_query", "guest_message", "inline_query", - "chosen_inline_result" + "chosen_inline_result", ], ) |