Добавлен ответ на сообщение боту без текста.

Исправлен подсчет сообщений без текста в VK.
This commit is contained in:
Kirill Kirilenko 2026-01-19 16:03:42 +03:00
parent bb16256ecc
commit 707eef30a5
3 changed files with 11 additions and 3 deletions

View file

@ -2,6 +2,7 @@ MESSAGE_CHAT_NOT_ACTIVE = 'Извините, но я пока не работа
MESSAGE_PERMISSION_DENIED = 'Извините, но о таком меня может попросить только администратор чата.'
MESSAGE_NEED_REPLY = 'Извините, но эту команду нужно вызывать в ответ на текстовое сообщение.'
MESSAGE_NEED_REPLY_OR_FORWARD = 'Извините, но эту команду нужно вызывать в ответ на текстовое сообщение или с пересылкой текстовых сообщений.'
MESSAGE_NOT_TEXT = 'Извините, но я понимаю только текст.'
MESSAGE_DEFAULT_RULES = 'Правила не установлены. Просто ведите себя хорошо.'
MESSAGE_DEFAULT_CHECK_RULES = 'Правила чата не установлены. Проверка невозможна.'
MESSAGE_DEFAULT_GREETING_JOIN = 'Добро пожаловать, {name}!'

View file

@ -8,6 +8,7 @@ from aiogram.enums.content_type import ContentType
import ai_agent
import utils
from messages import *
import tg.tg_database as database
from tg.utils import get_user_name_for_ai
@ -75,6 +76,10 @@ async def any_message_handler(message: Message):
ai_agent.Message(user_name=await get_user_name_for_ai(message.reply_to_message.from_user),
text=message.reply_to_message.text)]
if ai_message.text is None:
await message.reply(MESSAGE_NOT_TEXT)
return
ai_message.user_name = await get_user_name_for_ai(message.from_user)
chat_prompt = chat['ai_prompt']

View file

@ -8,6 +8,7 @@ from vkbottle_types.codegen.objects import GroupsGroup
import ai_agent
import utils
from messages import *
import vk.vk_database as database
from vk.utils import get_user_name_for_ai
@ -25,9 +26,6 @@ async def any_message_handler(message: Message):
if chat['active'] == 0:
return
if len(message.text) == 0:
return
# Игнорировать ботов
if message.from_id < 0:
return
@ -75,6 +73,10 @@ async def any_message_handler(message: Message):
ai_agent.Message(user_name=await get_user_name_for_ai(message.ctx_api, fwd_message.from_id),
text=fwd_message.text))
if len(ai_message.text) == 0:
await message.reply(MESSAGE_NOT_TEXT)
return
ai_message.user_name = await get_user_name_for_ai(message.ctx_api, message.from_id)
chat_prompt = chat['ai_prompt']