LiaРазработчики

Руководства

Предложите видео за вознаграждение, проверьте на своем сервере, что оно было просмотрено этим игроком, и оплатите за каждое видео.

Страница воспроизводит видео и получает adId. Ваш сервер проверяет adId с Lia, затем выдает вознаграждение, один раз.

#В вашей странице

game.js
async function secondChance() {
  const result = await Lia.showRewardedAd({
    onState: function (state) {
      if (state === "loading") pauseGame();
    },
  });
  if (!result.watched) {
    if (result.reason === "no_ad") Lia.toast("No video right now. Try again soon.");
    return endRun();
  }
  const { ok } = await api("/api/second-chance", { adId: result.adId });
  ok ? continueRun() : endRun();
}

Предложите видео с вашей собственной кнопкой ("Посмотрите видео, чтобы продолжить"). Люди выбирают вознагражденные видео, поэтому Lia не'не ускорять их.

#На вашем сервере

server.js
app.post("/api/second-chance", async (req, res) => {
  const playerId = await playerFrom(req.body.session);
  if (!playerId) return res.status(401).end();

  let ad;
  try {
    ad = await lia("POST", "/ads/verify", { adId: req.body.adId });
  } catch {
    return res.json({ ok: false });
  }
  if (!ad.watched || ad.playerId !== playerId) return res.json({ ok: false });

  // Once per video: a second request with the same adId gets nothing more.
  const first = await db.useOnce(`ad:${ad.adId}`);
  if (!first) return res.json({ ok: false });

  await db.grantSecondChance(playerId);
  res.json({ ok: true });
});

#Оплата $LIA за видео

Если награда $LIA от вашей пул, ключ вознаграждения делает "один раз" для вас:

await lia("POST", "/rewards", { playerId, amount: 0.5, key: `ad:${ad.adId}`, reason: "Watched a video" });

#Между раундами

Между раундами используйте промежуточный экран, а не вознаграждающее видео: они'короткие и закрываемые, и никому не нужно выбирать их. Им не нужен сервер и они ничего не дают. Задавайте вопрос на каждом естественном перерыве и позволяйте Lia регулировать их (по умолчанию один раз каждые 90 секунд максимум, каждые 2nd раундов):

async function nextRound() {
  await Lia.showInterstitialAd(); // often answers "too_soon" at once, and that's fine
  startRound();
}

Храните вознаграждающие видео для того, что просит игрок, за кнопкой, которая говорит, что они получают.

Награждающий интерстициал находится между двумя: Lia предлагает его с кнопками «Посмотреть» и «Пропустить», а просмотренное видео имеет adId чтобы проверить, как вознаграждённое видео.

#Важно знать

  • /ads/verify говорит watched: true для промежуточных объявлений, которые были показаны, тоже. Только вознаграждение adIdваша страница получила от вознагражденного формата с watched: true.
  • Если видео останавливается посередине из-за проблемы на телефоне, Lia считает его просмотренным, чтобы никто не потерял вознаграждение из-за сломанного объявления.
  • Пауза вашей игры и звука на "loading"; ваша страница также слышит pause и resume вокруг видео.

Автоматически переведено. Английский — источник истины. Читать на английском

Введите, чтобы искать по каждой странице, методу и точке окончания.