Tworzenie aplikacji nadawcy dla pakietu CAF DAI SDK

W przeciwieństwie do poprzednich integracji Chromecasta z dynamicznym wstawianiem reklam pakiet CAF DAI SDK koncentruje się na zachowaniu standardów i oczekiwań określonych przez Cast Application Framework. Dlatego nie ma potrzeby, aby w dużym stopniu dostosowywać aplikacje wysyłające do zarządzania dwukierunkową komunikacją między IMA a aplikacją wysyłającą. Komunikacja ta jest teraz zarządzana za pomocą zintegrowanej funkcji przerw na reklamy CAF, a nie za pomocą niestandardowych systemów przesyłania wiadomości między aplikacją wysyłającą a odbiornikiem.

W zależności od nadawcy może być konieczne dodanie do niego ograniczonego kodu, aby w pełni włączyć obsługę przerw na reklamy w CAF, np. dodanie obsługi reklam, które można pominąć, do nadawców internetowych.

Oprócz obsługi przerw na reklamy CAF wystarczy teraz uwzględnić dane strumienia DAI w obiekcie CAF MediaInfo, który jest wysyłany od nadawcy do odbiorcy. Możesz wysyłać te dane na wiele różnych sposobów. Możesz na przykład zakodować na stałe identyfikator contentSourceID na odbiorniku i wysyłać tylko identyfikator videoID z obiektem MediaInfo. Możesz też wysyłać do odbiornika dowolny identyfikator, a następnie wysyłać zapytania do bazy danych online o rzeczywiste parametry DAI.

Jednak dla uproszczenia wszystkie nasze przykłady będą zakładać, że w przypadku obiektów MediaInfo stosujesz tę prostą strukturę i konwencję nazewnictwa:

contentId Unikalny identyfikator tego elementu multimedialnego.
contentUrl Adres URL transmisji zastępczej, która ma się wczytać, jeśli żądanie DAI StreamRequest nie powiedzie się z jakiegokolwiek powodu.
streamType W przypadku transmisji na żywo ta wartość powinna być ustawiona na „LIVE”. W przypadku strumieni VOD ta wartość powinna być ustawiona na „BUFFERED”.
customData assetKey Tylko transmisje na żywo. Określa transmisję na żywo, która ma zostać wczytana.
contentSourceId Tylko strumienie VOD. Określa plik danych o mediach, który zawiera żądany strumień.
videoId Tylko strumienie VOD. Określa żądany strumień w określonym kanale multimedialnym.
ApiKey Opcjonalny klucz API, który może być wymagany do pobrania adresu URL strumienia z pakietu IMA DAI SDK.
senderCanSkip Wartość logiczna informująca odbiorcę, czy urządzenie wysyłające może wyświetlać przycisk pomijania, co umożliwia obsługę reklam możliwych do pominięcia.

Przykładowa transmisja 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"
}