В фреймворке vkbottle вы можете получить название беседы без использования токена пользователя или с использованием ключа токена сообщества.
1. Без использования токена пользователя:
```python
from vkbottle import VKError, GroupEventType
from vkbottle.bot import Bot, GroupMention, Message
bot = Bot(token="YOUR_GROUP_TOKEN")
@bot.on.message_handler(GroupEventType.MESSAGE_NEW)
async def handle_message(message: Message):
try:
conversation = await bot.api.messages.get_conversations_by_id(peer_ids=message.peer_id)
chat_title = conversation.items[0].chat_settings.title
print(f"Chat title: {chat_title}")
except VKError as e:
print(f"Error: {e}")
bot.run_polling()
```
2. С использованием ключа токена сообщества:
```python
from vkbottle import VKError, GroupEventType
from vkbottle.bot import Bot, GroupMention, Message
bot = Bot(token="YOUR_GROUP_TOKEN")
@bot.on.message_handler(GroupEventType.MESSAGE_NEW)
async def handle_message(message: Message):
try:
chat_info = await bot.api.messages.get_conversations_by_id(peer_ids=message.peer_id)
chat = await bot.api.messages.get_chat(chat_id=chat_info.items[0].chat_settings.owner_id - 2000000000)
chat_title = chat.title
print(f"Chat title: {chat_title}")
except VKError as e:
print(f"Error: {e}")
bot.run_polling()
```
Обратите внимание, что во втором варианте мы используем метод `messages.get_chat` с передачей `chat_id`, полученного из `chat_settings.owner_id`. Также необходимо учесть, что для доступа к информации о чате необходимо наличие прав доступа `messages`, иначе может возникнуть ошибка.