本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用玩家变量
AWS Elemental MediaTailor 要配置为将从玩家那里收到的数据发送到 ADS,请在模板 ADS 网址中指定player_params.<query_parameter_name>
变量。例如,如果玩家向发送请求user_id
中名为的查询参数 MediaTailor,则要在 ADS 请求中传递该数据,请将其包含[player_params.user_id]
在 ADS 网址配置中。
这使您能够控制 ADS 请求中包含的查询参数。通常,您将 ADS 可识别的特殊查询参数添加到 ADS 请求 URL,并提供键-值对作为参数值。
以下过程中使用的示例将使用以下键-值对:
-
值为 1 的 param1:
-
值为 2 的 param2:
添加查询参数作为键-值对
-
在中 AWS Elemental MediaTailor,配置 ADS 请求模板网址以引用参数。以下 URL 显示包含了示例参数:
https://my.ads.com/path?param1=[player_params.param1]¶m2=[player_params.param2]
-
(可选)对于服务器端广告跟踪报告,对播放器上的键-值对进行 URL 编码。 MediaTailor 收到会话初始化请求时,它会对值进行网址解码一次,然后再将其替换为 ADS 请求网址。
注意
如果您的 ADS 需要 URL 编码值,请在播放器上对值进行两次 URL 编码。这样,由完成的解码就会为 AD MediaTailor S 生成一个曾经编码过的值。
例如,如果发送到 ADS 的值的解码表示形式为
param1=value1:¶m2=value2:
,则 URL 编码表示形式为param1=value1%3A¶m2=value2%3A
。 -
在来自玩家的会话初始化调用中,将键值对 MediaTailor 作为单个查询参数的值传递给。以下示例调用将为服务器端和客户端广告跟踪报告提供示例键-值对。
-
服务器端广告跟踪报告的示例请求 - 使用 URL 编码对
HLS:
<master>.m3u8?ads.param1=value1%3A&ads.param2=value2%3A
DASH:
<manifest>.mpd?ads.param1=value1%3A&ads.param2=value2%3A
-
客户端广告跟踪报告的示例请求 - 不使用 URL 编码
HLS:
POST <master>.m3u8 { "adsParams": { "param1": "value1:", "param2": "value2:" } }
DASH:
POST <manifest>.mpd { "adsParams": { "param1": "value1:", "param2": "value2:" } }
-
对于服务器端报告,在收到玩家请求时对参数进行 MediaTailor 解码。对于客户端报告,它不会更改 JSON 负载中接收到的参数。 MediaTailor 向 ADS 发送以下请求:
https://my.ads.com/<path>?param1=value1:¶m2=value2:
这样,param1
和 param2
键-值对将作为 ADS 请求中的第一类查询参数包含在内。