Az ügyféloldali videómegvalósítással ellentétben, ahol a videóstream és -hirdetések lekérése egymástól függetlenül történik, a Dinamikus hirdetésbeillesztéssel (Dynamic Ad Insertion, DAI) használt szerveroldali megvalósítás csak egy streamet kér le, amelyben a hirdetések dinamikusan belefűződnek a videótartalomba. Szerverhiba esetén a streamet letilthatja a rendszer, ami nem csak rossz felhasználói élményt, hanem bevételkiesést is eredményezhet.
Az Ad Manager DAI biztosítja a HTTP-hibákat a stream létrehozásakor és a stream futása közben. Lehetővé teszi tartalék stream megadását arra az esetre, ha nem érkezik érvényes választ a szervertől.
Stream létrehozásakor észlelt HTTP-hibák kezelése
Hibatípus | Javaslat |
---|---|
4XX hibák (kivéve a 429-et) |
A 4XX típusú HTTP-hibák esetén ne térjen vissza a nyers streamekhez, mivel ezekben az esetekben az ügyfél valószínűleg hibát észlelt. Győződjön meg róla, hogy a szervernek küldött kérelme helyes, és tartalmazza az összes szükséges paramétert. |
429-es vagy 5XX hiba | 429-es vagy 5XX típusú HTTP-hibák esetén vissza kell térnie a nyers tartalék streamhez, bevételszerzés nélkül. Ezek a hibák az IMA SDK-ban megfoghatók a hibakezelővel, az alapértelmezett stream pedig lecserélhető a tartalék streamre. |
TVOS
static NSString *const kBackupContentPath =
@"http://googleimadev‑vh.akamaihd.net/i/big_buck_bunny/bbb‑,480p,720p,1080p,.mov.csmil/"
@"master.m3u8";
- (void)streamManager:(IMAStreamManager *)streamManager
didReceiveError:(NSError *)error {
NSLog(@"Error: %@", error);
[self playBackupStream];
}
- (void)playBackupStream {
NSURL *contentURL = [NSURL URLWithString:kBackupContentPath];
self.playerViewController.player = [[AVPlayer alloc] initWithURL:contentURL];
[self.playerViewController.player play];
}
A tartalék stream URL-jének megszerzése igény szerinti videónál (video on demand, VOD) és élő közvetítésnél
Az alkalmazásnak rendelkeznie kell olyan módszerrel, amellyel meg lehet szerezni a tartalék URL-t VOD és élő lineáris stream esetén is. VOD esetén a tartalék stream az ingestURL, amely az MRSS-hírcsatornában található. Élő lineáris stream esetén a tartalék streamnek az Ad Manager kezelőfelületén meghatározott tartalomstreamnek kell lennie.
HTTP-hibák kezelése a stream futása közben
Ha hibát talál, miközben fut a stream, nem ajánlott a nyers streamre történő visszatérés. Az Ad Manager automatikusan megpróbálja kijavítani a legtöbb hibát, amellyel találkozik. Bizonyos esetekben azonban, ha a szerver nem tudja kezelni a hibát, a stream leáll. Ha leáll a stream, az alkalmazásnak új streamet kell indítania. Ha a hiba továbbra is fennáll, térjen vissza a nyers streamhez.
A tartalék megvalósítás ellenőrzése
A tartalék megvalósítást a következő mintastreamekkel ellenőrizheti:
Streamformátum | Tartalomkulcs |
---|---|
HLS | MSQJlB9VSgqJkGNv1mB0FA |
DASH | TrhaCde0R_uKzG_psucTww |
Ezek a streamek tesztelési célokat szolgálnak, és mindig HTTP 429-es hibát váltanak ki.
Automatikus feladatátvétel DAI lineáris streamek esetén
Ritkán előfordulhat, hogy rendszerünkhöz túl nagy mennyiségű kérés érkezik, és ilyenkor egyes felhasználók hirdetések nélküli streamet láthatnak. Ebben az esetben a néző a mögöttes tartalmat fogja látni.
Abban az esetben, ha a tartalék adatfolyamokat nem lehet megjeleníteni, akkor a 429-es HTTP-válaszkód jelenik meg, az alkalmazásnak pedig helyileg vissza kell térnie a nyers streamre.