Pakiety IMA SDK ułatwiają integrację reklam multimedialnych z witrynami i aplikacjami. Pakiety IMA SDK mogą wysyłać żądania reklam do dowolnego serwera reklam zgodnego z VAST i zarządzać odtwarzaniem reklam w aplikacjach. Za pomocą pakietów IMA DAI SDK aplikacje wysyłają żądanie strumienia reklamy i treści wideo – VOD lub treści na żywo. Pakiet SDK zwraca wtedy połączony strumień wideo, dzięki czemu nie musisz zarządzać przełączaniem między reklamą a treściami wideo w aplikacji.
Wybierz interesujące Cię rozwiązanie DAI
Dynamiczne wstawianie reklam z pełną obsługą
W tym przewodniku pokazujemy, jak zintegrować pakiet IMA DAI SDK z aplikacją odtwarzacza wideo. Jeśli chcesz zobaczyć gotową przykładową integrację lub postępować zgodnie z nią, pobierz prosty przykład z GitHub.
Omówienie IMA DAI
Wdrożenie pakietu IMA DAI SDK obejmuje 2 główne komponenty, jak pokazano w tym przewodniku:
StreamRequest
–VODStreamRequest
lubLiveStreamRequest
: obiekt, który definiuje żądanie strumienia. Żądania strumieni mogą dotyczyć transmisji wideo na żądanie lub transmisji na żywo. Żądania transmisji na żywo zawierają klucz pliku, a żądania VOD – identyfikator CMS i identyfikator wideo. Oba typy żądań mogą opcjonalnie zawierać klucz API potrzebny do uzyskania dostępu do określonych strumieni oraz kod sieci Google Ad Managera, aby pakiet IMA SDK mógł obsługiwać identyfikatory reklam zgodnie z ustawieniami Google Ad Managera.StreamManager
: obiekt, który obsługuje strumienie dynamicznego wstawiania reklam i interakcje z backendem DAI. Menedżer strumienia obsługuje też pingi śledzące i przesyła zdarzenia strumienia i reklamy do wydawcy.
Wymagania wstępne
- 3 puste pliki
- dai.html
- dai.css
- dai.js
- Python zainstalowany na komputerze lub serwer WWW do testowania
Uruchamianie serwera programistycznego
Pakiet IMA DAI SDK wczytuje zależności za pomocą tego samego protokołu co strona, z której jest wczytywany, więc do testowania aplikacji musisz użyć serwera WWW. Szybkim sposobem na uruchomienie lokalnego serwera deweloperskiego jest użycie wbudowanego serwera Pythona.
W wierszu poleceń w katalogu zawierającym plik
index.html
uruchom:python -m http.server 8000
W przeglądarce otwórz stronę
http://localhost:8000/
Możesz też użyć dowolnego innego serwera WWW, np. serwera HTTP Apache.
Tworzenie odtwarzacza wideo
Najpierw zmodyfikuj plik dai.html, aby utworzyć element wideo HTML5 i element div, który będzie używany do kliknięcia prowadzącego do strony docelowej. W tym przykładzie importowany jest pakiet IMA DAI SDK. Więcej informacji znajdziesz w artykule Importowanie pakietu IMA DAI SDK.
Dodaj też niezbędne tagi, aby wczytać pliki dai.css
i dai.js
, a także zaimportować odtwarzacz wideo hls.js
. Następnie zmień wartość dai.css
, aby określić rozmiar i pozycję elementów strony.
Na koniec w dai.js
zdefiniuj zmienne do przechowywania informacji o żądaniu strumienia, funkcję initPlayer()
, która ma być uruchamiana po wczytaniu strony, i skonfiguruj przycisk odtwarzania, aby po kliknięciu wysyłał żądanie strumienia.
Aby wznowić odtwarzanie podczas wstrzymanych przerw na reklamy, skonfiguruj odbiorniki zdarzeń dla zdarzeń pause
i start
elementu wideo, aby wyświetlać i ukrywać elementy sterujące odtwarzaczem.
Wczytywanie pakietu IMA DAI SDK
Następnie dodaj platformę IMA za pomocą tagu skryptu w pliku dai.html przed tagiem dai.js.
Inicjowanie StreamManager
Aby poprosić o zestaw reklam, utwórz ima.dai.api.StreamManager
, który odpowiada za wysyłanie żądań strumieni DAI i zarządzanie nimi. Konstruktor przyjmuje element wideo i element interfejsu reklamy do obsługi kliknięć reklam.
Tworzenie żądania strumienia
Zdefiniuj funkcje do wysyłania żądań strumieni. Ten przykład zawiera funkcje zarówno dla filmów VOD, jak i transmisji na żywo, które tworzą instancje klasy VODStreamRequest
i klasy LiveStreamRequest
. Gdy uzyskasz instancję streamRequest
, wywołaj metodę streamManager.requestStream()
z instancją żądania strumienia.
Obie metody żądania strumienia przyjmują opcjonalny klucz interfejsu API. Jeśli używasz chronionej transmisji, musisz utworzyć klucz uwierzytelniania DAI. Więcej informacji znajdziesz w sekcji Uwierzytelnianie żądań strumienia wideo na żywo za pomocą kluczy uwierzytelniania DAI.
Żaden strumień w tym przykładzie nie jest chroniony za pomocą klucza uwierzytelniania DAI, więc nie jest używany parametr apiKey
.
Analizowanie metadanych strumienia
Musisz też dodać moduł obsługi, który będzie nasłuchiwać zdarzeń metadanych z określonym czasem i przekazywać je do klasy StreamManager
, aby IMA mogła emitować zdarzenia reklam podczas przerw na reklamy:
W tym przewodniku do odtwarzania strumienia używany jest odtwarzacz hls.js
, ale implementacja metadanych zależy od typu używanego odtwarzacza.
Obsługa zdarzeń strumienia
Wdróż detektory zdarzeń dla najważniejszych zdarzeń związanych z filmem. W tym przykładzie zdarzenia LOADED
, ERROR
, AD_BREAK_STARTED
i AD_BREAK_ENDED
są obsługiwane przez wywołanie funkcji onStreamEvent()
. Ta funkcja obsługuje wczytywanie strumienia, błędy strumienia i wyłączanie elementów sterujących odtwarzacza podczas odtwarzania reklam, co jest wymagane przez pakiet IMA SDK.
Po załadowaniu strumienia odtwarzacz wideo wczytuje i odtwarza podany adres URL za pomocą funkcji loadUrl()
.
Znakomicie. Teraz wysyłasz żądania reklam i wyświetlasz je za pomocą pakietu IMA DAI SDK. Więcej informacji o zaawansowanych funkcjach pakietu SDK znajdziesz w innych przewodnikach lub przykładach w GitHubie.