W odróżnieniu od poprzednich integracji Chromecasta z DAI pakiet SDK CAF DAI skupia się głównie na spełnianiu standardów i oczekiwań określonych w platformie Cast Application Framework. W związku z tym nie ma wymagań, aby w znacznym stopniu dostosować aplikacje nadawcy do zarządzania dwukierunkową komunikacją między IMA a aplikacją nadawcy. Komunikacja jest teraz zarządzana za pomocą zintegrowanej funkcji przerwy na reklamy CAF, zamiast wymagać niestandardowych systemów komunikacji między aplikacją nadawcy a odbiorcą.
W zależności od nadawcy nadal może być konieczne dodanie do nadawców ograniczonych kodów, aby w pełni włączyć obsługę przerw na reklamy CAF, na przykład dodanie obsługi reklam możliwych do pominięcia do nadawców w internecie.
Teraz oprócz obsługi przerw na reklamy CAF musisz tylko dodać dane strumienia DAI w obiekcie MediaInfo CAF, które jest wysyłane od nadawcy do odbiorcy. Dane te możesz wysyłać na wiele różnych sposobów – na przykład możesz zakodować na stałe identyfikator contentSourceID na odbiorniku i wysłać tylko videoID z obiektem MediaInfo albo wysłać dowolny identyfikator do odbiorcy, by tam wysłać zapytanie do bazy danych online, by uzyskać rzeczywiste parametry DAI.
Dla uproszczenia we wszystkich przykładach zakładamy, że postępujesz zgodnie z tą prostą strukturą i konwencją nazewnictwa obiektów MediaInfo:
contentId | Unikalny identyfikator tego elementu multimedialnego | |
contentUrl | Adres URL strumienia zastępczego, który zostanie wczytany, gdy z jakiegokolwiek powodu żądanie StreamRequest DAI nie powiedzie się | |
streamType | W przypadku transmisji na żywo ta wartość powinna być ustawiona na „NA ŻYWO”. W przypadku strumieni VOD należy ustawić tę wartość na „BUFFERED” | |
customData | assetKey | Tylko transmisje na żywo. Określa transmisję na żywo do wczytania |
contentSourceId | Tylko strumienie VOD. Identyfikuje kanał multimedialny, który zawiera żądany strumień. | |
videoId | Tylko strumienie VOD. Identyfikuje żądany strumień w podanym kanale multimedialnym. | |
ApiKey | Opcjonalny klucz interfejsu API, który może być wymagany do pobrania adresu URL strumienia z pakietu IMA DAI SDK. | |
senderCanSkip | Wartość logiczna informująca odbiorcę o tym, czy urządzenie wysyłające ma możliwość wyświetlania przycisku pominięcia, co umożliwia obsługę reklam możliwych do pominięcia. |
Przykład transmisji na żywo:
{
"media": {
"contentId": "bbb",
"contentUrl": "https://storage.googleapis.com/interactive-media-ads/media/bbb.m3u8",
"streamType": "LIVE",
"customData": {
"assetKey": "sN_IYUG8STe1ZzhIIE_ksA",
"ApiKey": "",
"senderCanSkip": true
}
},
"credentials": "testCredentials"
}
Przykładowy strumień VOD:
{
"media": {
"contentId": "tos",
"contentUrl": "https://storage.googleapis.com/interactive-media-ads/media/tos.m3u8",
"streamType": "BUFFERED",
"customData": {
"contentSourceId": "2548831",
"videoId": "tears-of-steel",
"ApiKey": "",
"senderCanSkip": true
}
},
"credentials": "testCredentials"
}