Google 动态广告插播 (DAI) 支持高并发直播。广告插播时间点提前通知 (EABN) 是指请求 Google DAI 安排即将到来的广告插播时间点或立即开始广告决策,从而优化广告填充率和广告加载时间。
如需针对全服务、广告连播投放或服务器引导型广告插入启动广告插播提前通知,请使用 AdBreaks
资源。此资源可为您通过 Google Ad Manager 界面或 Google Ad Manager SOAP API LiveStreamEventService 创建的所有直播创建和管理广告插播时间点。
本页介绍了如何将广告插播时间点安排为广告插播提前通知。
前提条件
如需创建或管理广告插播时间点,您需要拥有直播系统生成的素材资源键或自定义素材资源键。您也可以在直播详情页面上找到这些键。请参阅使用 Google Ad Manager 界面为 DAI 设置直播。
安排广告插播时间点
当直播观看人数增加时,您可以安排广告插播时间。对于每项直播活动,请使用 Create
服务方法单独安排一个广告插播时间点,最早可提前 6 小时。请注明预计开始时间和广告插播 ID。DAI 会在接近预定时间时开始进行广告决策。对于立即插播广告的决策,请忽略广告插播预计开始时间。
如需让 Google DAI 立即开始做出广告决策,您可以在调用 Create
时省略广告插播的预计开始时间。
以下示例为类型为 Linear
的直播活动安排了广告插播时间,该广告插播时间的开始时间为 2025 年 3 月 6 日下午 4:00(世界协调时间 [UTC]):
cURL
curl 'https://admanager.googleapis.com/v1/networks/NETWORK_CODE/liveStreamEventsByAssetKey/ASSET_KEY/adBreaks' \
-H 'authorization: Bearer ACCESS_TOKEN' \
-H 'content-type: application/json' \
--data-raw '{"adBreakId":"mid-roll-1","assetKey":"ASSET_KEY","duration":"30s","expectedStartTime":"2025-03-06T16:00:00Z"}'
Node.js
fetch("https://admanager.googleapis.com/v1/networks/NETWORK_CODE/liveStreamEventsByAssetKey/ASSET_KEY/adBreaks", {
"headers": {
"authorization":
"Bearer ACCESS_TOKEN",
"Content-Type": "application/json",
},
"body": JSON.stringify({
"adBreakId": "mid-roll-1",
"duration": "30s",
"expectedStartTime": "2025-03-06T16:00:00Z"
}),
"method": "POST"
});
如果成功,您会看到以下 JSON 响应:
{
"name": "networks/.../liveStreamEventsByAssetKey/.../adBreaks/mid-roll-1",
"adBreakId": "mid-roll-1",
"assetKey": "...",
"expectedStartTime": "2025-03-06T16:00:00Z",
"duration": "30s",
"breakState": "SCHEDULED"
}
如需查询广告插播时间点,请使用 List
方法。如需检查广告插播的详细信息,请使用 Get
方法。
以下示例列出了直播活动的所有广告插播时间点:
cURL
curl 'https://admanager.googleapis.com/v1/networks/NETWORK_CODE/liveStreamEventsByAssetKey/ASSET_KEY/adBreaks' \
-H 'authorization: Bearer ACCESS_TOKEN'
Node.js
fetch(
"https://admanager.googleapis.com/v1/networks/NETWORK_CODE/liveStreamEventsByAssetKey/ASSET_KEY/adBreaks",
{
"headers": {
"authorization": "Bearer ACCESS_TOKEN",
},
"method": "GET"
}
);
如果成功,您会看到以下 JSON 响应:
{
"adBreaks": [
{
"name": "networks/.../liveStreamEventsByAssetKey/.../adBreaks/mid-roll-1",
"adBreakId": "mid-roll-1",
"assetKey": "...",
"expectedStartTime": "2025-03-06T16:00:00Z",
"duration": "30s",
"breakState": "DECISIONED",
"breakSequence": "1"
}
]
}
如果您想将当前广告插播时间提前,请使用 Update
方法更改预计开始时间。如果您想取消当前的广告插播,请在其状态变为 COMPLETED
之前使用 Delete
方法。
如需再创建一个广告插播时间点,请等待当前广告插播时间点的状态变为 COMPLETED
。