Open Measurement SDK (OM SDK)
Верификаторы, измерители — это стороннее по отношению к видеорекламе ПО, которое определяет — была ли реклама показана, и была ли возможность у пользователя ее увидеть. Верификаторами пользуются рекламодатели, чтобы убедиться в том, что сервис, показывающий рекламу, делает все честно.
OM SDK предоставляет стандартизированный подход к работе со сторонними кодами верификаторов, что снижает затраты на разработку, поддержку и валидацию кастомных интеграций. Изначально OM SDK разрабатывался для мобильных устройств, но в декабре 2020 года была разработана версия для Web-видеорекламы.
OM SDK позиционируется как альтернатива VPAID для целей верификации, имеет глубокий доступ к геометрии экрана устройства и отслеживает:
- Viewability (видимость) — находится ли реклама на экране. По стандарту MRC баннер считается увиденным, если 50% его пикселей находились на экране не менее 1 секунды, для видео — 2 секунды.
- Obstructions (перекрытия) — OM SDK видит, если поверх баннера появилось системное окно (например, «Батарея садится») или прозрачный невидимый слой (мошенничество).
- Video Viewability — отслеживает, был ли включен звук (Volume) при показе видео, ставили ли его на паузу, было ли устройство заблокировано во время воспроизведения.
Как работает OM SDK
OM SDK состоит из двух частей (js-библиотек) — сервисной и клиентской. Сервисная часть представляет собой код, который выполняет работу по замеру видеорекламы — следит за геометрией, отлавливает различные события, и т.п. Клиентская часть предоставляет интегратору API по стандарту OMID (Open Measurement Interface Definition).
С помощью OMID инициализируется и запускается верификация, опосредованно взаимодействуя с сервисной частью. Сервисная часть получает скрипт стороннего верификатора, инициализирует его и взаимодействует через определенное API с ним.
Как передается
OM SDK передается в Bid Request через массив api (Frameworks/API, поддерживаемые рекламным местом). Идентификатор для OMID — 7.
Пример Bid Request (нативная реклама или баннер):
{
"id": "req-om-123",
"imp": [
{
"id": "imp-1",
"banner": {
"w": 320,
"h": 50,
"api": [ 3, 7 ]
}
}
],
"app": {
"bundle": "com.news.app"
}
}
Здесь api: [3, 7] означает, что поддерживается MRAID 1.0 (3) и OMID 1.0 (7).
Как Yandex DSP отвечает верификацией в Bid Response
Для баннеров и нативной рекламы (в HTML) — скрипт верификатора вставляется прямо в HTML-код внутри поля adm. Когда WebView внутри приложения отрендерит этот HTML, скрипт IAS найдет OM SDK в оперативной памяти телефона и начнет получать от него данные.
Для видеорекламы (VAST) — в стандарте VAST 4.x (позднее был добавлен и для 3.0 в виде расширения) появился специальный узел <AdVerifications>. В нем передаются ссылки на скрипты измерений.
Как это работает:
- Плеер приложения считывает VAST.
- Видит тег
<AdVerifications>и атрибутapiFramework="omid". - Плеер скачивает JS-скрипт по ссылке внутри
<JavaScriptResource>(скрипт IAS). - Плеер запускает этот скрипт и знакомит его с нативным OM SDK устройства.
- Пока играет видео, OM SDK бесперебойно отправляет скрипту данные (звук, видимость экрана).
- Если что-то пошло не так (например, плеер не поддерживает OMID, хотя в OpenRTB заявлено обратное), запускается пиксель
verificationNotExecuted, чтобы рекламодатель знал, почему нет статистики.