Реклама

Подключение JS скриптов в тег <head>

IMA SDK (для показа рекламных материалов в стандартах VAST/VPAID):
<script src="//imasdk.googleapis.com/js/sdkloader/ima3.js"></script>

Настройка рекламы

Метод По умолчанию Описание
set-prerolls Ссылка на рекламный блок pre-roll
set-midrolls Ссылка на рекламный блок mid-roll
set-postrolls Ссылка на рекламный блок post-roll
set-midrolls-period - Ссылка на рекламный блок mid-roll
max-prerolls-impressions 2 Максимальное количество impression для pre-roll*
max-midrolls-impressions 2 Максимальное количество impression для mid-roll*
max-postrolls-impressions 2 Максимальное количество impression для post-roll*

Коды ошибок рекламы

Коды ошибок рекламы доступны в развернутом виде по типам устройств и id креатива только в личном кабинете, в разделе статистика > ошибки.

Код Описание
100 Ошибка синтаксического анализа XML
101 Ошибка при проверке схемы VAST
102 Версия VAST ответа не поддерживается
200 Ошибка трафика. Тип полученного проигрывателем объявления не соответствует ожидаемому и/или проигрыватель не может показать его
201 Линейность не совпадает с указанной в проигрывателе
202 Продолжительность объявления отличается от указанной в проигрывателе
203 Проигрывателю требуется объявление другого размера
300 Общая ошибка Wrapper
301 Тайм-аут URI VAST, указанного в текущем или одном из последующих элементов Wrapper. Так обозначаются ошибки запросов, например недействительный или недоступный URI, тайм-аут запроса URI, а также ошибки, связанные с безопасностью или запросами URI VAST
302 Достигнут предел, указанный в проигрывателе. Получено слишком много ответов с элементами Wrapper, не содержащих ответ InLine
303 Ответ VAST не содержит объявлений и получен после одного или нескольких объявлений VAST Wrapper. Кроме того, так обозначаются пустые ответы VAST от резервного объявления
400 Общая ошибка линейного объявления. Проигрыватель не может его показать
401 Файл не найден. Не удалось обнаружить параметр Linear/MediaFile в URI
402 Тайм-аут URI элемента MediaFile
403 Не удалось найти элемент MediaFile с указанными атрибутами, поддерживаемый этим проигрывателем
405 Проблема с показом элемента MediaFile
500 Общая ошибка элемента NonLinearAds
501 Не удается показать нелинейное объявление, потому что оно не помещается в область показа (объявление слишком велико)
502 Не удалось получить ресурс NonLinearAds или NonLinear
503 Не удалось найти нелинейный ресурс поддерживаемого типа
600 Общая ошибка элемента CompanionAds
601 Не удалось показать сопутствующее объявление, потому что оно не помещается в область показа (то есть для него не хватает места)
602 Не удается показать необходимое сопутствующее объявление
603 Не удалось получить ресурс CompanionAds или Companion
604 Не удалось найти ресурс Companion поддерживаемого типа
900 Неизвестная ошибка
901 Общая ошибка VPAID

Коды ошибок VMAP

(доступны в консоли режим debug и в личном кабинете)

Код Описание
900 Неизвестная ошибка
1000 Ошибка VMAP схемы
1001 Версия VMAP ответа не поддерживается
1002 Ошибка синтаксического анализа VMAP
1003 AdBreak тип не поддерживается
1004 Общее объявление вернуло ошибку документа
1005 Тип шаблона объявления не поддерживается
1006 Объявление вернуло ошибку извлечения или анализа документа
1007 Объявление вернуло таймаут ответа
1008 Объявление вернуло ошибку документа (HTTP сервер ответил с кодом ошибки)
1009 Ответ не содержит рекламных объявлений

Макросы

Макрос Описание
%%random%% Генерирует случайное целое число от 0 до 1 000 000 000
%%url%% URL текущей страницы
%%domain%% Доменное имя
%%referrer%% URL страницы, которая привела зрителя к текущему плееру
%%timestamp%% Текущее время в формате YYYY-DD-MM HH:MM

Переопределение функции плеера, которая выполняется, когда ни в одном из pre-roll не наступило событие impression:

player.noPrerrols = function (){
    console.info('No prerrols');
}

Переопределение функции плеера, которая выполняется при наступлении события impression в каждой рекламе:

player.onImpression = function (){
    console.info('Ad impression');
}

Переопределение функции плеера, которая выполняется, когда начинает играть главный контент:

player.contentStart = function (){
    console.info('Content start');
}

* Максимальное количество рекламных объявлений, которые будут показаны в каждом наборе. Например, если 'max-prerolls-impressions' = '3' и вы подключили 5 pre-roll – система будет воспроизводить рекламные ролики последовательно. Но максимальное количество которое будет показано – 3. Если, один из vast вернул ошибку – он пропускается.

 

Пример подключения плеера с рекламой

<head>
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <script src="//cdn3.74272747.com/player/ipa-player.js"></script>
    <script src="//imasdk.googleapis.com/js/sdkloader/ima3.js"></script>
</head>
<body>
<div id="player-holder"></div>
    <script>
        var player = {};
        function domReady( f ) {
            /in/.test(document.readyState) ? setTimeout('domReady(' + f + ')', 9) : f()
        }
        domReady(function () {
            player = new Player({
                'player-id' : 'id',
                'debug' : 'true',
                'width': '640',
                'height' : '480',
                'autoplay' : 'true',
                'btn-play-pause' : 'true',
                'btn-stop' : 'true',
                'btn-fullscreen' : 'true',
                'btn-prev-next' : 'true',
                'btn-share' : 'true',
                'btn-vk-share' : 'true',
                'btn-twitter-share' : 'true',
                'btn-facebook-share' : 'true',
                'btn-google-share' : 'true',
                'btn-linkedin-share' : 'true',
                'quality' : 'true',
                'volume' : 'true',
                'timer' : 'true',
                'timeline' : 'true',
                'content-volume' : '70',
                'ad-volume' : '30',
                'ad-load-timeout' : '15000',
                'div-id' : 'player-holder',
                'iframe-version' : 'false',
                'title' : 'My video title',
                'anotation' : 'My annotation text',
                'ad-pause-after-click' : 'true',
                'default-quality-index' : '0',
                'poster' : '//mySite.com/myPoster.jpg',
                'content' : {
                    'hls' : '//mySite.com/myHLSVideo.m3u8',
                },
                'cuepoint' : {
                    '0' : {
                        'start' : '00:00:10',
                        'end' : '00:01:00',
                        'html' : '<div style="color:white; text-align:center; width: 100px; height: 25px; vertical-align: middle; background: #2d3c50">CUEPOINT1</div>',
                        'top' : '100',
                        'left' : '10',
                    },
                    '1' : {
                        'start' : '00:00:40',
                        'end' : '00:01:00',
                        'html' : '<div style="color:white; text-align:center; width: 100px; height: 25px; vertical-align: middle; background: #2d3c50">CUEPOINT2</div>',
                        'right' : '100',
                        'bottom' : '40',
                    }
                },
                'set-prerolls' : [
                    '//mySite.com/myPreroll1',
                    '//mySite.com/myPreroll2',
                    ...
                    '//mySite.com/myPrerolln'
                ],
                'set-midrolls' : {
                    '00:00:10.000' : '//mySite.com/myMidroll1',
                    '00:00:20.000' : '//mySite.com/myMidroll2'
                },
                'set-postrolls' : [
                    '//mySite.com/myPostroll1'
                ],
                'set-midrolls-period' : [
                    [
                        '//mySite.com/myMidroll-period1',
                        '10', // seconds
                        '30' // frequency
                    ],
                    [
                        '//mySite.com/myMidroll-period2',
                        '300', // seconds
                        '7' // frequency
                    ]
                ]
                'max-prerolls-impressions' : '2',
                'max-midrolls-impressions' : '2',
                'max-postrolls-impressions' : '2',
                'key' : 'my_key_123456789'
            });
        });
    </script>
</body>

Пример HTML5 плеера с рекламой