Задать вопрос
@Igor_Merg

Messages.getConversations выдает только беседы созданные сообществом а другие беседы не видит, как исправить?

Мне нужно получить кол-во всех бесед, в которых добавлен бот, посоветовали messages.getConversations, но он выдает только беседы, которые есть в сообществе. Может какой - то ключ надо прописать? Помогите пж
Кусочек кода:
if event_chat.type == VkBotEventType.WALL_POST_NEW:
        besedi = (getting_api.messages.getConversations())['items']
        for i in range(len(besedi)):
            print(i)
            post_otpravka  = ((besedi[i]['conversation'])['peer'])['local_id']
            id_ = event_chat.object['id']
            owner_id_ = event_chat.group_id
            wall_post = f'wall-{owner_id_}_{id_}'
            authorize.method('messages.send', {'peer_id': 2000000000 + post_otpravka, 'message': 'Новый пост в группе', 'attachment': wall_post,'random_id': get_random_id()})
  • Вопрос задан
  • 911 просмотров
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 2
alexk111
@alexk111
Автор Ботодрома (автоматизация Telegram, VK и др.)
Через вызов `Messages.getConversations` беседы не получить.

Ловите id'ы бесед в обработчике событий. В оповещении о новом сообщении ВК передает объект сообщения со свойством `peer_id` (это id беседы) - сохраняйте его у себя и используйте в своей логике.

Если нужно по всем беседам - можно поочередным перебором всех peer_id, начиная с 2000000000 до первой ошибки об отсутствии доступа.
Ответ написан
Комментировать
SoreMix
@SoreMix Куратор тега Python
yellow
Нельзя такое сделать
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы