Видео из 1С в Max
Апрель 2026 · Редакция «Арете-ИТ»
Чтобы ролик открылся в плеере Max, его нужно загрузить как video, а не как обычный файл.
Поддерживаются MP4, MOV, MKV и WEBM размером до 250 МБ. Сама схема та же, что у других
вложений, но загрузка и обработка обычно занимают больше времени.
Загрузка и обработка видео
При вызове
POST /uploads
с type=video Max возвращает URL и token. Адрес ведёт на видеосервер
omub.okcdn.ru; менять в нём домен, путь или query-параметры не нужно.
После загрузки сервер возвращает retval, однако это ещё не гарантирует,
что ролик немедленно готов для сообщения.
Получите двоичные данные ролика стандартными средствами платформы: из файла на сервере, хранилища значения или временного хранилища. Для больших файлов не держите несколько копий в памяти одновременно и задайте отдельный таймаут загрузочного соединения.
Процедура ОтправитьФайлВMax из
основной статьи о вложениях
собрана только из HTTPСоединение, HTTPЗапрос,
ПотокВПамяти и JSON. Для видео ей передаётся вид video.
ОтправитьФайлВMax( ТокенБота, ИдПользователя, ДвоичныеДанные, "demo.mp4", "Видео с демонстрации", "video");
Этот multipart-вариант подходит для коротких роликов: процедура собирает тело запроса в памяти. Файл, близкий к пределу 250 МБ, лучше передавать возобновляемой загрузкой и читать порциями, иначе расход памяти 1С окажется заметно больше размера самого видео.
Если POST /messages отвечает attachment.not.ready, повторите отправку
с тем же token через несколько секунд и увеличьте интервал следующей попытки.
Таймаут соединения для загрузки задавайте отдельно от коротких запросов API:
значения, достаточного для текста, может не хватить для большого ролика.
Повтор лучше выполнять отдельным фоновым или регламентным заданием. В очередь достаточно
положить token, адресата, текст и номер попытки: заново передавать 250 МБ на файловый
сервер при attachment.not.ready не требуется.
Всего в сообщении допускается до 12 изображений и видео. Если добавлена inline-клавиатура, она занимает одно место из двенадцати.
Как это выглядит в «Арете — сервер мессенджеров, Max edition»
В подсистеме прикладной вызов не зависит от файлового сервера:
Параметры = Новый Структура;
Параметры.Вставить("user_id", ИдПользователя);
Параметры.Вставить("text", "Ролик с демонстрации");
АСМ_М.ВложитьВидео(Параметры, ДвоичныеДанные, "demo.mp4");
АСМ_М.ОтправитьСообщение(Бот, Параметры);
Расширение сохраняет token по контрольной сумме, пишет обращения в журнал и повторяет отправку, если вложение ещё обрабатывается. Об изображениях подробнее в статье про фотографию, для PDF — про файл.