Message

Объект содержит информацию о сообщении
Поля объекта
| Поле | Тип | Описание |
sender | object | Пользователь, отправивший сообщение |
recipient | object | Получатель сообщения. Может быть пользователем или чатом |
timestamp | integer | Время создания сообщения в формате Unix-time |
linked_message | object | Пересланное или ответное сообщение |
body | object | Содержимое сообщения |
stat | object | Статистика сообщения. Возвращается только для постов в каналах |
url | string | Публичная ссылка на пост в канале. Отсутствует для диалогов и групповых чатов |
Поля объекта Recipient
| Поле | Тип | Описание |
chat_id | integer | ID чата |
Chat_type | string | Тип чата |
user_id | integer | ID пользователя, если сообщение было отправлено пользователю |
Поля объекта LinkedMessage
| Поле | Тип | Описание |
type | string | Тип связанного сообщения (forward, reply) |
sender | object | Пользователь, отправивший сообщение |
chat_id | integer | Чат, в котором сообщение было изначально опубликовано |
message | object | Схема, представляющая тело сообщения |
Поля объекта MessageBody
| Поле | Тип | Описание |
mid | string | Уникальный ID сообщения |
seq | integer | ID последовательности сообщения в чате |
text | string | Текст сообщения |
attachments | array | Вложения сообщения |
markup | object | Разметка текста сообщения |
Поля объекта MessageStat
| Поле | Тип | Описание |
views | integer | Количество пользователей, которые увидели пост в канале. Просмотр засчитывается, когда пост попадает в область видимости экрана |
Поля объекта MarkupElement
| Поле | Тип | Описание |
type | string | Тип элемента разметки |
from | integer | Индекс начала элемента разметки в тексте. Нумерация с нуля |
length | integer | Длина элемента разметки |
Поля объекта Attachments
| Поле | Тип | Описание |
type | string | Тип вложения: image, video, audio, file, sticker, contact, inline_keyboard, share, location. |
payload | object | PhotoAttachmentPayload, MediaAttachmentPayload, FileAttachmentPayload, StickerAttachmentPayload, ContactAttachmentPayload, Keyboard, ShareAttachmentPayload |
thumbnail | object | Миниатюра видео. Также содержит поле url с URL изображения для video |
width | integer | Ширина видео для video |
height | integer | Высота видео для video |
duration | integer | Длина видео в секундах для video |
transcription | integer | Аудио транскрипция для audio |
filename | string | Имя загруженного файла для file |
size | integer | Размер файла в байтах для file |
width | integer | Ширина стикера для sticker |
height | integer | Высота стикера для sticker |
title | string | Заголовок предпросмотра ссылки для share |
description | string | Описание предпросмотра ссылки для share |
image_url | string | Изображение предпросмотра ссылки для share |
Поля объекта Attachment
| Поле | Тип | Описание |
type | string | Тип вложения: image, video, audio, file, sticker, contact, inline_keyboard, share, location. |
payload | object | Полезная нагрузка вложения. Набор полей зависит от значения type (см. таблицу ниже). Отсутствует для типа location. |
latitude | integer | Широта. Используется только для типа location. |
longitude | integer | Долгота. Используется только для типа location. |
Спецификации объектов payload
PhotoAttachmentPayload
| Поле | Тип | Описание |
photo_id | integer | Уникальный ID загруженного изображения. |
token | string | Токен для повторного использования файла. |
url | string | Прямой URL изображения. |
VideoAttachmentPayload
| Поле | Тип | Описание |
url | string | URL видеофайла. |
token | string | Токен для повторного использования файла. |
thumbnail | string | URL миниатюры (превью) видео. |
width | integer | Ширина видео. |
height | integer | Высота видео. |
duration | integer | Длительность видео в секундах. |
AudioAttachmentPayload
| Поле | Тип | Описание |
url | string | URL аудиофайла. |
token | string | Токен для повторного использования файла. |
transcription | string | Текст расшифровки аудио (транскрипция). |
FileAttachmentPayload
| Поле | Тип | Описание |
url | string | URL загруженного файла. |
token | string | Токен для повторного использования файла. |
filename | string | Имя файла (включая расширение). |
size | integer | Размер файла в байтах. |
StickerAttachmentPayload
| Поле | Тип | Описание |
url | string | URL файла стикера. |
code | string | Уникальный код/идентификатор стикера. |
width | integer | Ширина стикера. |
height | integer | Высота стикера. |
| Поле | Тип | Описание |
name | string | Имя контакта. |
contact_id | integer | Идентификатор контакта в системе. |
vcf_info | string | Полная информация о контакте в формате VCF (vCard) |
vcf_phone | string | Номер телефона, извлеченный из VCF. |
ShareAttachmentPayload
| Поле | Тип | Описание |
url | string | Ссылка, которой делятся. |
token | string | Токен вложения. |
title | string | Заголовок предпросмотра ссылки. |
description | string | Описание предпросмотра ссылки. |
image_url | string | URL картинки для предпросмотра ссылки. |
Keyboard
| Поле | Тип | Описание |
buttons | array | Двумерный массив объектов KeyboardButton, формирующий сетку кнопок. |
| Поле | Тип | Описание |
type | string | Принимает значения callback, link, request_geo_location, request_contact, open_app, message. |
text | string | Текст кнопки (от 1 до 128 символов). |
payload | string | Токен кнопки (до 1024 символов). Используется для типа callback. |
url | string | Ссылка для перехода. Используется для типа link. |
quick | boolean | Если true, отправляет геолокацию без подтверждения пользователя. Используется для request_geo_location. |
web_app | string | Публичное имя (username) бота или ссылка на него для запуска мини-приложения. Используется для open_app. |
contact_id | integer | Идентификатор контакта. |
Пример объекта
{
"sender": {
"user_id": 0,
"first_name": "string",
"last_name": "string",
"username": "string",
"is_bot": true,
"last_activity_time": 0,
"name": "string"
},
"recipient": {
"chat_id": 0,
"chat_type": "chat",
"user_id": 0
},
"timestamp": 0,
"link": {
"type": "forward",
"sender": {
"user_id": 0,
"first_name": "string",
"last_name": "string",
"username": "string",
"is_bot": true,
"last_activity_time": 0,
"name": "string"
},
"chat_id": 0,
"message": {
"mid": "string",
"seq": 0,
"text": "string",
"attachments": [{
"type": "image",
"payload": {
"photo_id": 0,
"token": "string",
"url": "string"
}
}],
"markup": [{
"type": "strong",
"from": 0,
"length": 0
}]
}
},
"body": {
"mid": "string",
"seq": 0,
"text": "string",
"attachments": [{
"type": "image",
"payload": {
"photo_id": 0,
"token": "string",
"url": "string"
}
}],
"markup": [{
"type": "strong",
"from": 0,
"length": 0
}]
},
"stat": {
"views": 0
},
"url": "string"
}