Bu kılavuzda, IMA DAI SDK'sının bir video oynatıcı uygulamasına nasıl entegre edileceği gösterilmektedir. Tamamlanmış bir örnek entegrasyonu görüntülemek veya takip etmek isterseniz GitHub'dan basit örneği indirin.
IMA DAI'ye genel bakış
IMA DAI SDK'sını uygulamak, bu kılavuzda gösterildiği gibi iki ana bileşenden oluşur:
StreamRequest(VODStreamRequestveyaLiveStreamRequest): Yayın isteğini tanımlayan nesne. Akış istekleri, seç-izle video veya canlı yayınlar için olabilir. Canlı yayın istekleri bir öğe anahtarı belirtirken VOD istekleri bir CMS kimliği ve video kimliği belirtir. Her iki istek türü de isteğe bağlı olarak, belirtilen akışlara erişmek için gereken bir API anahtarı ve IMA SDK'nın reklam tanımlayıcılarını Google Ad Manager ayarlarında belirtildiği şekilde işlemesi için bir Google Ad Manager ağ kodu içerebilir.StreamManager: Dinamik Reklam Ekleme akışlarını ve DAI arka ucuyla etkileşimleri işleyen bir nesne. Yayın yöneticisi, izleme ping'lerini de işler ve yayın ile reklam etkinliklerini yayıncıya iletir.
Ön koşullar
- Üç boş dosya
- dai.html
- dai.css
- dai.js
- Bilgisayarınızda yüklü Python veya test için kullanılacak bir web sunucusu
Geliştirme sunucusu başlatma
IMA DAI SDK'sı, bağımlılıkları yüklendiği sayfayla aynı protokolü kullanarak yüklediğinden uygulamanızı test etmek için bir web sunucusu kullanmanız gerekir. Yerel bir geliştirme sunucusu başlatmanın hızlı bir yolu, Python'un yerleşik sunucusunu kullanmaktır.
Komut satırını kullanarak
index.htmldosyanızı içeren dizinden şu komutu çalıştırın:python -m http.server 8000Web tarayıcısında
http://localhost:8000/adresine gidin.Apache HTTP Server gibi başka bir web sunucusu da kullanabilirsiniz.
Video oynatıcı oluşturma
İlk olarak, bir HTML5 video öğesi ve tıklama için kullanılacak bir div oluşturmak üzere dai.html dosyasını değiştirin. Aşağıdaki örnekte IMA DAI SDK'sı içe aktarılmaktadır. Daha fazla bilgi için IMA DAI SDK'sını içe aktarma bölümüne bakın.
Ayrıca, dai.css ve dai.js dosyalarını yüklemek ve hls.js video oynatıcıyı içe aktarmak için gerekli etiketleri ekleyin. Ardından, sayfa öğelerinin boyutunu ve konumunu belirtmek için dai.css öğesini değiştirin.
Son olarak, dai.js dosyasında akış isteği bilgilerini tutacak değişkenleri, sayfa yüklendiğinde çalıştırılacak bir initPlayer() işlevini tanımlayın ve oynat düğmesini tıklandığında akış isteyecek şekilde ayarlayın.
Duraklatılmış reklam araları sırasında oynatmayı devam ettirmek için video öğesinin pause ve start etkinlikleri için etkinlik işleyiciler ayarlayarak oynatıcı kontrollerini gösterin ve gizleyin.
IMA DAI SDK'sını yükleme
Ardından, dai.html dosyasında dai.js etiketinden önce bir komut dosyası etiketi kullanarak IMA çerçevesini ekleyin.
StreamManager'ı başlatma
Bir reklam grubu istemek için DAI akışlarını istemekten ve yönetmekten sorumlu bir ima.dai.api.StreamManager oluşturun. Oluşturucu, reklam tıklamalarını işlemek için bir video öğesi ve reklam kullanıcı arayüzü öğesi alır.
Akış isteğinde bulunma
Akış isteğinde bulunmak için işlevler tanımlayın. Bu örnekte, VODStreamRequest sınıfının ve LiveStreamRequest sınıfının örneklerini oluşturan hem VOD hem de canlı yayın işlevleri yer alır. streamRequest örneğinizi aldıktan sonra akış isteği örneğiyle streamManager.requestStream() yöntemini çağırın.
Her iki akış isteği yöntemi de isteğe bağlı bir API anahtarı alır. Korunan bir akış kullanıyorsanız DAI kimlik doğrulama anahtarı oluşturmanız gerekir. Daha fazla bilgi için DAI video akışı isteklerinin kimliğini doğrulama başlıklı makaleyi inceleyin.
Bu örnekteki akışların hiçbiri DAI kimlik doğrulama anahtarı kullanılarak korunmadığından apiKey kullanılmaz.
Akış meta verilerini ayrıştırma
Ayrıca, IMA'nın reklam araları sırasında reklam etkinlikleri yayınlaması için zamanlanmış meta veri etkinliklerini dinleyecek ve etkinlikleri StreamManager sınıfına yönlendirecek bir işleyici eklemeniz gerekir:
Bu kılavuzda, akış oynatma için hls.js oynatıcı kullanılmaktadır ancak meta veri uygulamanız, kullandığınız oynatıcı türüne bağlıdır.
Yayın etkinliklerini yönetme
Önemli video etkinlikleri için etkinlik işleyiciler uygulayın. Bu örnekte, bir onStreamEvent() işlevi çağrılarak LOADED, ERROR, AD_BREAK_STARTED ve AD_BREAK_ENDED etkinlikleri işlenir. Bu işlev, IMA SDK'nın gerektirdiği şekilde akış yükleme, akış hataları ve reklam oynatma sırasında oynatıcı kontrollerini devre dışı bırakma işlemlerini gerçekleştirir.
Yayın yüklendiğinde video oynatıcı, sağlanan URL'yi bir loadUrl() işlevi kullanarak yükler ve oynatır.
İşte bu kadar. Artık IMA DAI SDK ile reklam isteğinde bulunabilir ve reklamları gösterebilirsiniz. Daha gelişmiş SDK özellikleri hakkında bilgi edinmek için diğer kılavuzlara veya GitHub'daki örneklere göz atın.