HTML5-এর জন্য IMA SDK প্লাগ-ইন লিনিয়ার ভিডিও বিজ্ঞাপনের পাশাপাশি লিনিয়ার ডিসপ্লে বিজ্ঞাপন দেখাতে পারে। লিনিয়ার ভিডিও বিজ্ঞাপন সম্পর্কে আরও জানতে, ভিডিও সলিউশন বিজ্ঞাপন ওভারভিউ দেখুন।
লিনিয়ার ডিসপ্লে বিজ্ঞাপন চালু করলে আপনার বিজ্ঞাপনের জায়গার জন্য অতিরিক্ত চাহিদা তৈরি হতে পারে, কারণ লিনিয়ার ডিসপ্লে বিজ্ঞাপন আপনার বিজ্ঞাপনের জায়গার জন্য লিনিয়ার ভিডিও বিজ্ঞাপনের সাথে প্রতিযোগিতা করে। IMA লিনিয়ার ডিসপ্লে বিজ্ঞাপন রেন্ডার করার বিষয়টি ম্যানেজ করে, তবে আপনাকে ভিডিও কন্টেন্ট শনাক্তকরণ সেট-আপ করতে হবে। IMA কন্টেন্ট ডিটেকশন প্রয়োগ করার পদ্ধতি নির্ভর করে আপনি বিজ্ঞাপন প্লেয়ারের মতো একই অরিজিন ফ্রেমে কন্টেন্ট প্লেয়ার তৈরি করছেন নাকি ক্রস-অরিজিন ফ্রেমে বিজ্ঞাপন প্লেয়ার তৈরি করছেন তার উপর।
এই নির্দেশিকায় লিনিয়ার ডিসপ্লে বিজ্ঞাপন চালু করার জন্য কন্টেন্ট ডিটেকশন সেট-আপ করা, কন্টেন্ট ভিডিও প্লেয়ার পরিবর্তন করা এবং কন্টেন্ট সিগন্যাল সংগ্রহ করা বন্ধ করার মতো বিষয়গুলি কভার করা হয়েছে।
কন্টেন্ট ডিটেকশন সেট-আপ করা
বিজ্ঞাপনের অনুরোধের জন্য লিনিয়ার ডিসপ্লে বিজ্ঞাপন চালু করতে, নিম্নলিখিত ধাপগুলি অনুসরণ করুন:
একই অরিজিন
IMA SDK আপনার কন্টেন্ট প্লেয়ারের মতো একই উৎস শেয়ার করলে, নিম্নলিখিতগুলির মধ্যে যেকোনও একটি করুন:
পছন্দসই
AdsManagerLoadedEvent.getAdsManager()কলে ভিডিও প্লেয়ার পাস করুন। যদিওgetAdsManager()আপনাকেcurrentTimeপ্রপার্টি সহ একটি অবজেক্ট পাস করতে দেয়, কন্টেন্ট শনাক্তকরণে সহায়তা করার জন্য আপনাকে অবশ্যইgetAdsManager()-এ একটিHTMLVideoElementইনস্ট্যান্স পাস করতে হবে।function onAdsManagerLoaded(adsManagerLoadedEvent) { // Set any AdsRenderingSettings here. const adsRenderingSettings = new google.ima.AdsRenderingSettings(); // Get the ads manager. adsManager = adsManagerLoadedEvent.getAdsManager(videoElement, adsRenderingSettings); }AdsManagerLoadedEvent.getAdsManager()কল চলাকালীন আপনি কন্টেন্ট প্লেয়ার প্রদান করতে না পারলে, ভিডিও প্লেয়ারের সাথেAdsManager.configureAdsManager()মেথড কল করুন। কন্টেন্ট ডিটেকশন কাজ করার জন্য, এটি অবশ্যই একটিHTMLVideoElementহতে হবে।
function onAdsManagerLoaded(adsManagerLoadedEvent) {
adsManager =
adsManagerLoadedEvent.getAdsManager(null);
adsManager.configureAdsManager(videoElement);
}
আপনি কন্টেন্ট ডিটেকশন সেট-আপ না করলে, Google বিজ্ঞাপন সার্ভার লিনিয়ার ডিসপ্লে বিজ্ঞাপন পরিবেশন করা বন্ধ করে দিতে পারে।
আপনার কন্টেন্ট প্লেয়ার যদি একই সোর্স থেকে IMA SDK লোড করে, তাহলে কন্টেন্ট প্লেয়ার পরিবর্তন করা বা কন্টেন্ট সিগন্যাল সংগ্রহ করা বন্ধ করার জন্য আপনার IMA প্রয়োগে কোনও পরিবর্তন করার প্রয়োজন নেই।
ক্রস অরিজিন
IMA SDK আপনার কন্টেন্ট প্লেয়ারের ক্রস অরিজিন হলে, IMA CrossOriginProxy ক্লাসের মাধ্যমে কন্টেন্ট শনাক্তকরণ সিগন্যাল সংগ্রহ করতে পারে। এই ক্লাস IMA SDK-কে সঠিক লিনিয়ার ডিসপ্লে বিজ্ঞাপন প্লেসমেন্ট যাচাই করতে এবং ভিডিও কন্টেন্টের বিষয়বস্তু সম্পর্কিত সিগন্যাল সংগ্রহ করতে দেয়। আপনি যদি ক্রস-ডোমেন iframe-এ IMA SDK প্লেস করেন, তাহলে আপনাকে অবশ্যই CrossOriginProxy ক্লাস প্রয়োগ করতে হবে।
আপনি যদি CrossOriginProxy ক্লাস প্রয়োগ না করে IMA SDK-এর ক্রস অরিজিনে
কন্টেন্ট প্লেয়ার প্লেস করা চালিয়ে যান, তাহলে Google বিজ্ঞাপন সার্ভার
লিনিয়ার ডিসপ্লে বিজ্ঞাপন দেখানো বন্ধ করে দিতে পারে।
আপনার অ্যাপে CrossOriginProxy ক্লাস লোড করতে, নিম্নলিখিত ধাপগুলি অনুসরণ করুন:
আপনার HTML ফাইলে,
ima_proxy.jsফাইল ইম্পোর্ট করুন:<html> <head> <title>IMA HTML5 cross-origin iframe sample</title> <link rel="stylesheet" href="style.css"> </head> <body> <div id="mainContainer"> <div id="content"> <video id="contentElement"> <source src="https://storage.googleapis.com/gvabox/media/samples/stock.mp4"></source> </video> </div> <!-- The cross-origin iframe where you load IMA SDK and play ads. --> <iframe id="adContainerIframe" src="https://cross-origin-domain.com/ads-sandbox.html" > </iframe> </div> <button id="playButton">Play</button> <script src="//imasdk.googleapis.com/js/sdkloader/ima_proxy.js"></script> <script src="main.js"></script> </body> </html>main.js ফাইলে,
CrossOriginProxyইনস্ট্যান্স পান।আপনার পৃষ্ঠা বা অ্যাপে বিজ্ঞাপন দেখায় এমন সব ভিডিও প্লেয়ারের অ্যারে সহ
setVideoElements()মেথড কল করুন।
বিজ্ঞাপনের অনুরোধ করার আগে, আপনাকে অবশ্যই setVideoElements() কলের মাধ্যমে
CrossOriginProxy ইনস্ট্যান্সে ভিডিও এলিমেন্ট পাস করতে হবে। নিম্নলিখিত
উদাহরণটি একটি কন্টেন্ট ভিডিও প্লেয়ার সহ একটি অ্যারে পাস করে:
// On window load attach an event to the play button click
// that triggers playback of the content video element.
window.addEventListener('load', function(event) {
videoContent = document.getElementById('contentElement');
ima.crossOriginProxy.getInstance().setVideoElements([videoContent]);
playButton = document.getElementById('playButton');
playButton.addEventListener('click', playAds);
});
কন্টেন্ট ভিডিও প্লেয়ার পরিবর্তন করুন
আপনি যদি অন্য কোনও কন্টেন্ট ভিডিও প্লেয়ারে পরিবর্তন করেন বা যোগ করেন, তাহলে আপনাকে অবশ্যই setVideoElements() পদ্ধতিতে একটি নতুন
অ্যারে পাস করতে হবে। আপনি নতুন
setVideoElements() কল করলে, IMA নতুন কন্টেন্ট প্লেয়ারের জন্য সিগন্যাল সংগ্রহ করা শুরু করে এবং আগের কলে পাস করা যেকোনও কন্টেন্ট প্লেয়ারের জন্য সিগন্যাল সংগ্রহ করা বন্ধ করে দেয়।
নিম্নলিখিত উদাহরণটি CrossOriginProxy
ক্লাসে নতুন ভিডিও এলিমেন্ট পাস করে:
function createNewContentPlayer(newPlayerId) {
newVideoContent = document.getElementById(newPlayerId);
ima.crossOriginProxy.getInstance().setVideoElements([newVideoContent]);
// Continue with any other steps needed to initiate the content player
}
বিজ্ঞাপন দেখানো শেষ হয়ে গেলে সিগন্যাল সংগ্রহ করা বন্ধ করুন
বিজ্ঞাপন দেখানো শেষ করে
AdsLoader.destroy()
মেথড কল করার সময় আপনাকে অবশ্যই খালি অ্যারে সহ setVideoElements() মেথড কল করতে হবে। খালি অ্যারে দিয়ে setVideoElements() কল করলে, IMA-এর কাছে থাকা কন্টেন্ট প্লেয়ারের রেফারেন্স ড্রপ হয়ে যায় এবং মেমরি লিক সংক্রান্ত সমস্যা প্রতিরোধ করা যায়।