Как определить message_id у сообщения бота? vk_api

Представим, что бот отправил сообщение:

vk_session.method('messages.send', {'peer_id': peer_id, 'message': message, 'random_id': 0})

Как узнать message_id этого сообщения?


Ответы (1 шт):

Автор решения: gil9red

Согласно описанию результата выполнения метода messages.send из API:

После успешного выполнения возвращает идентификатор отправленного сообщения. Если передан параметр peer_ids, возвращает массив объектов, каждый из которых содержит поля:

  • peer_id — идентификатор назначения;
  • message_id — идентификатор сообщения;
  • conversation_message_id — идентификатор сообщения в диалоге;
  • error — сообщение об ошибке, если сообщение не было доставлено получателю.

Т.е. у вас это будет так:

from vk_api.utils import get_random_id
...

message_id = vk_session.method('messages.send', {'peer_id': peer_id, 'message': message, 'random_id': get_random_id()})
→ Ссылка