Zavolání Ad Serveru

Naposledy změněno ZdVo 2017/12/04 08:32
Komentáře (0) · Přílohy (0)

Pokud máte vše nastaveno (viz minulé kroky), víte jaká data potřebujete odeslat, jaké pozice kterým Ad Serverem chcete spravovat, tak jste připraveni k závěrečnému odeslání požadavku na Ad server.
Existuje více různých způsobů, jak request zaslat v závislosti na tom, jak velkou kontrolu nad requestem chcete mít, nicméně v 99% případů budete volat následující metodu:

ibbAds.tag.requestAndPlaceAds();

Takto dojde k zavolání VŠECH nastavených Ad Serverů, požaduje reklamu pro VŠECHNY nastavené Ad Sloty a umístí reklamu do příslušných pozic, jakmile reklama v odpovědi z Ad Serveru dorazí.

Jak můžete vidět, tímto jednoduchým zavoláním metody requestAndPlaceAds() s prázdným argumentem, vykonáte hodně akcí najednou.

Můžete mít větší kontrolu, jaké pozice chcete vyplnit reklamou, pokud vložíte tuto informaci do argumentu metody. Příklad níže:

ibbAds.tag.requestAndPlaceAds(adserver); // odešle požadavek na reklamu pouze pro pozice, které spadají pod 'adserver'. Čili nezavolá pozice 'adserver2'.
ibbAds.tag.requestAndPlaceAds('BbmCz'); // odešle požadavek na reklamu pouze pro pozice, které jsou spravovány ad server instancí s názvem BbmCz
ibbAds.tag.requestAndPlaceAds(sky); // odešle požadavek na reklamu pro pozice, které jsou odkazovány proměnnou s názvem sky - kód zavolá odpovídajíci ad server, tak jak je nakonfigurovaný pro pozici.  
ibbAds.tag.requestAndPlaceAds('skyscraper'); // odešle požadavek na reklamu pouze pro pozici, která je označena jako 'skyscraper' (div id="skyscraper"). Kód zavolá odpovídající Ad Server včetně position ID, tak jak je nakonfigurováno/namapováno pro pozici skyscraper

ibbAds.tag.requestAndPlaceAds(['skyscraper','bottom-right-ad-slot']); // odešle požadavek na reklamu pro více vybraných pozic z jejich odpovídajícího Ad Serveru. Je rovněž možné vložit v proměnných odkazujících na konkrétní adslot a jakoukoliv kombinaci jmen a proměnných.

Pomocí těchto volání, můžete například požádat o reklamu pro prvních 5 pozic ve stránce, pro které víte, že jsou vždy viditelné a ostatní požadavky na reklamu zaslat pro zbývající pozice až když uživatel nascrolluje stránku do určité úrovně, ke konkrétnímu bodu ve stránce. 

Můžete mít dokonce ještě větší kontrolu nad požadavky a umístění reklamy do stránky, nicméně ve většíně případů není vhodné manuálně ovlivňovat tento proces.

Pokud chcete poslat pouze požadavek na reklamy (bez umístění do jejich pozic), můžete použít zavolání této metody:

ibbAds.tag.requestAds();

Přijímá stejné argumetny jako requestAndPlaceAds volání, takže ji můžete použít jak pro vybrané ad server instance, tak i pro vybrané pozice. Protože všechna volání do Ad Serveru jsou asynchronní, při použití requestAds získáte pouze reference na "budoucí" reklamy. (reklamy, které teprve přijdou). Tohle je nutné vzít v úvahu. Proto existuje metoda nazvaná whenAdsArrive, pomocí které můžete "vzít" reklamy tak rychle, jak je Ad Server vrátí a provést s nimi co potřebujete. Níže příklad:


ibbAds.tag.requestAds().whenAdsArrive(function(ads) {
   // manipulujete s polem adů, vrácených z ad serveru
   // všimněte si, že tato funkce bude zavolána pouze jednou pro každý z nadefinovaných ad serverů, na které byl požadavek odeslán. Ad Server VŽDY něco vrátí. V případě, že nemá vhodný ad pro konkrétní pozici, vrátí prázdnou hodnotu pole.
});
V případě několikanásobného zavolání metody requestAndPlaceAds paralelně(ve stejný čas) a per pozici, například (ibbAds.tag.requestAndPlaceAds('skyscraper'); ibbAds.tag.requestAndPlaceAds('square'); ibbAds.tag.requestAndPlaceAds('leaderboard'); ...) nebude fungovat konkurence a surround ad. Rovněž mohou nastat problémy s frekvencí, jelikož v Ad Server se frekvence zapisuje do cookie a cookie je závislá na doméně showitu. Čili poslední paralelní showit request přepíše  frekvenční cookie  (informace o frekvenci je přepsána/vymazána). Doporučujeme tedy volat pozice, které se mají zobrazit najednou při prvním načtení stránky, v rámci jednoho showit requestu. Pokud je nutné volat showit request per pozici, tak poté je volat sekvenčně a ne paralelně.
Pamatujte, že každý odeslaný request/požadavek na reklamu je považován jako imprese a bude fakturován dle platného ceníku!!!

Umístění reklam do pozic

Nastává automaticky, pokud požijete standardní requestAndPlaceAds volání.
Pokud potřebujete umístit reklamy do jejich pozic manuálně (z nějakého vámi důležitého důvodu), můžete zavolat:
ibbAds.tag.placeAds(ads); // pole reklamních definicí, musí být předáno argumentem

Všimněte si, že každá reklamní definice již obsahuje informace o tom, do které pozice by měla být umístěna. Jakýkoliv možný předešlý obsah pozic je vymazán před umístěním nové reklamy do pozic/e.

Rovněž můžete úplně přeskočit zavolání Ad Serveru a umístit reklamy vytvořené přímo vámi (například z testovacích/debugovaích důvodů). V takovém případě musíte prvně vytvořit definici reklamy a pak ji umístit. Například tímto způsobem: 

var ad = ibbAds.tag.createAd(1); // argument is ad id
ad.setSlotMarkup('skyscraper', '<div>some html or script to be shown in skyscraper slot</div>');
ibbAds.tag.placeAds([ad]); // you can place multiple ads at once if you wish

Vyčištění pozic

Pozice jsou čištěny automaticky před každou novou reklamou, která má být umístěna do pozice.
Pokud však potřebujete z nějakého vašeho důvodu pozice vyčistit od předešlého reklamního obsahu manuálně, můžete zavolat: 

ibbAds.tag.clearSlots(); // přijímá stejné argumenty jako requestAndPlaceAds, takže můžete vyčistit jakoukouliv skupinu pozic, které potřebujete, samostatně.

Znovunačtení reklamy do pozice

Můžete znovunačíst jakoukoliv reklamu v pozici samostatně opakovaným zavoláním requestAndPlaceAds popisovaným výše.

Značky:
Vytvořeno ZdVo 2017/03/21 10:19

Navigace


This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 4.0 - Documentation