messages

messages.getLongPollHistory

Возвращает обновления в личных сообщениях пользователя.

Этот метод можно вызвать с ключом доступа пользователя, полученным в Standalone-приложении через Implicit Flow.

Требуются права доступа: messages.

Этот метод можно вызвать с ключом доступа сообщества.

Требуются права доступа: messages.

Параметры

ts

string

Последнее значение параметра ts, полученное от Long Poll сервера или с помощью метода messages.getLongPollServer.

pts

string

Последнее значение параметра new_pts, полученное от Long Poll сервера, используется для получения действий, которые хранятся всегда.

preview_length

string

Количество символов, по которому нужно обрезать сообщение. Укажите 0, если вы не хотите обрезать сообщение. (по умолчанию сообщения не обрезаются).

onlines

string

1 — возвращать в числе прочих события 8 и 9 (пользователь стал онлайн/оффлайн). Учитывается только при использовании ts.

fields

string

Список дополнительных полей профилей, которые необходимо вернуть. См. подробное описание. Доступные значения:

  • about,
  • activities,
  • bdate,
  • books,
  • can_post,
  • can_see_all_posts,
  • can_see_audio,
  • can_write_private_message,
  • career,
  • city,
  • common_count,
  • connections,
  • contacts,
  • counters,
  • country,
  • domain,
  • education,
  • friend_status,
  • games,
  • has_mobile,
  • interests,
  • last_seen,
  • maiden_name,
  • military,
  • movies,
  • music,
  • occupation,
  • online,
  • online_mobile,
  • personal,
  • photo_100,
  • photo_200,
  • photo_200_orig,
  • photo_400_orig,
  • photo_50,
  • photo_id,
  • photo_max,
  • photo_max_orig,
  • quotes,
  • relation,
  • relatives,
  • schools,
  • screen_name,
  • sex,
  • site,
  • status,
  • timezone,
  • tv,
  • universities,
events_limit

string

Лимит по количеству всех событий в истории. Обратите внимание, параметры events_limit и msgs_limit применяются совместно. Число результатов в ответе ограничивается первым достигнутым лимитом.

msgs_limit

string

Лимит по количеству событий с сообщениями в истории. Обратите внимание, параметры events_limit и msgs_limit применяются совместно. Число результатов в ответе ограничивается первым достигнутым лимитом.

max_msg_id

string

Максимальный идентификатор сообщения среди уже имеющихся в локальной копии. Необходимо учитывать как сообщения, полученные через методы API (например messages.getDialogs, messages.getHistory), так и данные, полученные из Long Poll сервера (события с кодом 4).

group_id

string

Идентификатор сообщества (для сообщений сообщества с ключом доступа пользователя).

lp_version

string

Версия Long Poll.

last_n

string

credentials

string

extended

string

Результат

Возвращает объект, который содержит поля history, messages, а также groups — массив объектов сообществ и profiles — массив объектов пользователей. Поле history представляет из себя массив, аналогичный полю updates, получаемому от Long Poll сервера, за некоторыми исключениями: для событий с кодом 4 (добавление нового сообщения) отсутствуют все поля, кроме первых трёх, а также отсутствуют события с кодами 8, 9 (друг появился/пропал из сети) и 61, 62 (набор текста в диалоге/беседе). Поле messages представляет из себя массив личных сообщений – объектов message, которые встречались среди событий с кодом 4 (добавление нового сообщения) из поля history. Каждый объект message содержит набор полей, описание которых доступно здесь. Первый элемент массива представляет собой общее количество сообщений.

Ограничения

В случае, если ts слишком старый (больше суток), а max_msg_id не передан, метод может вернуть ошибку 10 (Internal server error).

Если количество событий превышает значение events_limit или количество событий с сообщениями превышает значение msgs_limit, ответ содержит дополнительное поле more со значением 1 — это означает, что нужно запросить оставшиеся данные с помощью запроса с параметром max_msg_id. Обратите внимание, что параметры events_limit и msgs_limit применяются совместно — число объектов в результате не превышает значения меньшего из этих параметров.

Ошибки с кодами 907 и 908 означают, что нужно получить новое значение pts (ts) и вызвать метод повторно с новыми значениями, поскольку данных для переданных значений не существует.

Коды ошибок

36
Method execution was interrupted due to timeout
907
Value of ts or pts is too old
908
Value of ts or pts is too new
927
Chat does not exist

В ходе выполнения могут произойти общие ошибки.