

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# ADS リクエストの MediaTailor プレイヤー変数
<a name="variables-player"></a>

AWS Elemental MediaTailor テンプレート ADS URL で`player_params.<query_parameter_name>`変数を指定する AWS Elemental MediaTailor ように を設定すると、 はプレイヤーから受信したデータを ADS に送信します。例えば、プレイヤーが MediaTailor に対するリクエストで `user_id` という名前のクエリパラメータを送信する場合、ADS リクエストでそのデータを渡すには、ADS URL 設定に `[player_params.user_id]` を含めます。

これにより、ADS リクエストに含まれるクエリパラメータを制御できます。通常、ADS が認識する特殊なクエリパラメータを ADS リクエスト URL に追加し、そのパラメータの値としてキーと値のペアを指定します。

この後の手順で使用されている例では、以下のキーと値のペアを使用しています。
+ *param1* と値 *value1:*
+ *param2* と値 *value2:*

**クエリパラメータをキーバリューペアとして追加する** 

1. で AWS Elemental MediaTailor、パラメータを参照するように ADS リクエストテンプレート URL を設定します。以下の URL では、サンプルパラメータが含まれていることがわかります。

   ```
   https://my.ads.com/path?param1=[player_params.param1]&param2=[player_params.param2]
   ```

1. (オプション) サーバー側の広告追跡レポートの場合は、プレイヤーのキーバリューペアを URL でエンコードします。MediaTailor がセッション開始リクエストを受信すると、値を URL で 1 回エンコードしてから、それらを ADS リクエスト URL に代入します。
**注記**  
ADS が URL でエンコードされた値を必要とする場合は、プレイヤーでこの値を 2 回 URL エンコードします。そうすることで、MediaTailor によって行われたデコードから、ADS のために 1 回エンコードされた値が得られます。

   例えば、ADS に送信された値のデコードされた表現が `param1=value1:&param2=value2:` である場合、URL でエンコードされた表現は `param1=value1%3A&param2=value2%3A` です。

1. プレイヤーからのセッション開始呼び出しで、キーバリューペアを単一のクエリパラメータの値として 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 はプレイヤーリクエストを受信したときにパラメータをデコードします。クライアント側のレポートの場合、MediaTailor は JSON ペイロードで受信したパラメータを変更しません。MediaTailor は以下のリクエストを ADS に送信します。

```
https://my.ads.com/<path>?param1=value1:&param2=value2:
```

そうすることで、`param1` と `param2` のキーバリューペアが第 1 クラスのクエリパラメータとして ADS リクエストに含まれます。