Я использовал метод users.get() и в нем должна хранится информация о пользователе (имя, фамилия, адишник, короткое имя и тд) мне нужно отправить короткое имя пользователя, но когда я пытаюсь это сделать у меня выводит None, а если я хочу вывести просто id то все хорошо получатся, но он получается не кликабельный, мне нужен кликабельный
Т.е либо мне нужно сделать кликабельный id, либо короткое имя
И еще вопрос, когда боту присылают сообщение с ошибкой и плюс какое либо вложение (фото, аудио, документ), то он пересылает только один текст, а фото, документы нет. Как мне это исправить?
Вот мой код
from vkbottle.bot import Bot, Message
from vkbottle import Keyboard, KeyboardButtonColor, \
Text, OpenLink, Location, EMPTY_KEYBOARD
from vkbottle_types import BaseStateGroup
from vkbottle import CtxStorage
bot = Bot(token="")
ctx = CtxStorage()
class RegData(BaseStateGroup):
OSHY = 0
@bot.on.message(lev="Ошибка")
async def oshi_handler(message: Message):
keyboard = Keyboard(one_time=True).add(Text("Назад в меню", {"cmd": "menu"}))
await message.answer("❌ Это форма для отправки ошибок, багов, проблем, предложений и тд.\n\n\
❗ Подробно опиши ошибку, с которой ты столкнулся.\n\
Лучше чтобы был скрин", keyboard=keyboard)
await bot.state_dispenser.set(message.peer_id, RegData.OSHY)
return "Что то там...1"
@bot.on.message(state=RegData.OSHY)
async def oshi_handler(message: Message):
userq = await bot.api.users.get(message.from_id)
ctx.set("oshy", message.text)
txtq = ctx.get("oshy")
await bot.api.messages.send(peer_id=291080599, message=f"Новая ошибка от {userq[0].first_name} {userq[0].last_name} Vkid: {userq[0].id}: \n{txtq}", random_id=0) #вот тут domain должен вывести короткое имя, но выводит None, а если я пишу id то все работает
return "Спасибо за обнаружение ошибки.."
@bot.on.message()
async def MessagesLongpollParams(message: Message):
keyboard = Keyboard(one_time=True)
keyboard.add(Text("Меню", {"cmd": "menu"}), color=KeyboardButtonColor.NEGATIVE)
await message.answer("Я тебя не понимаю.\n\n Перейди в меню и выбери из пунктов, что ты хочешь узнать.", keyboard=keyboard)
bot.run_forever()