API cho tính năng Chèn quảng cáo động (DAI) cho phép truy cập vào các luồng kiếm tiền không hỗ trợ IMA SDK (ví dụ: TV thông minh). IMA là yêu cầu bắt buộc trên các nền tảng có sẵn IMA. API hỗ trợ tất cả các tính năng DAI hiện có, tuy nhiên, các tính năng này yêu cầu nhà xuất bản triển khai.
Các yêu cầu khi sử dụng API
Khi sử dụng API này, nhà xuất bản bắt buộc phải triển khai chức năng sau đây:
- Truy cập vào sự kiện phát trực tuyến DAI qua điểm cuối HTTP và xử lý mục phản hồi JSON
- Xây dựng các thông số API và khóa-giá trị nhắm mục tiêu
- Triển khai trải nghiệm người dùng (ví dụ: lượt nhấp và biểu tượng)
- Nghe các sự kiện ID3 trong trình phát để triển khai các nút điều khiển trình phát và hoạt động theo dõi/đo lường quảng cáo cho cả truyền hình trực tiếp truyền thống và video theo yêu cầu (VOD)
- Triển khai hành vi kéo nhanh, quay lại quảng cáo và chức năng đánh dấu
- Lựa chọn định dạng phát trực tuyến: HLS hoặc DASH
Bạn có thể vận dụng thông tin sau đây để biết cách yêu cầu và xử lý các luồng thông qua API cho video theo yêu cầu hoặc luồng truyền hình trực tiếp truyền thống.
Video theo yêu cầu (VOD)
API VOD tuân theo vòng đời đơn giản từ khi tạo sự kiện phát trực tuyến đến khi xác minh việc phát quảng cáo:
-
Yêu cầu sự kiện phát trực tuyến với HTTP POST bằng cách sử dụng mã nguồn nội dung (
cmsid
) và mã video (vid
), với khóa API hoặc mã thông báo HMAC và các thông số nhắm mục tiêu quảng cáo.https://dai.google.com/ondemand/v1/hls/content/<contentId>/vid/<vid>/stream
-
Xử lý mục phản hồi cho tệp kê khai phát nội dung, phụ đề/chú thích, điểm chèn quảng cáo và thông tin thời gian của nội dung.
{
"content_duration": 123.451,
"stream_manifest": "https://dai.google.com/.../master.m3u8",
"media_verification_url": "https://dai.google.com/.../media/",
"stream_id": "9ca0c62a-3291-4f95-986f-d1721f8b96f0",
"total_duration": 163.451,
"valid_for": "8h0m0s",
"valid_until": "2018-05-16T23:21:16.558053292-07:00",
"ad_breaks": [...]
}
-
Đối với mỗi điểm chèn quảng cáo, hãy xử lý từng chi tiết quảng cáo riêng lẻ cho các yếu tố quảng cáo, chẳng hạn như lượt nhấp, quảng cáo đồng hành và thông tin thời gian chèn quảng cáo để hiển thị giao diện người dùng.
{
"clickthrough_url": "https://dai.google.com/.../videoclick/1835622921898938400",
"description": "Ví dụ về quảng cáo trước video",
"duration": 10,
"seq": 1,
"title": "Ví dụ về quảng cáo trước video"
}
-
Đối với mỗi quảng cáo, hãy kích hoạt
media_verification_url
với giá trị ID3 thêm vào phía sau từ việc phát nội dung đa phương tiện quảng cáo.https://dai.google.com/view/p/service/vod/stream/3647080d-c223-442e-a364-c456ee712ece/loc/CBF/network/124319096/content/2474148/vid/bbb-clear/media/
Các sự kiện Tiến trình được cung cấp để phân biệt việc phát trong và ngoài điểm chèn quảng cáo và không nhằm các mục đích theo dõi quảng cáo khác.
Bạn có thể xác định các sự kiện tiến trình bằng cách tìm kiếm tệp json siêu dữ liệu cho giá trị nhận dạng nội dung đa phương tiện và xác minh rằng trường type
đặt thành progress
. Bạn có thể sử dụng ID3 tiến trình, chẳng hạn, để chặn các mục điều khiển video.
Luồng truyền hình trực tiếp truyền thống
API truyền hình truyền thống tuân theo vòng đời đơn giản từ khi tạo sự kiện phát trực tuyến đến khi xác minh việc phát quảng cáo:
-
Yêu cầu sự kiện phát trực tuyến với HTTP POST bằng cách sử dụng mã sự kiện với khóa API hoặc mã thông báo HMAC và các thông số nhắm mục tiêu quảng cáo.
https://dai.google.com/linear/v1/hls/event/<eventid>/stream
https://dai.google.com/linear/v1/dash/event/<eventid>/stream -
Xử lý mục phản hồi cho tệp kê khai phát nội dung, phụ đề/chú thích, điểm chèn quảng cáo và thông tin thời gian của nội dung.
{
"stream_manifest": "https://dai.google.com/linear/.../master.m3u8",
"media_verification_url": "https://dai.google.com/linear/.../media/",
"metadata_url": "https://dai.google.com/linear/.../metadata",
"polling_frequency": 10,
"stream_id": "793bf10c-2323-404d-b23b-0a529d96e651:MRN",
}
-
Yêu cầu siêu dữ liệu quảng cáo ở tần suất thăm dò hoặc cho mỗi mã nhận dạng nội dung đa phương tiện quảng cáo ID3, thêm mã nhận dạng nội dung đa phương tiện quảng cáo vào URL siêu dữ liệu trong một tham số truy vấn.
{
"ad_breaks": {
"0001127859": {
"ads": 3,
"duration": 30,
"type": "mid"
}
},
"ads": {
"0001127859_ad2": {
"ad_break_id": "0001127859",
"ad_id": "39135088",
"ad_system": "GDFP",
"clickthrough_url": "http://pubads.g.doubleclick.net/pcs/click?...",
"creative_id": "103990016608",
"description": "Ví dụ về quảng cáo truyền hình truyền thống 10 giây",
"duration": 10,
"position": 2,
"title": "Ví dụ về quảng cáo truyền hình truyền thống"
}
},
"tags": {
"google_0028792773": {
"ad": "0001127859_ad2",
"ad_break_id": "0001127859",
"type": "firstquartile"
}, ...
}
}
-
Đối với mỗi quảng cáo, hãy kích hoạt
media_verification_url
với giá trị ID3 thêm vào phía sau từ việc phát nội dung đa phương tiện quảng cáo.https://dai.google.com/view/p/service/linear/stream/f0b8970b-cacb-4a9f-83ee-2ef29db47129:CBF2/loc/CBF2/network/51636543/event/sN_IYUG8STe1ZzhIIE_ksA/media/
Các sự kiện Tiến trình được cung cấp để phân biệt việc phát trong và ngoài điểm chèn quảng cáo và không nhằm các mục đích theo dõi quảng cáo khác.
Bạn có thể xác định các sự kiện tiến trình bằng cách tìm kiếm tệp json siêu dữ liệu cho giá trị nhận dạng nội dung đa phương tiện và xác minh rằng type
trường này được đặt thành progress
. Bạn có thể sử dụng ID3 tiến trình, chẳng hạn, để chặn các mục điều khiển video.
Phát hiện thời điểm ngắt quảng cáo bắt đầu/kết thúc trong luồng bằng API DAI
DAI chèn siêu dữ liệu ID3 cho các sự kiện tứ phân vị (chẳng hạn như Điểm bắt đầu, Điểm tứ phân vị đầu tiên, Điểm giữa, Điểm tứ phân vị thứ ba và Điểm hoàn tất) vào phân đoạn quảng cáo và các sự kiện tiến trình (mỗi giây một lần) vào phân đoạn quảng cáo và phân đoạn phương tiện chặn. Vào lần đầu nhận thấy thẻ ID3 bất kỳ như vậy, sự kiện "đã bắt đầu chèn quảng cáo" có thể xuất hiện. Sau đó, khi không gặp thẻ ID3 nào như vậy trong 2,5 giây, sự kiện "đã kết thúc chèn quảng cáo" có thể xuất hiện. Bạn có thể xác định các thẻ ID3 chèn DAI bằng tiền tố "google_
" của chúng và sự hiện diện của các thẻ đó trong tệp JSON siêu dữ liệu.
Linh động cập nhật động tiêu chí nhắm mục tiêu và/hoặc khóa-giá trị cho mỗi sự kiện phát của người dùng
Bạn có thể dùng session_update_url
để thay thế tất cả các thông số thẻ quảng cáo sử dụng cho các yêu cầu quảng cáo sắp tới trong một sự kiện phát trực tiếp (tương tự như replaceAdTagParameters
). Cách này rất hữu ích trong những trường hợp thông tin nhắm mục tiêu cần cập nhật cho từng chương trình và người dùng (ví dụ: đối với các sự kiện thể thao trực tiếp có thể không biết trước các tiêu chí nhắm mục tiêu).