Im Gegensatz zu früheren Integrationen zwischen Chromecast und DAI liegt der Schwerpunkt des CAF DAI SDK auf der Einhaltung der Standards und Erwartungen, die vom Cast Application Framework festgelegt wurden. Daher müssen Sie Ihre Sender-Apps nicht mehr stark anpassen, um die bidirektionale Kommunikation zwischen dem IMA und der Sender-App zu verwalten. Diese Kommunikation wird jetzt über die integrierte CAF-Werbeunterbrechungen-Funktion verwaltet. Es sind also keine benutzerdefinierten Nachrichtensysteme mehr erforderlich, um zwischen der Sender-App und dem Empfänger zu kommunizieren.
Je nach Absender müssen Sie möglicherweise noch etwas Code zu Ihren Absendern hinzufügen, um die Unterstützung von CAF-Werbeunterbrechungen vollständig zu aktivieren, z. B. Unterstützung für überspringbare Anzeigen zu Web-Absendern hinzufügen.
Abgesehen von der Unterstützung von CAF-Werbeunterbrechungen müssen Sie jetzt nur noch die DAI-Streamdaten in das CAF-MediaInfo-Objekt einfügen, das vom Sender an den Empfänger gesendet wird. Sie können diese Daten auf viele verschiedene Arten senden. Sie könnten beispielsweise die contentSourceID auf Ihrem Empfänger fest codieren und nur die videoID mit dem MediaInfo-Objekt senden. Alternativ könnten Sie eine beliebige Kennung an den Empfänger senden und von dort aus eine Online-Datenbank nach den tatsächlichen DAI-Parametern abfragen.
Der Einfachheit halber gehen wir in allen unseren Beispielen davon aus, dass Sie diese einfache Struktur und Namenskonvention für Ihre MediaInfo-Objekte verwenden:
contentId | Eine eindeutige Kennung für dieses Medienelement | |
contentUrl | Die Fallback-Stream-URL, die geladen werden soll, wenn die DAI StreamRequest aus irgendeinem Grund fehlschlägt | |
streamType | Bei Livestreams sollte dieser Wert auf „LIVE“ festgelegt werden. Bei VOD-Streams sollte dieser Wert auf „BUFFERED“ festgelegt werden. | |
customData | assetKey | Nur Livestreams Gibt den zu ladenden Livestream an. |
contentSourceId | Nur VOD-Streams. Gibt den Media-Feed an, der den angeforderten Stream enthält. | |
videoId | Nur VOD-Streams. Gibt den angeforderten Stream im angegebenen Mediafeed an. | |
ApiKey | Ein optionaler API-Schlüssel, der erforderlich sein kann, um die Stream-URL aus dem IMA DAI SDK abzurufen. | |
senderCanSkip | Ein boolescher Wert, der dem Empfänger mitteilt, ob auf dem sendenden Gerät eine Schaltfläche zum Überspringen angezeigt werden kann, um überspringbare Anzeigen zu unterstützen. |
Beispiel für einen Livestream:
{
"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"
}
Beispiel für einen VOD-Stream:
{
"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"
}