#
Форматы креативов
MADS Web SDK выбирает способ отображения креатива на основе поля templateGroupName из ответа ad-сервера. Паблишеру не нужно указывать формат вручную — он определяется настройками рекламного места (padId).
Этот документ описывает форматы, реально поддерживаемые SDK сегодня. По мере добавления новых форматов список будет пополняться.
#
Поддерживаемые форматы
#
video
Один видеокреатив, который воспроизводится в контейнере. Используется для классической видеорекламы.
- Aspect ratio задаётся самим креативом (обычно 16:9 или вертикальное видео).
- Звук по умолчанию выключен; включается интеракцией пользователя.
- По окончании автоматически вызывается
onCompletedи плеер убирается из DOM (вdefaultрежиме). - Внутренние fade-переходы между креативами отключены — для видео они не нужны.
#
multiformat
Последовательность из нескольких креативов (видео и/или изображений), которые проигрываются один за другим. Каждый креатив может иметь свои размеры — плеер плавно ресайзится между ними.
- Поддерживаются и
image, иvideoэлементы в одной ленте. - Длительность изображения задаётся ad-сервером (
content.duration). - Между креативами есть короткая fade-анимация (см. Размеры и адаптив про
disableAnimations). - Клик по любому креативу ведёт по
link.urlэтого креатива.
#
Поведение, общее для всех форматов
Маркировка (ОРД)
Каждый креатив, у которого ad-сервер вернул markingInfo, отображает блок «Реклама» с ERID. Блок появляется в момент ready/playing/pause и автоматически позиционируется относительно креатива.
Клики
Клик по креативу или CTA-кнопке открывает link.url в новой вкладке (window.open(url, '_blank')) и вызывает колбэк onClicked. URL валидируется — открываются только http(s)://.
Окончание
- В
defaultрежиме послеonCompletedплеер посылает родительскому окну сообщениеmads:destroyи удаляется из DOM. - В
sdkрежиме плеер ждёт следующих команд от паблишера и не уничтожается сам. - При
loop: trueплейлист крутится бесконечно (только вdefaultрежиме).
#
Что делать, если формат не отображается
Если ad-сервер вернул templateGroupName, который SDK ещё не умеет рендерить, контейнер плеера останется пустым (без ошибки). В этом случае:
- Проверьте
onError— он не сработает, потому что это не критическая ошибка. - Убедитесь, что
padIdнастроен на формат из таблицы выше. - Свяжитесь с командой Magnit Ads — возможно, для вашего места требуется обновление SDK.