In tegenstelling tot video-implementaties aan de clientzijde, waarbij de videostream en de advertenties afzonderlijk van elkaar worden opgevraagd, vraagt de implementatie aan de serverzijde die bij dynamische advertentie-invoeging (DAI) wordt gebruikt slechts één stream aan, waarbij advertenties dynamisch in de videocontent zijn verwerkt. Als er zich een serverfout voordoet, kan de stream worden geblokkeerd om een slechte gebruikerservaring en verloren opbrengst te voorkomen.
Ad Manager DAI kan u HTTP-fouten bieden zowel tijdens het maken van een stream als tijdens de weergave van een stream. Ook kunt u een back-upstream opgeven in het geval u geen geldige reactie van de server krijgt.
Oplossing van gevonden HTTP-fouten tijdens het maken van een stream
Fouttype | Aanbeveling |
---|---|
4XX-fouten (met uitzondering van 429) |
Als u HTTP 4XX-fouten te zien krijgt, moet u niet terugvallen op de onbewerkte streams, omdat het waarschijnlijk is dat de client een probleem heeft ondervonden. Zorg dat het verzoek naar de server correct is en alle vereiste parameters bevat. |
429- of 5XX-fouten | Als u HTTP 429- of HTTP 5XX-fouten te zien krijgt, moet u terugvallen op de onbewerkte back-upstream, zonder het genereren van inkomsten. Deze fouten kunnen in de IMA-SDK worden opgevangen door een foutenhandler en er kan van de standaardstream worden overgeschakeld naar de back-upstream. |
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];
}
De back-upstream-URL voor een video on demand (VOD) of livestream ophalen
Uw app moet over een mechanisme bevatten waarmee de back-up-URL voor zowel VOD- als live lineaire streams kan worden opgehaald. In het geval van VOD moet de back-upstream de ingestURL zijn die is opgegeven in de MRSS-feed. Voor live lineair moet de back-upstream de contentstream zijn die is opgegeven in de Ad Manager-gebruikersinterface.
HTTP-fouten oplossen tijdens de weergave van een stream
Treedt er een fout op als de stream wordt weergegeven, dan is het niet raadzaam dat u terugvalt op de onbewerkte stream. Ad Manager probeert de meeste opgespoorde fouten automatisch te corrigeren. Als de server een fout echter niet kan oplossen, wordt de weergave van de stream stopgezet. Als de stream stopt, zou de app een nieuwe stream moeten starten. Als de fout zich blijft voordoen, kunt u terugvallen op de onbewerkte stream.
Uw reserve-implementatie valideren
U kunt de reserve-implementatie valideren met de volgende voorbeeldstreams:
Streamindeling | Itemsleutel |
---|---|
HLS | MSQJlB9VSgqJkGNv1mB0FA |
DASH | TrhaCde0R_uKzG_psucTww |
Deze streams zijn bedoeld voor testdoeleinden en geven altijd een HTTP 429-fout.
Automatische failover voor lineaire DAI-streams
In het zeldzame geval dat ons systeem onverwacht veel volume ontvangt, kunnen we voor sommige gebruikers terugvallen op een stream zonder advertenties. In dat geval ziet de kijker onderliggende content.
Als er geen reservestreams kunnen worden weergegeven (bijvoorbeeld als verificatie of doorsturen van herkomst is opgegeven of als variantuitsluiting wordt aangevraagd voor de stream), wordt een HTTP 429-reactiecode weergegeven en valt de app lokaal terug op de onbewerkte stream.