Google DAI API מאפשר להטמיע שידורים שכוללים DAI מבית Google בסביבות שבהן אין תמיכה בהטמעה של IMA SDK. אנחנו ממליצים להמשיך להשתמש IMA בפלטפורמות שבהן יש תמיכה ב-IMA SDK.
אנחנו ממליצים להשתמש ב-DAI API בפלטפורמות הבאות:
- Samsung Smart TV (Tizen)
- טלוויזיה של LG
- HbbTV
- Xbox (אפליקציות JavaScript)
- KaiOS
ה-API תומך בתכונות הבסיסיות שמסופקות על ידי IMA DAI SDK. לקבלת מידע ספציפי לשאלות על תאימות או על תכונות נתמכות, אפשר לפנות אל מנהל החשבון.
הטמעה של DAI API לשידורי VOD
DAI API תומך בשידורי VOD באמצעות הפרוטוקולים HLS ו-DASH. השלבים שמתוארים במדריך הזה רלוונטיים לשני הפרוטוקולים.
כדי לשלב את ה-API באפליקציה לסטרימינג ב-VOD, צריך להשלים את את השלבים הבאים:
כדי לבקש סטרימינג, מבצעים הפעלת POST לנקודת הקצה של השידור:
דוגמה לגוף הבקשה:
https://dai.google.com/ondemand/v1/dash/content/2559737/vid/tos-dash/stream { key1 : "value1", stream_parameter1 : "value2" }
דוגמה לגוף תשובה:
{ "stream_id":"d32f8920-612a-4d46-8bc7-d73fd6c17c85", "total_duration":636.458, "content_duration":596.458, "valid_for":"8h0m0s", "valid_until":"2020-06-04T20:39:41.274707306-07:00", "stream_manifest":"https://dai.google.com/ondemand/dash/content/2559737/vid/tos-dash/ATL/streams/d32f8920-612a-4d46-8bc7-d73fd6c17c85/manifest.mpd", "media_verification_url":"https://dai.google.com/view/p/service/vod/stream/d32f8920-612a-4d46-8bc7-d73fd6c17c85/loc/ATL/network/124319096/content/2559737/vid/tos-dash/media/", "ad_breaks":[ { "type":"pre", "start":0, "duration":10, "ads":[ { "seq":1, "duration":10, "title":"External NCA1C1L1 Preroll", "description":"External NCA1C1L1 Preroll ad", "clickthrough_url":"https://dai.google.com/ondemand/v1/dash/content/2474148/vid/bbb-clear/location/ATL/stream/d32f8920-612a-4d46-8bc7-d73fd6c17c85/videoclick/5489259204425938365", "events":[ { "time":0.1, "type":"start" }, { "time":2.5, "type":"firstquartile" }, { "time":4.75, "type":"midpoint" }, { "time":7.5, "type":"thirdquartile" }, { "time":9, "type":"complete" } ] } ] }, { "type":"mid", "start":45, "duration":10, "ads":[ {.... } ] } ] }, { "type":"post", "start":626.458, "duration":10, "ads":[...] } ] }
תגובת השגיאה
אם יש שגיאות, מוחזרים קודי שגיאות HTTP רגילים ללא JSON גוף התגובה.
נתח את תגובת ה-JSON ואחסן את הערכים הבאים:
stream_id
stream_manifest
media_verification_url
ad_breaks
כדי לבצע אימות מדיה, צריך להאזין לאירועי ID3:
- אחסון אירועי המדיה בתור, ושמירה של כל מזהה מדיה יחד עם חותמת זמן (אם הנגן מציג זאת).
- בכל פעם עדכון מהנגן, או בתדירות מוגדרת (מומלץ 500 אלפיות השנייה), אפשר לבדוק את התור לאירועי המדיה של אירועים שהופעלו לאחרונה על ידי השוואה בין חותמות הזמן של האירוע לבין המיקום הנוכחי.
- עבור אירועי מדיה שאישרת כי הופעלו אותם, יש לעקוב אחר ההפעלה לפי הוספה של מזהה המדיה לנקודת הקצה של אימות המדיה ויצירת בקשת GET.
דוגמה לגוף הבקשה:
https://dai.google.com/view/p/service/linear/stream/c6bbee18-0d20-4c55-b071-efdf3a81da33:ATL/loc/ATL/network/51636543/event/0ndl1dJcRmKDUPxTRjvdog/media/
תגובות לדוגמה:
Accepted for asynchronous verification - HTTP/1.1 202 Accepted Successful empty response - HTTP/1.1 204 No Content Media verification not found - HTTP/1.1 404 Not Found Media verification sent by someone else - HTTP/1.1 409 Conflict
אפשר לאמת אירועי מעקב בקטע פעילות בסטרימינג מעקב.
אופציונלי: אפשר להשתמש בנתוני
ad_breaks
מהתגובה ליצירת מקור נתונים כדי לבדוק להגדיר איזה סוג של אירוע הופעל.הסרת אירוע המדיה מהתור.
מגבלות
אם אתם משתמשים ב-API בתוך רכיבי WebView, ההגבלות הבאות חלות בהתאם לטירגוט:
- סוכן משתמש: הפרמטר של סוכן המשתמש מועבר כערך ספציפי לדפדפן במקום בפלטפורמה הבסיסית.
rdid
idtype
,is_lat
: מזהה המכשיר הוא לא עובר כראוי, ולכן המאפיינים הבאים מוגבלים:- מכסת תדירות
- סבב מודעות ברצף
- פילוח וטירגוט של קהל היעד
שיטות מומלצות
מיפוי תגי ID3 לסוג האירוע המתאים מסובך ב-VOD. משתמשים ב
החזירו מידע מסוג ad_breaks
ב-JSON כדי לחפש את האירוע ישירות, למשל
עם תוכן בשידור חי.