使用玩家变量 - AWS Elemental MediaTailor

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用玩家变量

AWS Elemental MediaTailor 要配置为将从玩家收到的数据发送到ADS,请在模板ADSURL中指定player_params.<query_parameter_name>变量。例如,如果玩家向发送请求user_id中名为的查询参数 MediaTailor,则要在请求中传递该数据,ADS请将其包含[player_params.user_id]在ADSURL配置中。

这使您可以控制ADS请求中包含的查询参数。通常,您可以向ADS请求中添加一个特殊ADS的查询参数,URL并提供键值对作为参数的值。

以下过程中使用的示例将使用以下键-值对:

  • 值为 1 的 param1

  • 值为 2 的 param2

添加查询参数作为键-值对

  1. 在中 AWS Elemental MediaTailor,配置ADS请求模板URL以引用参数。以下URL显示了示例参数的包含情况:

    https://my.ads.com/path?param1=[player_params.param1]&param2=[player_params.param2]
  2. (可选)对于服务器端广告跟踪报告,请在播放器上对键值对进行 URL-编码。当 MediaTailor 收到会话初始化请求时,它会对值进行一次URL解码,然后再将其替换到请求中。ADS URL

    注意

    如果你ADS需要一个 URL-URL encoded 的值,请在播放器上对该值进行两次-编码。这样,由完成的解码会 MediaTailor 生成一个曾经编码过的值。ADS

    例如,如果发送到的值的解码表示形式ADS为param1=value1:&param2=value2:,则URL编码后的表示形式为。param1=value1%3A&param2=value2%3A

  3. 在来自玩家的会话初始化调用中,将键值对 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:&param2=value2:

通过这种方式,param1param2键值对作为第一类查询参数包含在请求中。ADS