Skip to content

API Reference

Методи Adsgram

init

Ініціалізує AdController, який використовується для завантаження, показу і припинення показу реклами.
Достатньо один раз ініціалізувати для одного blockId.
Якщо ви викликаєте init з тим самим blockId декілька разів, буде повернуто той самий AdController.

Синтаксис

js
const AdController = window.Adsgram.init({
  blockId: "your-block-id",
  debug: true,
  debugConsole: true,
  debugBannerType: "FullscreenMedia"
});

Параметри

blockId

Рядок з цифрами, наприклад, "123".
Унікальний ідентифікатор рекламного блоку, доступний в акаунті видавця.
Детальніше про отримання BlockId в розділі Отримати blockId.

debug опціонально

Логічне значення. Якщо true, сервер повертає тестову рекламу, а в консоль браузера виводяться детальні логи з префіксом ADSGRAM DEBUG для налагодження інтеграції.

НЕБЕЗПЕКА

Переконайтеся, що параметр встановлено в false перед випуском в production.
Тестові покази не враховуються в статистиці, а запити до Reward URL не надсилаються.

debugConsole опціонально

Логічне значення. За замовчуванням true. Працює тільки якщо параметр debug дорівнює true.
Якщо true, в консоль браузера виводяться детальні логи з префіксом ADSGRAM DEBUG LOG. Якщо false, логи в консоль не виводяться, навіть в debug-режимі.

debugBannerType опціонально

Можливі значення: "FullscreenMedia" та "RewardedVideo".
Вказує тип тестового банера. Працює тільки якщо параметр debug дорівнює true.

Повертаєме значення

AdController: об'єкт для управління рекламою.

Методи AdController

show

Завантажує і показує рекламу.

Синтаксис

js
AdController.show();
ts
const showPromise: Promise<ShowPromiseResult> = AdController.show();

Повертаєме значення

Promise, який:

  • Резолвиться, якщо користувач додивився рекламу до кінця або пропустив рекламу для Interstitial формату.
  • Реджектиться, якщо у користувача виникла помилка.

Результат промісу

ts
interface ShowPromiseResult {
  done: boolean; // true, якщо реклама додивилася до кінця, інакше false
  description: string; // опис події
  state: 'load' | 'render' | 'playing' | 'destroy'; // стан банера
  error: boolean; // true, якщо виникла помилка, інакше false
}

Приклади

Використовуючи promises API:

js
AdController.show().then((result) => {
  // Користувач додивився рекламу до кінця
  // Ваш код для нагородження користувача
}).catch((result) => {
  // Помилка або користувач пропустив рекламу
  // Ваш код на випадок помилки
})
ts
AdController.show().then((result: ShowPromiseResult) => {
  // Користувач додивився рекламу до кінця
  // Ваш код для нагородження користувача
}).catch((result: ShowPromiseResult) => {
  // Помилка або користувач пропустив рекламу
  // Ваш код на випадок помилки
})

Використання з await:

js
try {
  const showPromiseResult = await AdController.show();
  // Користувач додивився рекламу до кінця
  // Ваш код для нагородження користувача
} catch (showPromiseResult) {
  // Помилка або користувач пропустив рекламу
  // Ваш код на випадок помилки
}
ts
try {
  const showPromiseResult: ShowPromiseResult = await AdController.show();
  // Користувач додивився рекламу до кінця
  // Ваш код для нагородження користувача
} catch (showPromiseResult: ShowPromiseResult) {
  // Помилка або користувач пропустив рекламу
  // Ваш код на випадок помилки
}

Порада

Використовуйте finally для виконання дій після завершення реклами.

destroy

Припиняє показ реклами і видаляє завантажені дані.

Синтаксис

js
AdController.destroy();

Повертаєме значення

None(undefined)

Інформація

Зазвичай виклик destroy не потрібен. У разі помилки, пропуску або повного перегляду показ реклами припиняється автоматично.

addEventListener

Підписується на подію і викликає функцію зворотного виклику, якщо подія відбулася.

Синтаксис

js
AdController.addEventListener('onReward', () => {
    // Ваш код для нагородження користувача
});

Параметри

event

тип події:
ПодіяКоли виникає
onStartперший кадр банера відображений
onSkipкористувач закрив рекламу
onRewardкористувач додивився Rewarded банер до кінця
onCompleteкористувач додивився Interstitial банер або закрив його
onErrorпомилка при відтворенні або рендері банера
onBannerNotFoundбанер для показу відсутній
onNonStopShowкористувач намагається подивитися декілька реклам підряд
onTooLongSessionзанадто довга сесія, необхідно перезапустити додаток щоб отримувати рекламу

Порада

Ви можете підписатися на події onBannerNotFound, onNonStopShow або onTooLongSession, якщо ви хочете показувати свій власний alert.
Інакше відобразиться alert за замовчуванням.
Мовою сповіщення буде мова користувача або англійська 👇 alert

callback

Функція, що викликається при настанні події.

Повертаєме значення

None(undefined)

removeEventListener

Відписується від події.

Синтаксис

ts
AdController.removeEventListener('onReward', rewardFunction);

Параметри

Ті самі, що в addEventListener

Повертаєме значення

None(undefined)