במדריך הזה נסביר איך לשלב את IMA DAI SDK באפליקציה של נגן וידאו. אם אתם רוצים לראות או לעקוב אחרי שילוב לדוגמה, אתם יכולים להוריד את הדוגמה הפשוטה מ-GitHub.
סקירה כללית על IMA DAI
הטמעת IMA DAI SDK כוללת שני רכיבים עיקריים, כפי שמוצג במדריך הזה:
-
StreamRequest–VODStreamRequestאוLiveStreamRequest: אובייקט שמגדיר בקשה לשידור. הבקשות לשידור יכולות להיות לווידאו על פי דרישה (VOD) או לשידורים חיים. בבקשות לשידור חי מציינים מפתח נכס, ובבקשות ל-VOD מציינים מזהה CMS ומזהה סרטון. שני סוגי הבקשות יכולים לכלול מפתח API שנדרש כדי לגשת לסטרימים שצוינו, וקוד רשת של Google Ad Manager כדי ש-IMA SDK יטפל במזהי מודעות כפי שצוין בהגדרות של Google Ad Manager. StreamManager: אובייקט שמטפל בסטרימינג של הטמעת מודעות דינמיות ובאינטראקציות עם הקצה העורפי של DAI. מנהל השידור גם מטפל בפינגים של מעקב ומעביר אירועים של שידורים ומודעות לבעל האפליקציה.
דרישות מוקדמות
- שלושה קבצים ריקים
- dai.html
- dai.css
- dai.js
- Python מותקן במחשב, או שרת אינטרנט לבדיקה
הפעלת שרת פיתוח
מכיוון ש-IMA DAI SDK טוען יחסי תלות באמצעות אותו פרוטוקול כמו הדף שממנו הוא נטען, צריך להשתמש בשרת אינטרנט כדי לבדוק את האפליקציה. דרך מהירה להפעיל שרת פיתוח מקומי היא להשתמש בשרת המובנה של Python.
מריצים את הפקודה הבאה בשורת הפקודה, מהספרייה שמכילה את הקובץ
index.html:python -m http.server 8000בדפדפן אינטרנט, עוברים אל
http://localhost:8000/.אפשר גם להשתמש בכל שרת אינטרנט אחר, כמו Apache HTTP Server.
יצירת נגן וידאו
קודם כול, משנים את dai.html כדי ליצור רכיב וידאו ב-HTML5 ו-div לשימוש בקליקים. בדוגמה הבאה מייבאים את IMA DAI SDK. מידע נוסף זמין במאמר ייבוא של IMA DAI SDK.
בנוסף, צריך להוסיף את התגים הנדרשים כדי לטעון את הקבצים dai.css ו-dai.js, וגם כדי לייבא את נגן הווידאו hls.js. אחר כך משנים את dai.css כדי לציין את הגודל והמיקום של רכיבי הדף.
לבסוף, בקובץ dai.js, מגדירים משתנים שיכילו את פרטי הבקשה לשידור, פונקציית initPlayer() שתפעל כשטעינת דף תושלם, ומגדירים את לחצן ההפעלה כך שיבקש שידור בלחיצה.
כדי להמשיך את ההפעלה במהלך הפסקות למודעות שהושהו, צריך להגדיר מאזינים לאירועים pause ו-start של רכיב הווידאו כדי להציג ולהסתיר את כפתורי הנגן.
טעינת IMA DAI SDK
בשלב הבא, מוסיפים את מסגרת IMA באמצעות תג סקריפט ב-dai.html, לפני התג של dai.js.
הפעלה של StreamManager
כדי לבקש קבוצה של מודעות, יוצרים ima.dai.api.StreamManager, שאחראי לבקשה ולניהול של שידורי DAI. ה-constructor מקבל רכיב וידאו ורכיב בממשק המשתמש של מודעה כדי לטפל בקליקים על מודעות.
שליחת בקשה לשידור
מגדירים פונקציות לבקשת שידורים. הדוגמה הזו כוללת פונקציות גם לווידאו על פי דרישה וגם לשידורים חיים, שיוצרות מופעים של המחלקה VODStreamRequest ושל המחלקה LiveStreamRequest. אחרי שיש לכם מופע של streamRequest, צריך להפעיל את ה-method streamManager.requestStream() עם המופע של בקשת השידור.
בשתי השיטות של בקשות הסטרימינג אפשר להשתמש במפתח API אופציונלי. אם אתם משתמשים בשידור מוגן, אתם צריכים ליצור מפתח אימות של DAI. פרטים נוספים זמינים במאמר אימות בקשות של שידורי וידאו ב-DAI.
אף אחד מהשידורים בדוגמה הזו לא מוגן באמצעות מפתח אימות של DAI, ולכן לא נעשה שימוש ב-apiKey.
ניתוח המטא-נתונים של השידור
צריך גם להוסיף פונקציית handler כדי להאזין לאירועי מטא-נתונים מתוזמנים ולהעביר את האירועים לכיתה StreamManager, כדי ש-IMA יפיק אירועי מודעות במהלך הפסקות למודעות:
במדריך הזה אנחנו משתמשים בנגן hls.js להפעלת סטרימינג, אבל הטמעת המטא-נתונים תלויה בסוג הנגן שבו אתם משתמשים.
טיפול באירועי סטרימינג
מטמיעים רכיבי event listener לאירועי וידאו מרכזיים. בדוגמה הזו, האירועים LOADED, ERROR, AD_BREAK_STARTED ו-AD_BREAK_ENDED מטופלים באמצעות קריאה לפונקציה onStreamEvent(). הפונקציה הזו מטפלת בטעינת השידור, בשגיאות בשידור ובהשבתת כפתורי הנגן במהלך הפעלת המודעה, כפי שנדרש על ידי IMA SDK.
כשהשידור נטען, נגן הווידאו טוען ומפעיל את כתובת ה-URL שצוינה באמצעות פונקציית loadUrl().
זהו! עכשיו אתם יכולים לבקש ולהציג מודעות באמצעות IMA DAI SDK. כדי לקבל מידע על תכונות מתקדמות יותר של ה-SDK, אפשר לעיין במדריכים האחרים או בדוגמאות ב-GitHub.