Aiogram не отображает упомянутого пользователя в entities
я разрабатываю телеграм бота на aiogram и столкнулся с проблемой: у меня есть команда, которая принимает такие параметры: сама команда
@username
(опциональный параметр и если его нет, то будет использоваться id отправителя сообщения) название предмета, который хочет купить пользователь
. Проблема заключается в том, что мне нужно получить из этого @username
id пользователя.
В целом функция выглядит так:
@dp.message(Command("buy"))
@UsOper.public
async def buy_item(message: Message):
try:
text_words = message.text.split()
print(message.entities)
if len(text_words) == 3:
for entity in message.entities:
if entity.type == 'mention':
user_id = entity.user.id
item_title = text_words[2]
elif len(text_words) == 2:
item_title = text_words[1]
user_id = message.from_user.id
await AssortOper.buy_item(item_title, user_id, message.chat.id)
await message.reply(f"Предмет {item_title} куплен!")
except Exception as ex:
print(ex, "__buy_item")
почему-то message.entities
при упоминании пользователя = [MessageEntity(type='bot_command', offset=0, length=4, url=None, user=None, language=None, custom_emoji_id=None), MessageEntity(type='mention', offset=5, length=8, url=None, user=None, language=None, custom_emoji_id=None)].
С чем связана такая проблема? я же, вроде, всё делаю корректно. (заранее спасибо)