

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Monitoraggio degli annunci lato client
<a name="ad-reporting-client-side"></a>

Utilizzando l'API di tracciamento AWS Elemental MediaTailor lato client, puoi incorporare i controlli del giocatore durante le interruzioni pubblicitarie nei flussi di lavoro di streaming. Nel tracciamento lato client, il player o il client invia eventi di tracciamento, come impressioni e annunci in quartile, all'Ad Decision Server (ADS) e ad altre entità di verifica degli annunci. Questi eventi tengono traccia sia dello stato complessivo delle interruzioni pubblicitarie sia dei singoli annunci pubblicati durante ogni interruzione. Per ulteriori informazioni su impression and quartile (ADS) e altre entità di verifica degli annunci. Per ulteriori informazioni su impression e quartile ad beaconing, consulta. [Beaconing lato client](ad-reporting-client-side-beaconing.md) Per ulteriori informazioni su ADS e altre entità di verifica degli annunci, consulta. [Integrazioni per il tracciamento degli annunci sul lato client](ad-reporting-client-side-ad-tracking-integrations.md)

Per informazioni sul trasferimento dei parametri dei giocatori e dei dati della sessione all'ADS per il monitoraggio lato client, consulta e. [MediaTailor variabili player per le richieste ADS](variables-player.md) [MediaTailor variabili di sessione per le richieste ADS](variables-session.md)

Il tracciamento lato client abilita funzionalità come le seguenti: 
+ Timer per il conto alla rovescia di Ad-Break: per ulteriori informazioni, consulta. [Aggiungi un conto alla rovescia](ad-reporting-client-side-ad-tracking-schema-player-controls.md#ad-reporting-client-side-ad-tracking-schema-player-controls-ad-countdown-timer)
+ Ad click-through: per ulteriori informazioni, consulta. [E click-through](ad-reporting-client-side-ad-tracking-schema-player-controls.md#ad-reporting-client-side-ad-tracking-schema-player-controls-ad-clickthrough)
+ Visualizzazione di annunci complementari: per ulteriori informazioni, consulta. [Annunci complementari](ad-reporting-client-side-ad-tracking-schema-player-controls.md#ad-reporting-client-side-ad-tracking-schema-player-controls-companion-ads)
+ Annunci ignorabili: per ulteriori informazioni, consulta. [Annunci ignorabili](ad-reporting-client-side-ad-tracking-schema-player-controls.md#ad-reporting-client-side-ad-tracking-schema-player-controls-skippable-ads)
+ Visualizzazione delle icone VAST per la conformità alla privacy - Per ulteriori informazioni, vedere. [Icone per Google Why This Ad (WTA)](ad-reporting-client-side-ad-tracking-schema-player-controls.md#ad-reporting-client-side-ad-tracking-schema-player-controls-google-wta)
+ Controllo dello scorrimento del mouse da parte dei giocatori durante gli annunci - Per ulteriori informazioni, consulta. [Strofinare](ad-reporting-client-side-ad-tracking-schema-player-controls.md#ad-reporting-client-side-ad-tracking-schema-player-controls-scrubbing)

Utilizzando l'API di tracciamento MediaTailor lato client, puoi inviare metadati al dispositivo di riproduzione che abilita funzionalità oltre al tracciamento lato client:

## Flusso di lavoro di reporting lato client
<a name="ad-reporting-client-side-workflow"></a>

Il diagramma seguente mostra l'intero flusso di lavoro di reporting lato client, dall'inizializzazione della sessione alla riproduzione degli annunci e al beaconing:

![\[MediaTailor diagramma di sequenza di report lato client che mostra l'interazione tra il lettore video, Ad Decision Server MediaTailor, l'origine dei contenuti e i servizi di verifica degli annunci durante l'intero flusso di lavoro, dall'inizializzazione della sessione alla riproduzione degli annunci e al beaconing.\]](http://docs.aws.amazon.com/it_it/mediatailor/latest/ug/images/tracking_flow.png)


Il flusso di lavoro di reporting lato client include i seguenti passaggi:

1. **Inizializzazione della sessione**: il lettore video invia una richiesta POST all'endpoint della MediaTailor sessione con metadati JSON`adsParams`, inclusi token di origine e funzionalità della sessione. MediaTailor risponde con e per la sessione. `manifestUrl` `trackingUrl`

1. **Richiesta manifesto e decisione sull'annuncio**: il giocatore richiede il manifesto personalizzato da MediaTailor. MediaTailor richiede il manifesto dei contenuti originale dall'origine, invia una richiesta di annuncio all'Ad Decision Server (ADS) utilizzando i parametri del giocatore, riceve una risposta VAST con metadati pubblicitari e consegna al giocatore un manifesto personalizzato con marcatori pubblicitari.

1. **Recupero dei dati di tracciamento**: il giocatore interroga l'URL di tracciamento a intervalli regolari (corrispondente alla durata prevista per HLS o al periodo minimo di aggiornamento per DASH). MediaTailor restituisce i metadati di tracciamento JSON contenenti annunci, eventi di tracciamento, beacon e dati di verifica degli annunci. URLs

1. **Riproduzione e segnalazione degli annunci**: durante le pause pubblicitarie, il lettore analizza i metadati di tracciamento, attiva i beacon di impressioni quando inizia la visualizzazione degli annunci, attiva i beacon quartili (start, firstQuartile, midpoint, thirdQuartile, complete) al momento opportuno, carica ed esegue la verifica degli annunci JavaScript se necessario e invia viewability/verification eventi a servizi di verifica di terze parti.

1. **Sondaggio continuo**: il giocatore continua a controllare l'URL di tracciamento per tutta la sessione per ricevere metadati aggiornati sulle interruzioni pubblicitarie imminenti e sui contenuti dinamici.

Questo flusso di lavoro abilita funzionalità avanzate come il conto alla rovescia degli annunci, la funzionalità click-through, gli annunci complementari, gli annunci ignorabili e la visualizzazione delle icone VAST per garantire la conformità alla privacy.

**Topics**
+ [Flusso di lavoro di reporting lato client](#ad-reporting-client-side-workflow)
+ [Abilitazione del tracciamento lato client](#ad-reporting-client-side-enabling)
+ [Parametri del server pubblicitario](#ad-reporting-client-side-ad-server-parameters)
+ [Parametri della query di interazione Origin](#ad-reporting-client-side-origin-interaction-query-parameters)
+ [Funzionalità configurate per la sessione](#ad-reporting-client-side-session-configured-features)
+ [Le migliori pratiche per il tracciamento lato client](#ad-reporting-client-side-best-practices)
+ [Schema e proprietà di tracciamento degli annunci sul lato client](ad-reporting-client-side-ad-tracking-schema.md)
+ [Tempistica delle attività di tracciamento degli annunci](ad-reporting-client-side-ad-tracking-schema-activity-timing.md)
+ [Controlli e funzionalità del player per il tracciamento degli annunci lato client](ad-reporting-client-side-ad-tracking-schema-player-controls.md)
+ [Beaconing lato client](ad-reporting-client-side-beaconing.md)
+ [Modalità ibrida con ad beacon lato server](ad-reporting-hybrid-mode.md)
+ [Integrazioni per il tracciamento degli annunci sul lato client](ad-reporting-client-side-ad-tracking-integrations.md)
+ [Sfogliare gli annunci beacon con GetTracking](#gettracking)

## Abilitazione del tracciamento lato client
<a name="ad-reporting-client-side-enabling"></a>

Abilita il tracciamento lato client per ogni sessione. Il player crea un HTTP sull'endpoint del `POST` prefisso di MediaTailor inizializzazione della sessione della configurazione. Facoltativamente, il player può inviare metadati aggiuntivi MediaTailor da utilizzare per effettuare chiamate pubblicitarie, richiamare l'origine per un manifesto e richiamare o disabilitare funzionalità a livello di sessione. MediaTailor

L'esempio seguente mostra la struttura dei metadati JSON:

```
{
  "adsParams": {                  # 'adsParams' is case sensitive
    "param1": "value1",           # key is not case sensitive
    "param2": "value2",           # Values can contain spaces. For example, 'value 2' is an allowed value. 
    },
  "origin_access_token":"abc123", # this is an example of a query parameter designated for the origin
  "overlayAvails":"on"            # 'overlayAvails' is case sensitive. This is an example of a feature that is enabled at the session level.
}
```

Utilizza la MediaTailor console o l'API per configurare l'URL del modello di richiesta ADS in modo che faccia riferimento a questi parametri. Nell'esempio seguente, `player_params.param1` sono i parametri del giocatore per `param1` e `player_params.param2` sono i parametri del giocatore per`param2`.

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

## Parametri del server pubblicitario
<a name="ad-reporting-client-side-ad-server-parameters"></a>

Al livello più alto della struttura JSON c'è un oggetto JSON. `adsParams` All'interno di questo oggetto ci sono key/value coppie che MediaTailor possono essere lette e inviate all'ad server in tutte le richieste di sessione. MediaTailor supporta i seguenti ad server:
+ Google Ad Manager 
+ SpringServe 
+ FreeWheel 
+ Publica 

## Parametri della query di interazione Origin
<a name="ad-reporting-client-side-origin-interaction-query-parameters"></a>

Eventuali key/value coppie riservate all'interno del livello più alto della struttura JSON, ad esempio, e `adsParams` `availSuppression``overlayAvails`, non vengono aggiunte all'URL della richiesta di origine sotto forma di parametri di query. Ogni richiesta di manifesto di sessione MediaTailor inviata all'origine contiene questi parametri di query. L'origine ignora i parametri di interrogazione estranei. Ad esempio, MediaTailor può utilizzare le key/value coppie per inviare token di accesso all'origine.

## Funzionalità configurate per la sessione
<a name="ad-reporting-client-side-session-configured-features"></a>

Utilizza la struttura JSON di inizializzazione della sessione per abilitare, disabilitare o sostituire funzionalità come, e. MediaTailor `overlayAvails` `availSuppression` `adSignaling` Qualsiasi configurazione di funzionalità passata durante l'inizializzazione della sessione ha la precedenza sull'impostazione a livello di configurazione. MediaTailor 

**Nota**  
I metadati inviati al MediaTailor momento dell'inizializzazione della sessione sono immutabili e non è possibile aggiungere metadati aggiuntivi per tutta la durata della sessione. Utilizzate i marcatori SCTE-35 per trasportare i dati che cambiano durante la sessione. Per ulteriori informazioni, consulta [MediaTailor variabili di sessione per le richieste ADS](variables-session.md).

**Example : Esecuzione del tracciamento degli annunci sul lato client per HLS**  

```
POST mediatailorURL/v1/session/hashed-account-id/origin-id/asset-id.m3u8

        {
            "adsParams": {
               "deviceType": "ipad"   # This value does not change during the session.
               "uid": "abdgfdyei-2283004-ueu"                     
           }
        }
```

**Example : Esecuzione del tracciamento degli annunci lato client per DASH**  

```
POST mediatailorURL/v1/session/hashed-account-id/origin-id/asset-id.mpd

        {
            "adsParams": {
               "deviceType": "androidmobile",
               "uid": "xjhhddli-9189901-uic" 
           }
        }
```

### Parametro della modalità di segnalazione
<a name="session-initialization-reporting-mode"></a>

È possibile specificare la modalità di segnalazione durante l'inizializzazione di una sessione includendo il parametro nel corpo della richiesta. `reportingMode` Questo parametro controlla se MediaTailor esegue il tracciamento degli annunci sul lato client o sul lato server per la sessione.
+ `client`- Il giocatore esegue il tracciamento degli annunci e invia beacon al server pubblicitario. Questa è la modalità predefinita se non `reportingMode` viene specificato.
+ `server`- MediaTailor esegue il tracciamento degli annunci sul lato server e invia i beacon direttamente al server pubblicitario.

**Example Inizializzazione della sessione con modalità di reporting lato server**  

```
POST mediatailorURL/v1/session/hashed-account-id/origin-id/asset-id.m3u8

        {
            "adsParams": {
               "deviceType": "ipad",
               "uid": "abdgfdyei-2283004-ueu"                     
           },
           "reportingMode": "server"
        }
```

**Example Inizializzazione della sessione con modalità di reporting lato client (esplicita)**  

```
POST mediatailorURL/v1/session/hashed-account-id/origin-id/asset-id.mpd

        {
            "adsParams": {
               "deviceType": "androidmobile",
               "uid": "xjhhddli-9189901-uic" 
           },
           "reportingMode": "client"
        }
```

**Nota**  
Il `reportingMode` parametro viene impostato al momento dell'inizializzazione della sessione e non può essere modificato durante la sessione. Se non `reportingMode` viene specificato no, per MediaTailor impostazione predefinita viene utilizzata la segnalazione lato client per mantenere la compatibilità con le versioni precedenti.

Una risposta corretta è un HTTP `200` con un corpo di risposta. Il corpo contiene un oggetto JSON con una chiave `manifestUrl` e una `trackingUrl` chiave. I valori sono relativi URLs e il lettore può utilizzare sia per la riproduzione che per il tracciamento degli eventi pubblicitari.

```
{
  "manifestUrl": "/v1/dashmaster/hashed-account-id/origin-id/asset-id.m3u8?aws.sessionId=session-id",
  "trackingUrl": "/v1/tracking/hashed-account-id/origin-id/session-id"
}
```

Per ulteriori informazioni sullo schema di tracciamento lato client, vedere. [Schema e proprietà di tracciamento degli annunci sul lato client](ad-reporting-client-side-ad-tracking-schema.md)

## Le migliori pratiche per il tracciamento lato client
<a name="ad-reporting-client-side-best-practices"></a>

Questa sezione descrive le migliori pratiche per il tracciamento lato client per i flussi di lavoro live e MediaTailor VOD.

### Flussi di lavoro in tempo reale
<a name="ad-reporting-client-side-best-practices-live"></a>

Esegui un sondaggio sull'endpoint di tracciamento a intervalli corrispondenti a ogni durata prevista per HLS o al periodo minimo di aggiornamento per DASH, in modo da avere sempre i metadati di tracciamento degli annunci più aggiornati. La corrispondenza di questo intervallo è particolarmente importante nei flussi di lavoro in cui i creativi potrebbero avere un componente interattivo o di sovrapposizione. 

**Nota**  
Alcuni giocatori supportano gli ascoltatori di eventi, che potrebbero essere usati come alternativa ai sondaggi. Ad esempio, la funzione di decorazione degli ID MediaTailor pubblicitari dovrebbe essere abilitata per ogni sessione. Per ulteriori informazioni, consulta [Decorazione dell'annuncio](ad-id-decoration.md). L'utilizzo di questa funzionalità mette a disposizione un intervallo di date (HLS) o un identificatore di elemento di evento (DASH) su ogni annuncio. I giocatori possono utilizzare questi tag manifest per richiedere la chiamata all'endpoint di MediaTailor tracciamento della sessione.

### Flussi di lavoro VOD
<a name="ad-reporting-client-side-best-practices-vod"></a>

Dopo una corretta inizializzazione della sessione e dopo aver MediaTailor ricevuto il primo manifesto contenente i file multimediali, è sufficiente chiamare l'endpoint di tracciamento una sola volta.

![\[Flusso di chiamate per flussi di lavoro VOD. Chiama l'endpoint di tracciamento sul lato client dopo l'inizializzazione della sessione e la MediaTailor ricezione del primo manifesto contenente file multimediali.\]](http://docs.aws.amazon.com/it_it/mediatailor/latest/ug/images/vod-workflow-best-practice.png)


### Inserimento di annunci guidato dal server
<a name="ad-reporting-client-side-best-practices-sgai"></a>

Le sessioni di inserimento di annunci guidate dal server (SGAI) non utilizzano l'API. `GetTracking` Al contrario, quando lo utilizzi`aws.reportingMode=CLIENT`, MediaTailor fornisce informazioni di tracciamento nella `TRACKING` sezione di ogni risposta all'elenco di risorse quando i giocatori richiedono contenuti pubblicitari. La risposta di inizializzazione della sessione non include un`trackingUrl`.

La risposta all'elenco degli asset per le sessioni SGAI tracciate lato client ha la seguente struttura:

```
{
  "ASSETS": [
    { "DURATION": 20.0, "URI": "https://cdn.example.com/ad1/master.m3u8" },
    { "DURATION": 10.0, "URI": "https://cdn.example.com/ad2/master.m3u8" }
  ],
  "TRACKING": {
    ...VAST tracking events and beacon URLs for each ad...
  }
}
```

Quando si implementa il tracciamento lato client per i metodi SGAI:
+ Analizza la `TRACKING` sezione dalle risposte all'elenco delle risorse anziché chiamare `GetTracking`
+ Utilizza il tracciamento URLs fornito nell'elenco delle risorse per la segnalazione degli eventi pubblicitari
+ Attiva i beacon di tracciamento in base agli eventi di riproduzione degli annunci effettivamente registrati nel player
+ Gestisci il tracciamento di ogni interruzione pubblicitaria in modo indipendente man mano che vengono recuperati gli elenchi di risorse

**Importante**  
La `TRACKING` sezione è inclusa nell'elenco delle risorse solo quando `aws.reportingMode=CLIENT` è impostata. Quando viene utilizzata la reportistica lato server (impostazione predefinita per SGAI), MediaTailor omette la `TRACKING` sezione e incorpora invece i dati dei beacon nell'annuncio. URIs Per informazioni dettagliate, vedi [Tracciamento lato server con inserimento di annunci guidato dal server (SGAI)](ad-reporting-server-side-sgai.md).

# Schema e proprietà di tracciamento degli annunci sul lato client
<a name="ad-reporting-client-side-ad-tracking-schema"></a>

Con la funzionalità di tracciamento degli annunci MediaTailor lato client, puoi integrare dati dettagliati di tracciamento degli annunci lato client nel tuo ambiente di gioco. Le sezioni seguenti trattano lo schema generale di tracciamento degli annunci, nonché le proprietà e i valori specifici che lo compongono.

## Schema
<a name="ad-reporting-client-side-ad-tracking-schema-table"></a>

La seguente struttura JSON mostra lo schema di tracciamento degli annunci sul lato client. MediaTailor Questa rappresentazione illustra la struttura di nidificazione dello schema per aiutarti a comprendere le relazioni tra le diverse parti.

Per informazioni dettagliate su ciascuna proprietà, vedere. [Properties](#ad-reporting-client-side-ad-tracking-schema-properties)

```
{
  "avails": [
    {
      "ads": [
        {
          "adID": "string",
          "adParameters": "string",
          "adSystem": "string",
          "adTitle": "string",
          "adVerifications": [
            {
              "executableResource": [
                {
                  "apiFramework": "string",
                  "type": "string",
                  "uri": "string",
                  "language": "string"
                }
              ],
              "javaScriptResource": [
                {
                  "apiFramework": "string",
                  "browserOptional": "string",
                  "uri": "string"
                }
              ],
              "trackingEvents": [
                {
                  "event": "string",
                  "uri": "string"
                }
              ],
              "vendor": "string",
              "verificationParameters": "string"
            }
          ],
          "companionAds": [
            {
              "adParameters": "string",
              "altText": "string",
              "attributes": {
                "adSlotId": "string",
                "apiFramework": "string",
                "assetHeight": "string",
                "assetWidth": "string",
                "expandedHeight": "string",
                "expandedWidth": "string",
                "height": "string",
                "id": "string",
                "pxratio": "string",
                "renderingMode": "string",
                "width": "string"
              },
              "companionClickThrough": "string",
              "companionClickTracking": "string",
              "htmlResource": "string",
              "iFrameResource": "string",
              "sequence": "string",
              "staticResource": "string",
              "trackingEvents": [
                {
                  "event": "string",
                  "uri": "string"
                }
              ]
            }
          ],
          "creativeId": "string",
          "creativeSequence": "string",
          "duration": "string",
          "durationInSeconds": number,
          "extensions": [
            {
              "type": "string",
              "content": "string"
            }
          ],
          "icons": [
            {
              "attributes": {
                "apiFramework": "string",
                "duration": "string",
                "height": "string",
                "offset": "string",
                "program": "string",
                "pxratio": "string",
                "width": "string",
                "xPosition": "string",
                "yPosition": "string"
              },
              "htmlResource": "string",
              "iconClicks": {
                "iconClickThrough": "string",
                "iconClickTracking": {
                  "id": "string"
                },
                "iconClickFallbackImages": [
                  {
                    "altText": "string",
                    "height": "string",
                    "width": "string",
                    "staticResource": {
                      "creativeType": "string",
                      "uri": "string"
                    }
                  }
                ]
              },
              "iconViewTracking": "string",
              "iFrameResource": "string",
              "staticResource": {
                "creativeType": "string",
                "uri": "string"
              }
            }
          ],
          "mediaFiles": {
            "adParameters": "string",
            "duration": "string",
            "durationInSeconds": number,
            "mediaFilesList": [
              {
                "apiFramework": "string",
                "delivery": "string",
                "height": "string",
                "maintainAspectRatio": "string",
                "mediaFileUri": "string",
                "mediaType": "string",
                "scalable": "string",
                "width": "string",
                "bitrate": "string"
              }
            ],
            "mezzanine": "string",
            "startTime": "string",
            "startTimeInSeconds": number,
            "trackingEvents": [
              {
                "beaconUrls": ["string"],
                "duration": "string",
                "durationInSeconds": number,
                "dateTime": "string",
                "eventId": "string",
                "eventType": "string",
                "startTime": "string",
                "startTimeInSeconds": number
              }
            ]
          },
          "startTime": "string",
          "startTimeInSeconds": number,
          "dateTime": "string",
          "adBreakTrackingEvents": [...],
          "vastAdId": "string"
        }
      ],
      "adType": "string",
      "availID": "string",
      "duration": "string",
      "durationInSeconds": number,
      "startTime": "string",
      "startTimeInSeconds": number,
      "dateTime": "string",
      "adMarkerDuration": "string",
      "adProgramDateTime": "string",
      "dashAvailabilityStartTime": "string",
      "hlsAnchorMediaSequenceNumber": "string"
    }
  ],
  "nonLinearAvails": [
    {
      "nonLinearAds": [...],
      "nonLinearAdsList": [...]
    }
  ],
  "nextToken": "string",
  "meta": {}
}
```

## Properties
<a name="ad-reporting-client-side-ad-tracking-schema-properties"></a>

La tabella seguente elenca le proprietà dell'API di tracciamento lato client, le relative definizioni, i tipi di valore e gli esempi.


****  

| Proprietà | Definizione | Value type (Tipo di valore) | Esempio | 
| --- | --- | --- | --- | 
|   adID  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/mediatailor/latest/ug/ad-reporting-client-side-ad-tracking-schema.html) Percorso: `/avails/ads/adId` Mappatura VAST: nessuna  | Stringa | 10 | 
|   adBreakTrackingEvents  |  Un array che trasporta gli eventi di tracciamento VMAP dalla risposta VAST. Per ulteriori informazioni, vedere la sezione 2.3.3 della specifica [VMAP 1.0](https://www.iab.com/guidelines/vmap/). Percorso: `/avails/ads/adBreakTrackingEvents`  | Array |  []  | 
|   adMarkerDuration  |  La durata della disponibilità osservata dal marker dell'annuncio nel manifesto.  | Stringa |  30  | 
|   adParameters  |  Una serie di parametri pubblicitari, provenienti da VAST VPAID, che vengono MediaTailor trasmessi al giocatore. Percorso: `/avails/ads/adParameters` Mappatura VAST: `VAST/Ad/InLine/Creatives/Creative/Linear/AdParameters`  | Stringa |  | 
|   adProgramDateTime  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/mediatailor/latest/ug/ad-reporting-client-side-ad-tracking-schema.html)  | Stringa |  | 
|   ads  |  Un array contenente gli oggetti pubblicitari che compongono l'avail. Gli annunci sono elencati nell'ordine in cui appaiono nel manifesto. Percorso: `/avails/ads`  | Array |  []  | 
|   adSystem  |  Il nome del sistema che pubblica l'annuncio.  Assicurati di fornire un valore. Se non fornisci un valore, possono sorgere problemi.   | Stringa |  myADS  | 
|   adTitle  |  Il titolo dell'annuncio.  | Stringa |  ad1  | 
|   adVerifications  |  Contiene le risorse e i metadati necessari per eseguire il codice di misurazione di terze parti al fine di verificare la riproduzione creativa. Per ulteriori informazioni su questa proprietà, vedere la sezione 3.16 della specifica [VAST](https://iabtechlab.com/standards/vast/) 4.2. MediaTailor supporta `adVerifications` come nodi di estensione VAST 3. Percorso: `/avails/ads/adVerifications` Mappatura VAST: `VAST/Ad/InLine/AdVerifications`  | Array |  []  | 
|   altText  |  Il testo alternativo per l'immagine di un annuncio complementare. Questo testo consente ai giocatori con supporto audio descrittivo per non vedenti di rileggere una descrizione dell'immagine. Percorso: `/avails/ads/companionAds/altText`  | Stringa |  video sequence advertising sneakers  | 
|   apiFramework  |  Imposta su `VPAID` per dire al giocatore che questo annuncio è un annuncio VPAID. Può apparire in più posizioni dello schema.  | Stringa |  VPAID  | 
|   availID  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/mediatailor/latest/ug/ad-reporting-client-side-ad-tracking-schema.html) Percorso: `/avails/availID`  | Stringa |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/mediatailor/latest/ug/ad-reporting-client-side-ad-tracking-schema.html)  | 
|   avails  |  Un array contenente oggetti ad-break, o *avail*, che vengono presentati nella finestra del manifesto attiva. Gli avail sono elencati nell'ordine in cui appaiono nel manifesto. Percorso: `/avails`  | Array |  []  | 
|   adType  |  Il tipo di annuncio. Percorso: `/avails/adType` e `/avails/ads/adType`  | Stringa |  | 
|   dateTime  |  Data e ora del programma, in formato ISO 8601 secondi, per l'inizio della pubblicazione o dell'annuncio. Percorso: e `/avails/dateTime` `/avails/ads/dateTime`  | Stringa |  | 
|   duration  |  Lunghezza, in formato ISO 8601 secondi. La risposta include le durate per l'intero annuncio disponibile e per ogni annuncio e beacon, sebbene la durata del beacon sia sempre zero. `/avails/duration`Percorso: e `/avails/ads/duration`  | Stringa | 15.015 | 
|   durationInSeconds  |  Lunghezza, in formato secondi. Percorso: `/avails/durationInSeconds` e `/avails/ads/durationInSeconds`  | Numero |  | 
|   extensions  |  Estensioni personalizzate di VAST utilizzate dai server pubblicitari. Per ulteriori informazioni sulle estensioni, consulta la sezione 3.18 della [specifica VAST 4.2](https://iabtechlab.com/standards/vast/). Percorso: `/avails/ads/extensions` Mappatura VAST: `VAST/Ad/InLine/Extensions`  | Array | [] | 
|   icons  |  Elementi dell'icona per l'annuncio. Percorso: `/avails/ads/icons` Mappatura VAST: `VAST/Ad/InLine/Creatives/Creative/Linear/Icons`  | Array |  | 
|   mediaFiles  |  Sono disponibili video e altre risorse di cui il giocatore ha bisogno per l'annuncio. Percorso: `/avails/ads/mediaFiles`  | Oggetto |  | 
|   nonLinearAvails  |  Matrice di oggetti non lineari e disponibili. Percorso: `/nonLinearAvails`  | Array |  | 
|   executableResource  |  Risorse eseguibili per la verifica. Percorso: `/avails/ads/adVerifications/executableResource` Mappatura VAST: `VAST/Ad/InLine/AdVerifications/Verification/ExecutableResource`  | Array |  | 
|   javaScriptResource  |  JavaScript risorse per la verifica. Percorso: `/avails/ads/adVerifications/javaScriptResource` Mappatura VAST: `VAST/Ad/InLine/AdVerifications/Verification/JavaScriptResource`  | Array |  | 
|   trackingEvents  |  Monitoraggio degli eventi per la verifica o gli annunci complementari. Percorso: `/avails/ads/adVerifications/trackingEvents` o `/avails/ads/companionAds/trackingEvents`  | Array |  | 
|   vendor  |  Fornitore di verifica. Percorso: `/avails/ads/adVerifications/vendor` Mappatura VAST: `VAST/Ad/InLine/AdVerifications/Verification/@vendor`  | Stringa |  | 
|   uri  |  URI che punta a una risorsa eseguibile, a una risorsa video o a un endpoint di tracciamento. Percorso: varie posizioni nello schema Mappatura VAST: vari elementi CDATA in VAST  | Stringa | https://tracking.example.com/impression | 
|   verificationParameters  |  Parametri di verifica. Percorso: `/avails/ads/adVerifications/verificationParameters` Mappatura VAST: `VAST/Ad/InLine/AdVerifications/Verification/VerificationParameters`  | Stringa |  | 
|   attributes  |  Attributi pubblicitari complementari come dimensioni e modalità di rendering. Percorso: `/avails/ads/companionAds/attributes`  | Oggetto |  | 
|   companionClickThrough  |  Un URL della pagina dell'inserzionista che il lettore multimediale apre quando lo spettatore fa clic sull'annuncio complementare. Percorso: `/avails/ads/companionAds/companionClickThrough` Mappatura VAST: `VAST/Ad/InLine/Creatives/Creative/CompanionAds/Companion/CompanionClickThrough`  | Stringa | https://aws.amazon.com/ | 
|   companionClickTracking  |  L'URL di tracciamento della `companionClickThrough` proprietà. Percorso: `/avails/ads/companionAds/companionClickTracking` Mappatura VAST: `VAST/Ad/InLine/Creatives/Creative/CompanionAds/Companion/CompanionClickTracking`  | Stringa | https://myads.com/beaconing/event=clicktracking | 
|   htmlResource  |  L'HTML con codifica CData che viene inserito direttamente nella pagina HTML del provider di streaming. Percorso: `/avails/ads/companionAds/htmlResource` Mappatura VAST: `VAST/Ad/InLine/Creatives/Creative/CompanionAds/Companion/HTMLResource`  | Stringa | <\$1[CDATA[<\$1doctype html><html><head><meta name=\$1"viewport\$1" content=\$1"width=1, initial-scale=1.0, minimum-scale=1.0,...]]> | 
|   iFrameResource  |  L'URL di un file di risorse HTML che il provider di streaming carica in un iframe. Percorso: `/avails/ads/companionAds/iFrameResource` Mappatura VAST: `VAST/Ad/InLine/Creatives/Creative/CompanionAds/Companion/iFrameResource`  | Stringa |  | 
|   sequence  |  Il valore della sequenza specificato per la creatività nella risposta VAST. Percorso: `/avails/ads/companionAds/sequence`  | Stringa | 1 | 
|   startTime  |  La posizione temporale, nel formato ISO 8601 secondi. Per HLS, è relativa all'inizio della sessione di riproduzione. Per DASH, è relativo all'AST (Availability Start Time) del manifest. La risposta include gli orari di inizio per l'intero spazio pubblicitario e per ogni annuncio e beacon. Percorso: `/avails/startTime` e `/avails/ads/startTime`  | Stringa | PT18.581355S | 
|   startTimeInSeconds  |  La posizione temporale, in formato secondi. Per HLS, si riferisce all'inizio della sessione di riproduzione. Per DASH, è relativo all'AST (Availability Start Time) del manifest. La risposta include gli orari di inizio per l'intero spazio pubblicitario e per ogni annuncio e beacon. Percorso: `/avails/startTimeInSeconds` e `/avails/ads/startTimeInSeconds`  | Numero | 18.581 | 
|   eventId  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/mediatailor/latest/ug/ad-reporting-client-side-ad-tracking-schema.html)  | Stringa |  | 
|   event  |  Il nome dell'evento di tracciamento. Percorso: `/avails/ads/adVerifications/trackingEvents/event` o `/avails/ads/companionAds/trackingEvents/event`  | Stringa | impression, start, firstQuartile, midpoint, thirdQuartile, complete | 
|   beaconUrls  |  L'URL a cui MediaTailor invia l'ad beacon. Percorso: `/avails/ads/mediaFiles/trackingEvents/beaconUrls`  | Array |  | 
|   bitrate  |  Il bitrate della risorsa video. Questa proprietà non è in genere inclusa per una risorsa eseguibile.  | Stringa | 2048 | 
|   companionAds  |  Una o più specifiche relative ai contenuti pubblicitari, ognuna delle quali specifica un file di risorse da utilizzare. Gli annunci complementari accompagnano l'annuncio e forniscono contenuti, come una cornice attorno all'annuncio o un banner, da visualizzare vicino al video. Percorso: `/avails/ads/companionAds`  | Array | [] | 
|   creativeId  |  Il valore dell'`Id`attributo del `Creative` tag per l'annuncio.  | Stringa | creative-1 | 
|   creativeSequence  |  La sequenza in cui deve essere riprodotto un annuncio, in base al `Ad@id` valore della risposta VAST.  | Stringa | 1 | 
|   dashAvailabilityStartTime  |  Per live/dynamic DASH, il manifesto `MPD@availabilityStartTime` di origine.  | Stringa | 2022-10-05T19:38:39.263Z | 
|   delivery  |  Indica se viene utilizzato un `streaming` protocollo `progressive` or.  | Stringa | progressive | 
|   eventType  |  Il tipo di faro. Percorso: `/avails/ads/mediaFiles/trackingEvents/eventType`  | Stringa | impression | 
|   height  |  L'altezza, in pixel, della risorsa video.  | Stringa | 360 | 
|   hlsAnchorMediaSequenceNumber  |  Il numero della sequenza multimediale della sequenza first/oldest multimediale visualizzata nel manifesto di origine HLS.  | Stringa | 77 | 
|   maintainAspectRatio  |  Indica se mantenere le proporzioni del video durante il ridimensionamento.  | Booleano | true | 
|   mediaFilesList  |  Speciifica il video e le altre risorse di cui il giocatore ha bisogno per la pubblicazione dell'annuncio. Percorso: `/avails/ads/mediaFiles/mediaFilesList`  | Array | [] | 
|   mediaFileUri  |  URI che punta a una risorsa eseguibile o a una risorsa video.  | Stringa | https://myad.com/ad/ad134/vpaid.js | 
|   mediaType  |  Il tipo MIME della risorsa creativa o complementare.  | Stringa | video/mp4 | 
|   meta  |  Metadati aggiuntivi per l'annuncio.  | Oggetto |  | 
|   mezzanine  |  L'URL della MP4 risorsa mezzanine, specificato se l'annuncio VPAID ne include uno. Percorso: `/avails/ads/mediaFiles/mezzanine`  | Stringa | https://gcdn.2mdn.net/videoplayback/id/itag/ck2/file/file.mp4 | 
|   nextToken  |  Il valore del token che punta alla pagina successiva dei risultati, quando tale valore esiste.  | Stringa | UFQzOS44NzNTXzIwMjMtMDctMzFUMTY6NTA6MDYuMzUwNjI2ODQ1Wl8x | 
|   nonLinearAds  |  Annunci non lineari che vengono visualizzati accanto ai contenuti video.  | Array | [] | 
|   nonLinearAdsList  |  Elenco di annunci non lineari.  | Array | [] | 
|   scalable  |  Indica se ridimensionare il video in base ad altre dimensioni.  | Booleano | true | 
|   skipOffset  |  Il valore temporale che identifica quando il giocatore mette a disposizione dell'utente i controlli di salto.  | Stringa | 00:00:05 | 
|   staticResource  |  L'URL di un file creativo statico utilizzato per il componente pubblicitario. Percorso: `/avails/ads/companionAds/staticResource`  | Stringa | https://very-interactive-ads.com/campaign1/file.json?c=1019113602 | 
|   vastAdId  |  Il valore dell'`Id`attributo del `Ad` tag.  | Stringa | ad1 | 
|   width  |  La larghezza, in pixel, della risorsa video.  | Stringa | 640 | 
|   xPosition  |  La posizione orizzontale di un'icona all'interno del lettore video. Può essere un valore di pixel specifico o una posizione come «sinistra» o «destra». Percorso: `/avails/ads/icons/attributes/xPosition`  | Stringa | left o 10 | 
|   yPosition  |  La posizione verticale di un'icona all'interno del lettore video. Può essere un valore di pixel specifico o una posizione come «in alto» o «in basso». Percorso: `/avails/ads/icons/attributes/yPosition`  | Stringa | top o 10 | 
|   iconClicks  |  Contiene informazioni relative ai clic e al tracciamento di un'icona. Percorso: `/avails/ads/icons/iconClicks`  | Oggetto |  | 
|   iconClickThrough  |  Un URL della pagina dell'inserzionista che il lettore multimediale apre quando lo spettatore fa clic sull'icona. Percorso: `/avails/ads/icons/iconClicks/iconClickThrough`  | Stringa | https://advertiser.com/landing-page | 
|   iconClickTracking  |  L'URL di tracciamento per la `iconClickThrough` proprietà. Percorso: `/avails/ads/icons/iconClicks/iconClickTracking`  | Oggetto |  | 
|   iconClickFallbackImages  |  Una serie di immagini di riserva da visualizzare se l'icona non può essere visualizzata. Percorso: `/avails/ads/icons/iconClicks/iconClickFallbackImages`  | Array |  | 
|   iconViewTracking  |  L'URL per tracciare quando viene visualizzata un'icona. Percorso: `/avails/ads/icons/iconViewTracking`  | Stringa | https://tracking.example.com/icon-view | 
|   offset  |  L'offset temporale relativo alla visualizzazione di un'icona durante la riproduzione di un annuncio. Percorso: `/avails/ads/icons/attributes/offset`  | Stringa | 00:00:05 | 
|   program  |  Il programma o l'iniziativa associata all'icona, ad esempio "AdChoices». Percorso: `/avails/ads/icons/attributes/program`  | Stringa | AdChoices | 
|   pxratio  |  Il rapporto dei pixel dell'icona o dell'annuncio complementare, utilizzato per schermi ad alto DPI. Percorso: o `/avails/ads/icons/attributes/pxratio` `/avails/ads/companionAds/attributes/pxratio`  | Stringa | 1 o 2 | 
|   type  |  Il tipo di risorsa o estensione. Percorso: `/avails/ads/extensions/type` o `/avails/ads/adVerifications/executableResource/type`  | Stringa | text/javascript | 
|   content  |  Il contenuto di un'estensione. Percorso: `/avails/ads/extensions/content`  | Stringa |  | 
|   language  |  Il linguaggio di programmazione di una risorsa eseguibile. Percorso: `/avails/ads/adVerifications/executableResource/language`  | Stringa | javascript | 
|   browserOptional  |  Indica se è richiesto il supporto del browser per la JavaScript risorsa. Percorso: `/avails/ads/adVerifications/javaScriptResource/browserOptional`  | Stringa | true o false | 
|   id  |  Un identificatore per vari elementi dello schema. Percorso: `/avails/ads/companionAds/attributes/id` o `/avails/ads/icons/iconClicks/iconClickTracking/id`  | Stringa | companion-1 | 
|   assetHeight  |  L'altezza della risorsa complementare. Percorso: `/avails/ads/companionAds/attributes/assetHeight`  | Stringa | 250 | 
|   assetWidth  |  La larghezza della risorsa pubblicitaria complementare. Percorso: `/avails/ads/companionAds/attributes/assetWidth`  | Stringa | 300 | 
|   expandedHeight  |  L'altezza dell'annuncio complementare quando è espanso. Percorso: `/avails/ads/companionAds/attributes/expandedHeight`  | Stringa | 600 | 
|   expandedWidth  |  La larghezza dell'annuncio complementare quando espanso. Percorso: `/avails/ads/companionAds/attributes/expandedWidth`  | Stringa | 600 | 
|   renderingMode  |  La modalità di rendering per l'annuncio complementare. Percorso: `/avails/ads/companionAds/attributes/renderingMode`  | Stringa | default o transparent | 
|   adSlotId  |  L'ID dello spazio pubblicitario in cui deve essere visualizzato l'annuncio complementare. Percorso: `/avails/ads/companionAds/attributes/adSlotId`  | Stringa | banner-1 | 
|   creativeType  |  Il tipo MIME della risorsa creativa. Percorso: `/avails/ads/icons/staticResource/creativeType`  | Stringa | image/png | 

# Tempistica delle attività di tracciamento degli annunci
<a name="ad-reporting-client-side-ad-tracking-schema-activity-timing"></a>

Con la reportistica lato client, il giocatore deve emettere eventi di tracciamento (beacon) con un livello di precisione. Utilizzando lo schema di tracciamento MediaTailor lato client, puoi assicurarti che, per ogni pagina, annuncio, complemento, overlay ed eventi di tracciamento, siano presenti informazioni su tempistica e durata e in forme diverse.

Utilizza le seguenti coppie MediaTailor chiave/valore per consentire al giocatore di riconciliare accuratamente le attività pubblicitari-eventi, come il monitoraggio degli eventi, con la posizione di riproduzione:
+ [startTime](ad-reporting-client-side-ad-tracking-schema.md#property-starttime) 
+  [startTimeInSeconds](ad-reporting-client-side-ad-tracking-schema.md#property-starttimeinseconds) 
+  [adProgramDateTime](ad-reporting-client-side-ad-tracking-schema.md#property-adprogramdatetime) 
+  [adID](ad-reporting-client-side-ad-tracking-schema.md#property-adid)/[eventId](ad-reporting-client-side-ad-tracking-schema.md#property-eventid) 

HLS e DASH implementano il valore di e in modo diverso: `startTime` `startTimeInSeconds`
+ HLS - I `startTime` valori sono relativi all'inizio della sessione di riproduzione. L'inizio della sessione di riproduzione è definito come tempo zero. L'annuncio `startTime` è la somma dei valori cumulativi di tutte le durate dei `EXT-INF` segmenti che hanno portato alla disponibilità. Il numero di sequenza multimediale del segmento su cui rientra l'annuncio o l'evento di tracciamento corrisponde anche alla `adId` o `eventId` presente nella risposta di tracciamento lato client.
+ DASH:
  + Manifesti live/dinamici: `startTime` i valori sono relativi al manifesto DASH. `MPD@availabilityStartTime` `MPD@avaibilityStartTime`È un punto di riferimento temporale per tutte MediaTailor le sessioni che consumano lo streaming.
  + Manifesti VOD/statici: i `startTime` valori sono relativi all'inizio della sessione di riproduzione. L'inizio della sessione di riproduzione è definito come tempo zero. Ogni annuncio all'interno di Avail è contenuto all'interno del proprio elemento. `Period` L'`Period`elemento ha un `@start` attributo con un valore uguale ai `startTime` valori del payload di tracciamento lato client. Corrisponde `PeriodId` anche alla `adId` o `eventId` nella risposta di tracciamento lato client.

**Example HLS:**  
Nell'esempio seguente, la MediaTailor sessione è iniziata e il manifesto seguente è il primo inviato al client:  

```
#EXTM3U
#EXT-X-VERSION:6
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:4603263
#EXT-X-DISCONTINUITY-SEQUENCE:0
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:23.295678Z
#EXTINF:4.010667,
https://123.cloudfront.net/out/v1/index_1_34.ts
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:27.306345Z
#EXTINF:4.010667,
https://123.cloudfront.net/out/v1/index_1_35.ts
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:31.317012Z
#EXTINF:4.010667,
https://123.cloudfront.net/out/v1/index_1_36.ts
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:35.327679Z
#EXTINF:4.010667,
https://123.cloudfront.net/out/v1/index_1_37.ts
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:39.338346Z
#EXTINF:2.538667,
https://123.cloudfront.net/out/v1/index_1_38.ts
#EXT-X-DISCONTINUITY
#EXT-X-KEY:METHOD=NONE
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:41.453Z
#EXTINF:2.0,
https://123.cloudfront.net/tm/asset_1080_4_8_00001.ts
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:43.453Z
#EXTINF:2.0,
https://123.cloudfront.net/tm/asset_1080_4_8_00002.ts
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:45.453Z
#EXTINF:2.0,
https://123.cloudfront.net/tm/asset_1080_4_8_00003.ts
```
Nel payload JSON di tracciamento lato client, si applicano i seguenti valori:  
+  `startTime`: `"PT18.581355S"` 
+  `startTimeInSeconds`: `18.581` 
+  `availProgramDateTime`: `"2023-05-03T21:24:41.453Z"` 
+  `adId`: `4603269` 

**Example DASH:**  
Nell'esempio seguente, la MediaTailor sessione ottiene un midroll nel manifest. Tieni presente che il valore dell'`@start`attributo del secondo periodo, che è il periodo dell'annuncio, ha un valore relativo al `MPD@availabilityStartTime` valore. Questo valore è quello che viene MediaTailor scritto nei `startTime` campi di risposta al tracciamento sul lato client, per tutte le sessioni.  

```
<?xml version="1.0" encoding="UTF-8"?>
<MPD availabilityStartTime="2022-10-05T19:38:39.263Z" minBufferTime="PT10S" minimumUpdatePeriod="PT2S" profiles="urn:mpeg:dash:profile:isoff-live:2011" publishTime="2023-05-03T22:06:48.411Z" suggestedPresentationDelay="PT10S" timeShiftBufferDepth="PT1M30S" type="dynamic" xmlns="urn:mpeg:dash:schema:mpd:2011" xmlns:scte35="urn:scte:scte35:2013:xml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd">
    <BaseURL>https://123.channel-assembly.mediatailor.us-west-2.amazonaws.com/v1/channel/my-channel/</BaseURL>
    <Location>https://123.cloudfront.net/v1/dash/94063eadf7d8c56e9e2edd84fdf897826a70d0df/MediaTailor-Live-HLS-DASH/channel/channel1/dash.mpd?aws.sessionId=794a15e0-2a7f-4941-a537-9d71627984e5</Location>
    <Period id="1683151479166_1" start="PT5042H25M59.903S" xmlns="urn:mpeg:dash:schema:mpd:2011">
        <BaseURL>https://123.cloudfront.net/out/v1/f1a946be8efa45b0931ea35c9055fb74/ddb73bf548a44551a0059c346226445a/eaa5485198bf497284559efb8172425e/</BaseURL>
        <AdaptationSet ...>
            ...
        </AdaptationSet>
    </Period>
    <Period id="1683151599194_1_1" start="PT5042H27M59.931S">
        <BaseURL>https://123.cloudfront.net/tm/94063eadf7d8c56e9e2edd84fdf897826a70d0df/fpc5omz5wzd2rdepgieibp23ybyqyrme/</BaseURL>
        <AdaptationSet ...>
            ...
        </AdaptationSet>
    </Period>
</MPD>
```
Nel payload JSON di tracciamento lato client, si applicano i seguenti valori:  
+  `startTime`: `"PT5042H27M59.931S"` 
+  `startTimeInSeconds`: `18152879.931` 
+  `availProgramDateTime`: *null* 
+  `adId`: `1683151599194_1_1` 

# Controlli e funzionalità del player per il tracciamento degli annunci lato client
<a name="ad-reporting-client-side-ad-tracking-schema-player-controls"></a>

MediaTailor i metadati di tracciamento lato client supportano vari controlli e funzionalità del giocatore. L'elenco seguente descrive i controlli del giocatore più diffusi.

**Topics**
+ [Strofinare](#ad-reporting-client-side-ad-tracking-schema-player-controls-scrubbing)
+ [Aggiungi un conto alla rovescia](#ad-reporting-client-side-ad-tracking-schema-player-controls-ad-countdown-timer)
+ [Annunci ignorabili](#ad-reporting-client-side-ad-tracking-schema-player-controls-skippable-ads)
+ [E click-through](#ad-reporting-client-side-ad-tracking-schema-player-controls-ad-clickthrough)
+ [Annunci complementari](#ad-reporting-client-side-ad-tracking-schema-player-controls-companion-ads)
+ [Annunci interattivi (SIMID)](#ad-reporting-client-side-ad-tracking-schema-player-controls-simid-ads)
+ [Annunci interattivi (VPAID)](#ad-reporting-client-side-ad-tracking-schema-player-controls-vpaid-ads)
+ [Icone per Google Why This Ad (WTA)](#ad-reporting-client-side-ad-tracking-schema-player-controls-google-wta)

## Strofinare
<a name="ad-reporting-client-side-ad-tracking-schema-player-controls-scrubbing"></a>

Per migliorare l'esperienza di riproduzione, il lettore può visualizzare le posizioni degli annunci nella timeline di riproduzione. MediaTailor rende disponibili queste posizioni pubblicitarie sotto forma di `startTimeInSeconds` valori nella risposta di tracciamento lato client.

**Nota**  
Alcuni provider di streaming impediscono di passare oltre la posizione di un annuncio.

![\[Schermata che mostra le posizioni di MediaTailor marcatura nella timeline del video in cui vengono riprodotti gli annunci.\]](http://docs.aws.amazon.com/it_it/mediatailor/latest/ug/images/scrubbing.png)


La seguente risposta JSON del payload di tracciamento lato client mostra l'ora di inizio di avail (ad break) all'interno dell'oggetto JSON root dell'array avails. Il giocatore utilizza questi dati per mostrare la posizione dell'interruzione pubblicitaria sulla timeline del giocatore, a 28 secondi.

```
{
  "avails": [
    {
      "adBreakTrackingEvents": [],
      "adMarkerDuration": null,
      "ads": [...],
      "availId": "7",
      "availProgramDateTime": null,
      "duration": "PT30S",
      "durationInSeconds": 30,
      "meta": null,
      "nonLinearAdsList": [],
      "startTime": "PT28S",
      "startTimeInSeconds": 28
    }
  ],
  "dashAvailabilityStartTime": null,
  "hlsAnchorMediaSequenceNumber": null,
  "nextToken": "UFQxMk0zNC44NjhTXzIwMjMtMDctMjFUMjA6MjM6MDcuNzc1NzE2MzAyWl8x",
  "nonLinearAvails": []
}
```

## Aggiungi un conto alla rovescia
<a name="ad-reporting-client-side-ad-tracking-schema-player-controls-ad-countdown-timer"></a>

Con MediaTailor puoi utilizzare un timer per il conto alla rovescia degli annunci per coinvolgere il pubblico durante la visualizzazione delle interruzioni pubblicitarie. Il pubblico può utilizzare il timer per capire quando termina l'interruzione pubblicitaria e il programma riprende.

![\[Schermata che MediaTailor mostra un timer per il conto alla rovescia degli annunci, che indica al pubblico il tempo che manca alla ripresa del programma.\]](http://docs.aws.amazon.com/it_it/mediatailor/latest/ug/images/ad-countdown-timer.png)


Gli elementi dei metadati di tracciamento lato client che svolgono un ruolo nel timer del conto alla rovescia degli annunci sono,, e. `startTime` `startTimeInSeconds` `duration` `durationInSeconds` Il giocatore utilizza questi metadati, insieme al tempo trascorso della sessione, di cui tiene traccia separatamente, per determinare quando visualizzare il timer e il valore da cui deve partire il conto alla rovescia.

La seguente risposta JSON del payload di tracciamento lato client mostra le informazioni necessarie per visualizzare un timer per il conto alla rovescia degli annunci.

```
{
  "avails": [
    {
      "adBreakTrackingEvents": [],
      "adMarkerDuration": null,
      "ads": [...],
      "availId": "7",
      "availProgramDateTime": null,
      "duration": "PT30S",
      "durationInSeconds": 30,
      "meta": null,
      "nonLinearAdsList": [],
      "startTime": "PT28S",
      "startTimeInSeconds": 28
    }
  ],
  "dashAvailabilityStartTime": null,
  "hlsAnchorMediaSequenceNumber": null,
  "nextToken": "UFQxMk0zNC44NjhTXzIwMjMtMDctMjFUMjA6MjM6MDcuNzc1NzE2MzAyWl8x",
  "nonLinearAvails": []
}
```

Quando il tempo trascorso della sessione raggiunge l'ora di inizio della disponibilità, il giocatore visualizza un conto alla rovescia con un valore che corrisponde alla durata della disponibilità. Il valore del conto alla rovescia diminuisce man mano che il tempo trascorso avanza oltre l'ora di inizio della partita.

**Example formula: Conto alla rovescia per HLS (live e VOD) e DASH (VOD)**  
+ `session_start_time`= la somma di tutti i valori di `EXT-INF` durata - il valore di durata delle tre sequenze multimediali più recenti `EXT-INF`
+ valore del timer = `duration` - (-) `session_elapsed_time` `startTime`

![\[Diagramma che mostra il calcolo del timer per il conto alla rovescia degli annunci, in base all'ora di inizio della sessione e all'ora di inizio della disponibilità, per i manifesti HLS (live e VOD) e DASH (VOD).\]](http://docs.aws.amazon.com/it_it/mediatailor/latest/ug/images/ad-countdown-timer-hls-dash-vod.png)


**Example formula: Conto alla rovescia per DASH (live)**  
+ `session_start_time`= (segmenti più recenti `startTime` \$1`duration`)/- `timescale` `MPD@suggestedPresentationDelay`
+ valore del timer = `duration` - (`session_elapsed_time`-`startTime`)

![\[Diagramma che mostra il calcolo del timer per il conto alla rovescia degli annunci, in base all'ora di inizio della sessione e all'ora di inizio della disponibilità, per i manifesti DASH live.\]](http://docs.aws.amazon.com/it_it/mediatailor/latest/ug/images/ad-countdown-timer-dash-live.png)


## Annunci ignorabili
<a name="ad-reporting-client-side-ad-tracking-schema-player-controls-skippable-ads"></a>

*Gli annunci ignorabili* sono spot pubblicitari che consentono allo spettatore di saltare parte dell'annuncio per riprendere a visualizzare il programma. In VAST, l'`Linear@skipOffset`attributo identifica un annuncio ignorabile. 

La seguente risposta VAST mostra come utilizzare un annuncio ignorabile:

```
<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
  <Ad>
    <InLine>
      ...
      <Creatives>
        <Creative id="1" sequence="1">
          <Linear skipoffset="00:00:05">
            <Duration>00:00:15</Duration>
            <MediaFiles>
              <MediaFile id="EMT" delivery="progressive" width="640" height="360" type="video/mp4" bitrate="143" scalable="true" maintainAspectRatio="true"><![CDATA[https://ads.com/file.mp4]]></MediaFile>
            </MediaFiles>
          </Linear>
        </Creative>
      </Creatives>
      ...
    </InLine>
  </Ad>
</VAST>
```

La seguente risposta JSON del payload di tracciamento lato client mostra i metadati dell'annuncio all'interno dell'array. `ads` L'array contiene il `skipOffset` valore MediaTailor ottenuto dalla risposta VAST.

```
{
  "avails": [
    {
      "adBreakTrackingEvents": [],
      "adMarkerDuration": null,
      "ads": [
        {
          "adId": "1",
          "adParameters": "",
          "adProgramDateTime": "2023-07-31T16:11:40.693Z",
          "adSystem": "2.0",
          "adTitle": "AD-skiing-15",
          "adVerifications": [],
          "companionAds": [...],
          "creativeId": "1",
          "creativeSequence": "1",
          "duration": "PT15.015S",
          "durationInSeconds": 15.015,
          "extensions": [],
          "mediaFiles": {
            "mediaFilesList": [],
            "mezzanine": ""
          },
          "skipOffset": "00:00:05",
          "startTime": "PT9.943S",
          "startTimeInSeconds": 9.943,
          "trackingEvents": [
            {
              "beaconUrls": [
                "https://adserverbeaconing.com/v1/impression"
              ],
              "duration": "PT15.015S",
              "durationInSeconds": 15.015,
              "eventId": "2697726",
              "eventProgramDateTime": null,
              "eventType": "impression",
              "startTime": "PT9.943S",
              "startTimeInSeconds": 9.943
            }
          ],
          "vastAdId": ""
        }
      ],
      "availId": "2697726",
      "availProgramDateTime": "2023-07-31T16:11:40.693Z",
      "duration": "PT15.015S",
      "durationInSeconds": 15.015,
      "meta": null,
      "nonLinearAdsList": [],
      "startTime": "PT9.943S",
      "startTimeInSeconds": 9.943
    }
  ],
  "dashAvailabilityStartTime": null,
  "hlsAnchorMediaSequenceNumber": null,
  "nextToken": "",
  "nonLinearAvails": []
}
```

## E click-through
<a name="ad-reporting-client-side-ad-tracking-schema-player-controls-ad-clickthrough"></a>

Il click-through URIs consente agli inserzionisti di misurare il successo di un annuncio nel catturare l'attenzione degli spettatori. Dopo che uno spettatore fa clic sul fotogramma video attivo di un annuncio in corso, un browser Web apre l'URI della home page o della pagina di destinazione della campagna dell'inserzionista. Lo sviluppatore del player determina il comportamento dei clic, ad esempio sovrapponendo un pulsante o un'etichetta al video dell'annuncio con un messaggio su cui fare clic per saperne di più. Gli sviluppatori di player spesso mettono in pausa il video dell'annuncio dopo che gli spettatori hanno fatto clic sul fotogramma video attivo.

![\[Schermata di un annuncio pubblicitario cliccato su un lettore video. Gli spettatori fanno clic sul fotogramma del video. Il giocatore mette in pausa il video, quindi apre un browser Web per indirizzare lo spettatore alla home page dell'inserzionista o alla pagina di destinazione della campagna.\]](http://docs.aws.amazon.com/it_it/mediatailor/latest/ug/images/ad-clickthrough.png)


MediaTailor può analizzare e rendere disponibile qualsiasi evento URLs di click-through video lineare restituito nella risposta VAST. La seguente risposta VAST mostra un esempio di clic su un annuncio.

```
<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
  <Ad>
    <InLine>
      ...
      <Creatives>
        <Creative id="1" sequence="1">
          <Linear>
            <Duration>00:00:15</Duration>
            <MediaFiles>
              <MediaFile id="EMT" delivery="progressive" width="1280" height="720" type="video/mp4" bitrate="143" scalable="true" maintainAspectRatio="true"><![CDATA[https://ads.com/file.mp4]]></MediaFile>
            </MediaFiles>
            <VideoClicks>
              <ClickThrough id="EMT"><![CDATA[https://aws.amazon.com]]></ClickThrough>
              <ClickTracking id="EMT"><![CDATA[https://myads.com/beaconing/event=clicktracking]]></ClickTracking>
            </VideoClicks>
          </Linear>
        </Creative>
      </Creatives>
      ...
    </InLine>
  </Ad>
</VAST>
```

La seguente risposta JSON del payload di tracciamento lato client mostra come MediaTailor vengono visualizzati il click-through e il tracciamento dei clic all'interno dell'array. URLs `trackingEvents` Il tipo di `clickThrough` evento rappresenta l'annuncio click-through e il tipo di evento rappresenta l'URL di tracciamento dei clic. `clickTracking`

```
{
  "avails": [
    {
      "adBreakTrackingEvents": [],
      "adMarkerDuration": null,
      "ads": [
        {
          "adId": "1",
          "adParameters": "",
          "adProgramDateTime": "2023-07-31T16:53:40.577Z",
          "adSystem": "2.0",
          "adTitle": "1",
          "adVerifications": [],
          "companionAds": [],
          "creativeId": "00006",
          "creativeSequence": "1",
          "duration": "PT14.982S",
          "durationInSeconds": 14.982,
          "extensions": [],
          "mediaFiles": {
            "mediaFilesList": [],
            "mezzanine": ""
          },
          "skipOffset": null,
          "startTime": "PT39.339S",
          "startTimeInSeconds": 39.339,
          "trackingEvents": [
            {
              "beaconUrls": [
                "https://myads.com/beaconing/event=impression"
              ],
              "duration": "PT14.982S",
              "durationInSeconds": 14.982,
              "eventId": "2698188",
              "eventProgramDateTime": null,
              "eventType": "impression",
              "startTime": "PT39.339S",
              "startTimeInSeconds": 39.339
            },
            {
              "beaconUrls": [
                "https://aws.amazon.com"
              ],
              "duration": "PT14.982S",
              "durationInSeconds": 14.982,
              "eventId": "2698188",
              "eventProgramDateTime": null,
              "eventType": "clickThrough",
              "startTime": "PT39.339S",
              "startTimeInSeconds": 39.339
            },
            {
              "beaconUrls": [
                "https://myads.com/beaconing/event=clicktracking"
              ],
              "duration": "PT14.982S",
              "durationInSeconds": 14.982,
              "eventId": "2698795",
              "eventProgramDateTime": null,
              "eventType": "clickTracking",
              "startTime": "PT39.339S",
              "startTimeInSeconds": 39.339
            }
          ],
          "vastAdId": ""
        }
      ],
      "availId": "2698188",
      "availProgramDateTime": "2023-07-31T16:53:40.577Z",
      "duration": "PT14.982S",
      "durationInSeconds": 14.982,
      "meta": null,
      "nonLinearAdsList": [],
      "startTime": "PT39.339S",
      "startTimeInSeconds": 39.339
    }
  ],
  "dashAvailabilityStartTime": null,
  "hlsAnchorMediaSequenceNumber": null,
  "nextToken": "UFQzOS4zMzlTXzIwMjMtMDctMzFUMTY6NTQ6MDQuODA1Mzk2NTI5Wl8x",
  "nonLinearAvails": []
}
```

## Annunci complementari
<a name="ad-reporting-client-side-ad-tracking-schema-player-controls-companion-ads"></a>

Un *annuncio complementare* viene visualizzato accanto a una creatività lineare. Utilizza gli annunci complementari per aumentare l'efficacia di uno spot pubblicitario visualizzando informazioni sul prodotto, sul logo e sul marchio. L'annuncio display può contenere codici Quick Response (QR) e aree cliccabili per promuovere il coinvolgimento del pubblico.

MediaTailor supporta gli annunci complementari nella risposta VAST. Può passare attraverso i metadati rispettivamente da `StaticResource``iFrameResource`, e `HTMLResource` nodi.

La seguente risposta VAST mostra un esempio di posizione e formato dell'annuncio lineare e dell'annuncio complementare.

```
<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
  <Ad>
    <InLine>
      ...
      <Creatives>
        <Creative id="1" sequence="1">
          <Linear>
            <Duration>00:00:10</Duration>
            <MediaFiles>
              <MediaFile id="EMT" delivery="progressive" width="640" height="360" type="video/mp4" bitrate="143" scalable="true" maintainAspectRatio="true"><![CDATA[https://ads.com/file.mp4]]></MediaFile>
            </MediaFiles>
          </Linear>
        </Creative>
        <Creative id="2" sequence="1">
          <CompanionAds>
            <Companion id="2" width="300" height="250">
              <StaticResource creativeType="image/png"><![CDATA[https://emt.com/companion/9973499273]]></StaticResource>
              <TrackingEvents>
                <Tracking event="creativeView"><![CDATA[https://beacon.com/1]]></Tracking>
              </TrackingEvents>
              <CompanionClickThrough><![CDATA[https://beacon.com/2]]></CompanionClickThrough>
            </Companion>
            <Companion id="3" width="728" height="90">
              <StaticResource creativeType="image/png"><![CDATA[https://emt.com/companion/1238901823]]></StaticResource>
              <TrackingEvents>
                <Tracking event="creativeView"><![CDATA[https://beacon.com/3]]></Tracking>
              </TrackingEvents>
              <CompanionClickThrough><![CDATA[https://beacon.com/4]]></CompanionClickThrough>
            </Companion>
          </CompanionAds>
        </Creative>
      </Creatives>
      ...
    </InLine>
  </Ad>
</VAST>
```

I dati vengono visualizzati nella risposta di tracciamento lato client nell'`/avail/x/ads/y/companionAds`elenco. Ogni creatività lineare può contenere fino a 6 annunci complementari. Come illustrato nell'esempio seguente, gli annunci complementari vengono visualizzati in un elenco

**Nota**  
Come best practice, gli sviluppatori di applicazioni dovrebbero implementare una logica per rimuovere o scaricare esplicitamente l'annuncio complementare alla fine della creatività.

```
{
  "avails": [
    {
      "adBreakTrackingEvents": [],
      "adMarkerDuration": null,
      "ads": [
        {
          "adId": "0",
          "adParameters": "",
          "adProgramDateTime": null,
          "adSystem": "EMT",
          "adTitle": "sample",
          "adVerifications": [],
          "companionAds": [
            {
              "adParameters": null,
              "altText": null,
              "attributes": {
                "adSlotId": null,
                "apiFramework": null,
                "assetHeight": null,
                "assetWidth": null,
                "expandedHeight": null,
                "expandedWidth": null,
                "height": "250",
                "id": "2",
                "pxratio": null,
                "renderingMode": null,
                "width": "300"
              },
              "companionClickThrough": "https://beacon.com/2",  
              "companionClickTracking": null,
              "htmlResource": null,
              "iFrameResource": null,
              "sequence": "1",
              "staticResource": "https://emt.com/companion/9973499273",
              "trackingEvents": [
                {
                  "beaconUrls": [
                    "https://beacon.com/1"
                  ],
                  "eventType": "creativeView"
                }
              ]
            },
            {
              "adParameters": null,
              "altText": null,
              "attributes": {
                "adSlotId": null,
                "apiFramework": null,
                "assetHeight": null,
                "assetWidth": null,
                "expandedHeight": null,
                "expandedWidth": null,
                "height": "90",
                "id": "3",
                "pxratio": null,
                "renderingMode": null,
                "width": "728"
              },
              "companionClickThrough": "https://beacon.com/4",
              "companionClickTracking": null,
              "htmlResource": null,
              "iFrameResource": null,
              "sequence": "1",
              "staticResource": "https://emt.com/companion/1238901823",
              "trackingEvents": [
                {
                  "beaconUrls": [
                    "https://beacon.com/3"
                  ],
                  "eventType": "creativeView"
                }
              ]
            }
          ],
          "creativeId": "1",
          "creativeSequence": "1",
          "duration": "PT10S",
          "durationInSeconds": 10,
          "extensions": [],
          "mediaFiles": {
            "mediaFilesList": [],
            "mezzanine": ""
          },
          "skipOffset": null,
          "startTime": "PT0S",
          "startTimeInSeconds": 0,
          "trackingEvents": [
            {
              "beaconUrls": [
                "https://beacon.com/impression/1"
              ],
              "duration": "PT10S",
              "durationInSeconds": 10,
              "eventId": "0",
              "eventProgramDateTime": null,
              "eventType": "impression",
              "startTime": "PT0S",
              "startTimeInSeconds": 0
            }
          ],
          "vastAdId": ""
        }
      ],
      "availId": "0",
      "availProgramDateTime": null,
      "duration": "PT10S",
      "durationInSeconds": 10,
      "meta": null,
      "nonLinearAdsList": [],
      "startTime": "PT0S",
      "startTimeInSeconds": 0
    }
  ],
  "dashAvailabilityStartTime": null,
  "hlsAnchorMediaSequenceNumber": null,
  "nextToken": "UFQxMFNfMjAyMy0wNy0wNlQyMToxMDowOC42NzQ4NDA1NjJaXzE%3D",
  "nonLinearAvails": []
}
```

## Annunci interattivi (SIMID)
<a name="ad-reporting-client-side-ad-tracking-schema-player-controls-simid-ads"></a>

*SecureInteractive Media Interface Definition* (SIMID) è uno standard per la pubblicità interattiva introdotto nello standard VAST 4.x dell'Interactive Advertising Bureau (IAB). SIMID separa il caricamento degli elementi interattivi dalla creatività lineare principale del lettore, facendo riferimento a entrambi nella risposta VAST. MediaTailor integra la creatività principale per mantenere l'esperienza di riproduzione e inserisce i metadati per i componenti interattivi nella risposta di tracciamento lato client.

Nell'esempio seguente, la risposta VAST 4, il payload SIMID si trova all'interno del nodo. `InteractiveCreativeFile`

```
<?xml version="1.0"?>
<VAST xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
  <Ad id="1234567">
    <InLine>
      <AdSystem>SampleAdSystem</AdSystem>
      <AdTitle>Linear SIMID Example</AdTitle>
      <Description>SIMID example</Description>
      <Error>https://www.beacons.com/error</Error>
      <Impression>https://www.beacons.com/impression</Impression>
      <Creatives>
        <Creative sequence="1">
          <Linear>
            <Duration>00:00:15</Duration>
            <TrackingEvents>
                ...
            </TrackingEvents>
            <VideoClicks>
              <ClickThrough id="123">https://aws.amazon.com</ClickThrough>
              <ClickTracking id="123">https://www.beacons.com/click</ClickTracking>
            </VideoClicks>
            <MediaFiles>
              <MediaFile delivery="progressive" type="video/mp4">
                                https://interactive-ads.com/interactive-media-ad-sample/media/file.mp4
                            </MediaFile>
              <InteractiveCreativeFile type="text/html" apiFramework="SIMID" variableDuration="true">
                                https://interactive-ads.com/interactive-media-ad-sample/sample_simid.html
                            </InteractiveCreativeFile>
            </MediaFiles>
          </Linear>
        </Creative>
      </Creatives>
    </InLine>
  </Ad>
</VAST>
```

Nella seguente risposta VAST 3, il payload SIMID si trova all'interno del nodo. `Extensions`

```
<?xml version="1.0"?>
<VAST xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
  <Ad id="1234567">
    <InLine>
      <AdSystem>SampleAdSystem</AdSystem>
      <AdTitle>Linear SIMID Example</AdTitle>
      <Description>SIMID example</Description>
      <Impression>https://www.beacons.com/impression</Impression>
      <Creatives>
        <Creative id="1" sequence="1">
          <Linear>
            <Duration>00:00:15</Duration>
            <TrackingEvents>
                ...
            </TrackingEvents>
            <VideoClicks>
              <ClickThrough id="123">https://aws.amazon.com</ClickThrough>
              <ClickTracking id="123">https://myads.com/beaconing/event=clicktracking</ClickTracking>
            </VideoClicks>
            <MediaFiles>
              <MediaFile delivery="progressive" type="video/mp4">
                                https://interactive-ads.com/interactive-media-ad-sample/media/file.mp4
                            </MediaFile>
            </MediaFiles>
          </Linear>
        </Creative>
      </Creatives>
      <Extensions>
        <Extension type="InteractiveCreativeFile">
          <InteractiveCreativeFile type="text/html" apiFramework="SIMID" variableDuration="true">
            https://interactive-ads.com/interactive-media-ad-sample/sample_simid.html
          </InteractiveCreativeFile>
        </Extension>
      </Extensions>
    </InLine>
  </Ad>
</VAST>
```

Nella seguente risposta di tracciamento lato client, i dati SIMID vengono visualizzati nell'elenco. `/avails/x/ads/y/extensions`

```
{
  "avails": [
    {
      "adBreakTrackingEvents": [],
      "adMarkerDuration": null,
      "ads": [
        {
          "adId": "1",
          "adParameters": "",
          "adProgramDateTime": "2023-07-31T16:53:40.577Z",
          "adSystem": "2.0",
          "adTitle": "Linear SIMID Example",
          "adVerifications": [],
          "companionAds": [],
          "creativeId": "1",
          "creativeSequence": "1",
          "duration": "PT14.982S",
          "durationInSeconds": 14.982,
          "extensions": [
            {
              "content": "<InteractiveCreativeFile type=\"text/html\" apiFramework=\"SIMID\" variableDuration=\"true\">\nhttps://interactive-ads.com/interactive-media-ad-sample/sample_simid.html</InteractiveCreativeFile>",
              "type": "InteractiveCreativeFile"
            }
          ],
          "mediaFiles": {
            "mediaFilesList": [],
            "mezzanine": ""
          },
          "skipOffset": null,
          "startTime": "PT39.339S",
          "startTimeInSeconds": 39.339,
          "trackingEvents": [
            {
              "beaconUrls": [
                "https://myads.com/beaconing/event=impression"
              ],
              "duration": "PT14.982S",
              "durationInSeconds": 14.982,
              "eventId": "2698188",
              "eventProgramDateTime": null,
              "eventType": "impression",
              "startTime": "PT39.339S",
              "startTimeInSeconds": 39.339
            },
            {
              "beaconUrls": [
                "https://aws.amazon.com"
              ],
              "duration": "PT14.982S",
              "durationInSeconds": 14.982,
              "eventId": "2698188",
              "eventProgramDateTime": null,
              "eventType": "clickThrough",
              "startTime": "PT39.339S",
              "startTimeInSeconds": 39.339
            },
            {
              "beaconUrls": [
                "https://myads.com/beaconing/event=clicktracking"
              ],
              "duration": "PT14.982S",
              "durationInSeconds": 14.982,
              "eventId": "2698795",
              "eventProgramDateTime": null,
              "eventType": "clickTracking",
              "startTime": "PT39.339S",
              "startTimeInSeconds": 39.339
            }
          ],
          "vastAdId": ""
        }
      ],
      "availId": "2698188",
      "availProgramDateTime": "2023-07-31T16:53:40.577Z",
      "duration": "PT14.982S",
      "durationInSeconds": 14.982,
      "meta": null,
      "nonLinearAdsList": [],
      "startTime": "PT39.339S",
      "startTimeInSeconds": 39.339
    }
  ],
  "dashAvailabilityStartTime": null,
  "hlsAnchorMediaSequenceNumber": null,
  "nextToken": "UFQzOS4zMzlTXzIwMjMtMDctMzFUMTY6NTQ6MDQuODA1Mzk2NTI5Wl8x",
  "nonLinearAvails": []
}
```

## Annunci interattivi (VPAID)
<a name="ad-reporting-client-side-ad-tracking-schema-player-controls-vpaid-ads"></a>

La *Video Player Ad Interface Definition* (VPAID) specifica il protocollo tra l'annuncio e il lettore video che abilita l'interattività degli annunci e altre funzionalità. Per i live streaming, MediaTailor supporta il formato VPAID unendo segmenti di slate per tutta la durata della visualizzazione e inserendo i metadati per i creativi VPAID nella risposta di tracciamento lato client utilizzata dal lettore video. Il player scarica i file VPAID, riproduce la creatività lineare ed esegue gli script del client. Il giocatore *non* dovrebbe mai suonare i segmenti di ardesia.

**Nota**  
VPAID è obsoleto a partire da VAST 4.1.

![\[Diagramma della riproduzione degli annunci VPAID. MediaTailor unisce segmenti di ardesia per la durata di disponibilità nella timeline dei contenuti. Il giocatore passa alla risorsa VPAID per tutta la durata della disponibilità.\]](http://docs.aws.amazon.com/it_it/mediatailor/latest/ug/images/interactive-ads-vpaid.png)


L'esempio seguente mostra il contenuto VPAID nella risposta VAST.

```
<?xml version="1.0"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
  <Ad id="1234567">
    <InLine>
      <AdSystem>GDFP</AdSystem>
      <AdTitle>VPAID</AdTitle>
      <Description>Vpaid Linear Video Ad</Description>
      <Error>http://www.example.com/error</Error>
      <Impression>http://www.example.com/impression</Impression>
      <Creatives>
        <Creative sequence="1">
          <Linear>
            <Duration>00:00:00</Duration>
            <TrackingEvents>
              <Tracking event="start">http://www.example.com/start</Tracking>
              <Tracking event="firstQuartile">http://www.example.com/firstQuartile</Tracking>
              <Tracking event="midpoint">http://www.example.com/midpoint</Tracking>
              <Tracking event="thirdQuartile">http://www.example.com/thirdQuartile</Tracking>
              <Tracking event="complete">http://www.example.com/complete</Tracking>
              <Tracking event="mute">http://www.example.com/mute</Tracking>
              <Tracking event="unmute">http://www.example.com/unmute</Tracking>
              <Tracking event="rewind">http://www.example.com/rewind</Tracking>
              <Tracking event="pause">http://www.example.com/pause</Tracking>
              <Tracking event="resume">http://www.example.com/resume</Tracking>
              <Tracking event="fullscreen">http://www.example.com/fullscreen</Tracking>
              <Tracking event="creativeView">http://www.example.com/creativeView</Tracking>
              <Tracking event="acceptInvitation">http://www.example.com/acceptInvitation</Tracking>
            </TrackingEvents>
            <AdParameters><![CDATA[ {"videos":[ {"url":"https://my-ads.com/interactive-media-ads/media/media_linear_VPAID.mp4","mimetype":"video/mp4"}]} ]]></AdParameters>
            <VideoClicks>
              <ClickThrough id="123">http://google.com</ClickThrough>
              <ClickTracking id="123">http://www.example.com/click</ClickTracking>
            </VideoClicks>
            <MediaFiles>
              <MediaFile delivery="progressive" apiFramework="VPAID" type="application/javascript" width="640" height="480"> https://googleads.github.io/googleads-ima-html5/vpaid/linear/VpaidVideoAd.js </MediaFile>
            </MediaFiles>
          </Linear>
        </Creative>
      </Creatives>
    </InLine>
  </Ad>
</VAST>
```

L'esempio seguente mostra le informazioni di tracciamento.

```
{
  "avails": [
    {
      "adBreakTrackingEvents": [],
      "adMarkerDuration": null,
      "ads": [
        {
          "adId": "1",
          "adParameters": "",
          "adProgramDateTime": "2023-07-31T16:53:40.577Z",
          "adSystem": "2.0",
          "adTitle": "1",
          "adVerifications": [],
          "companionAds": [],
          "creativeId": "00006",
          "creativeSequence": "1",
          "duration": "PT14.982S",
          "durationInSeconds": 14.982,
          "extensions": [],
          "mediaFiles": {
            "mediaFilesList": [],
            "mezzanine": ""
          },
          "skipOffset": null,
          "startTime": "PT39.339S",
          "startTimeInSeconds": 39.339,
          "trackingEvents": [
            {
              "beaconUrls": [
                "https://myads.com/beaconing/event=impression"
              ],
              "duration": "PT14.982S",
              "durationInSeconds": 14.982,
              "eventId": "2698188",
              "eventProgramDateTime": null,
              "eventType": "impression",
              "startTime": "PT39.339S",
              "startTimeInSeconds": 39.339
            },
            {
              "beaconUrls": [
                "https://aws.amazon.com"
              ],
              "duration": "PT14.982S",
              "durationInSeconds": 14.982,
              "eventId": "2698188",
              "eventProgramDateTime": null,
              "eventType": "clickThrough",
              "startTime": "PT39.339S",
              "startTimeInSeconds": 39.339
            },
            {
              "beaconUrls": [
                "https://myads.com/beaconing/event=clicktracking"
              ],
              "duration": "PT14.982S",
              "durationInSeconds": 14.982,
              "eventId": "2698795",
              "eventProgramDateTime": null,
              "eventType": "clickTracking",
              "startTime": "PT39.339S",
              "startTimeInSeconds": 39.339
            }
          ],
          "vastAdId": ""
        }
      ],
      "availId": "2698188",
      "availProgramDateTime": "2023-07-31T16:53:40.577Z",
      "duration": "PT14.982S",
      "durationInSeconds": 14.982,
      "meta": null,
      "nonLinearAdsList": [],
      "startTime": "PT39.339S",
      "startTimeInSeconds": 39.339
    }
  ],
  "dashAvailabilityStartTime": null,
  "hlsAnchorMediaSequenceNumber": null,
  "nextToken": "UFQzOS4zMzlTXzIwMjMtMDctMzFUMTY6NTQ6MDQuODA1Mzk2NTI5Wl8x",
  "nonLinearAvails": []
}{
  "avails": [
    {
      "adBreakTrackingEvents": [],
      "adMarkerDuration": null,
      "ads": [
        {
          "adId": "2922274",
          "adParameters": "",
          "adProgramDateTime": "2023-08-14T19:49:53.998Z",
          "adSystem": "Innovid Ads",
          "adTitle": "VPAID",
          "adVerifications": [],
          "companionAds": [],
          "creativeId": "",
          "creativeSequence": "",
          "duration": "PT16.016S",
          "durationInSeconds": 16.016,
          "extensions": [],
          "mediaFiles": {
            "mediaFilesList": [
              {
                "apiFramework": "VPAID",
                "bitrate": 0,
                "codec": null,
                "delivery": "progressive",
                "height": 9,
                "id": "",
                "maintainAspectRatio": false,
                "maxBitrate": 0,
                "mediaFileUri": "http://my-ads.com/mobileapps/js/vpaid/1h41kg?cb=178344c0-8e67-281a-58ca-962e4987cd60&deviceid=&ivc=",
                "mediaType": "application/javascript",
                "minBitrate": 0,
                "scalable": false,
                "width": 16
              }
            ],
            "mezzanine": "http://my-ads.com/mobileapps/js/vpaid/1h41kg?cb=178344c0-8e67-281a-58ca-962e4987cd60&deviceid=&ivc="
          },
          "skipOffset": null,
          "startTime": "PT8M42.289S",
          "startTimeInSeconds": 522.289,
          "trackingEvents": [
            {
              "beaconUrls": [
                "about:blank"
              ],
              "duration": "PT16.016S",
              "durationInSeconds": 16.016,
              "eventId": "2922274",
              "eventProgramDateTime": null,
              "eventType": "impression",
              "startTime": "PT8M42.289S",
              "startTimeInSeconds": 522.289
            }
          ],
          "vastAdId": "1h41kg"
        }
      ],
      "availId": "2922274",
      "availProgramDateTime": "2023-08-14T19:49:53.998Z",
      "duration": "PT16.016S",
      "durationInSeconds": 16.016,
      "meta": null,
      "nonLinearAdsList": [],
      "startTime": "PT8M42.289S",
      "startTimeInSeconds": 522.289
    }
  ],
  "dashAvailabilityStartTime": null,
  "hlsAnchorMediaSequenceNumber": null,
  "nextToken": "UFQ4TTQyLjI4OVNfMjAyMy0wOC0xNFQxOTo1MDo0MS4zOTc5MjAzODVaXzE%3D",
  "nonLinearAvails": []
}
```

## Icone per Google Why This Ad (WTA)
<a name="ad-reporting-client-side-ad-tracking-schema-player-controls-google-wta"></a>

*AdChoices*è uno standard del settore che fornisce agli spettatori informazioni sugli annunci che vedono, incluso il modo in cui tali annunci sono stati indirizzati a loro.

![\[Logo Google Why This Ad (WTA). La WTA informa gli spettatori sugli annunci che vedono, incluso il modo in cui tali annunci sono stati indirizzati a loro.\]](http://docs.aws.amazon.com/it_it/mediatailor/latest/ug/images/google-wta.png)


L'API di tracciamento MediaTailor lato client supporta i metadati delle icone contenuti nel nodo delle estensioni VAST della risposta VAST. Per ulteriori informazioni sul WTA nella risposta VAST, vedi [questo esempio](https://storage.googleapis.com/interactive-media-ads/ad-tags/ima_wta_sample_vast_3.xml) di risposta XML VAST.

**Nota**  
MediaTailor attualmente supporta solo la versione 3 di VAST.

```
<VAST>
    <Ad>  
    <InLine>  
       ...
      <Extensions>
        <Extension type="IconClickFallbackImages">
          <IconClickFallbackImages program="GoogleWhyThisAd">
            <IconClickFallbackImage width="400" height="150">
              <AltText>Alt icon fallback</AltText>
              <StaticResource creativeType="image/png"><![CDATA[https://storage.googleapis.com/interactive-media-ads/images/wta_dialog.png]]></StaticResource>
            </IconClickFallbackImage>
          </IconClickFallbackImages>
          <IconClickFallbackImages program="AdChoices">
            <IconClickFallbackImage width="400" height="150">
              <AltText>Alt icon fallback</AltText>
              <StaticResource creativeType="image/png"><![CDATA[https://storage.googleapis.com/interactive-media-ads/images/wta_dialog.png?size=1x]]></StaticResource>
            </IconClickFallbackImage>
            <IconClickFallbackImage width="800" height="300">
              <AltText>Alt icon fallback</AltText>
              <StaticResource creativeType="image/png"><![CDATA[https://storage.googleapis.com/interactive-media-ads/images/wta_dialog.png?size=2x]]></StaticResource>
            </IconClickFallbackImage>
          </IconClickFallbackImages>
        </Extension>
      </Extensions>
    </InLine>
  </Ad>
</VAST>
```

L'esempio seguente mostra la risposta di tracciamento lato client nell'`/avails/x/ads/y/extensions`elenco.

```
{
  "avails": [
    {
      "adBreakTrackingEvents": [],
      "adMarkerDuration": null,
      "ads": [
        {
          "adId": "0",
          "adParameters": "",
          "adProgramDateTime": null,
          "adSystem": "GDFP",
          "adTitle": "Google Why This Ad VAST 3 Sample",
          "adVerifications": [],
          "companionAds": [],
          "creativeId": "7891011",
          "creativeSequence": "1",
          "duration": "PT10S",
          "durationInSeconds": 10,
          "extensions": [
            {
              "content": "<IconClickFallbackImages program=\"GoogleWhyThisAd\">      
                          <IconClickFallbackImage height=\"150\" width=\"400\">      
                          <AltText>Alt icon fallback</AltText>      
                          <StaticResource creativeType=\"image/png\"><![CDATA[https://storage.googleapis.com/interactive-media-ads/images/wta_dialog.png]]>
                          </StaticResource>     
                          </IconClickFallbackImage>    
                          </IconClickFallbackImages>     
                          <IconClickFallbackImages program=\"AdChoices\">     
                          <IconClickFallbackImage height=\"150\" width=\"400\">     
                          <AltText>Alt icon fallback</AltText>       
                          <StaticResource creativeType=\"image/png\"><![CDATA[https://storage.googleapis.com/interactive-media-ads/images/wta_dialog.png?size=1x]]>
                          </StaticResource>      
                          </IconClickFallbackImage>      
                          <IconClickFallbackImage height=\"300\" width=\"800\">       
                          <AltText>Alt icon fallback</AltText>       
                          <StaticResource creativeType=\"image/png\"><![CDATA[https://storage.googleapis.com/interactive-media-ads/images/wta_dialog.png?size=2x]]>
                          </StaticResource>      
                          </IconClickFallbackImage>     
                          </IconClickFallbackImages>",
              "type": "IconClickFallbackImages"
            }
          ],
          "mediaFiles": {
            "mediaFilesList": [],
            "mezzanine": ""
          },
          "skipOffset": "00:00:03",
          "startTime": "PT0S",
          "startTimeInSeconds": 0,
          "trackingEvents": [
            {
              "beaconUrls": [
                "https://example.com/view"
              ],
              "duration": "PT10S",
              "durationInSeconds": 10,
              "eventId": "0",
              "eventProgramDateTime": null,
              "eventType": "impression",
              "startTime": "PT0S",
              "startTimeInSeconds": 0
            }
          ],
          "vastAdId": "123456"
        }
      ],
      "availId": "0",
      "availProgramDateTime": null,
      "duration": "PT10S",
      "durationInSeconds": 10,
      "meta": null,
      "nonLinearAdsList": [],
      "startTime": "PT0S",
      "startTimeInSeconds": 0
    }
  ],
  "dashAvailabilityStartTime": null,
  "hlsAnchorMediaSequenceNumber": null,
  "nextToken": "UFQxMFNfMjAyMy0wNy0wNlQyMDo0MToxNy45NDE4MDM0NDhaXzE%3D",
  "nonLinearAvails": []
}
```

# Beaconing lato client
<a name="ad-reporting-client-side-beaconing"></a>

Con l'`startTimeInSeconds`elemento di tracciamento lato client, puoi utilizzarlo per supportare la temporizzazione dei beacon. MediaTailor 

La seguente risposta JSON mostra i principali tipi di beacon: impressioni, avvio, quartili e completamento.

**Nota**  
Le linee guida per la misurazione delle impressioni video dell'Interactive Advertising Bureau (IAB) stabiliscono che un'impressione richiede il caricamento del contenuto dell'annuncio sul lato client e, come minimo, il momento di inizio del rendering nel player. Per ulteriori informazioni, consulta [Digital Video Ad Serving Template (VAST)](https://www.iab.com/guidelines/vast/) sul sito Web di IAB.

```
{
  "avails": [
    {
      "ads": [
        {
          "adId": "8104385",
          "duration": "PT15.100000078S",
          "durationInSeconds": 15.1,
          "startTime": "PT17.817798612S",
          "startTimeInSeconds": 17.817,
          "trackingEvents": [
          {
              "beaconUrls": [
                "http://exampleadserver.com/tracking?event=impression"
              ],
              "duration": "PT15.100000078S",
              "durationInSeconds": 15.1,
              "eventId": "8104385",
              "eventType": "impression",
              "startTime": "PT17.817798612S",
              "startTimeInSeconds": 17.817
            },
            {
              "beaconUrls": [
                "http://exampleadserver.com/tracking?event=start"
              ],
              "duration": "PT0S",
              "durationInSeconds": 0.0,
              "eventId": "8104385",
              "eventType": "start",
              "startTime": "PT17.817798612S",
              "startTimeInSeconds": 17.817
            },
            {
              "beaconUrls": [
                "http://exampleadserver.com/tracking?event=firstQuartile"
              ],
              "duration": "PT0S",
              "durationInSeconds": 0.0,
              "eventId": "8104386",
              "eventType": "firstQuartile",
              "startTime": "PT21.592798631S",
              "startTimeInSeconds": 21.592
            },
             {
              "beaconUrls": [
                "http://exampleadserver.com/tracking?event=midpoint"
              ],
              "duration": "PT0S",
              "durationInSeconds": 0.0,
              "eventId": "8104387",
              "eventType": "midpoint",
              "startTime": "PT25.367798651S",
              "startTimeInSeconds": 25.367
            },
            {
              "beaconUrls": [
                "http://exampleadserver.com/tracking?event=thirdQuartile"
              ],
              "duration": "PT0S",
              "durationInSeconds": 0.0,
              "eventId": "8104388",
              "eventType": "thirdQuartile",
              "startTime": "PT29.14279867S",
              "startTimeInSeconds": 29.142
            },
            {
              "beaconUrls": [
                "http://exampleadserver.com/tracking?event=complete"
              ],
              "duration": "PT0S",
              "durationInSeconds": 0.0,
              "eventId": "8104390",
              "eventType": "complete",
              "startTime": "PT32.91779869S",
              "startTimeInSeconds": 32.917
            }
          ]
        }
      ],
      "availId": "8104385",
      "duration": "PT15.100000078S",
      "durationInSeconds": 15.1,
      "startTime": "PT17.817798612S",
      "startTimeInSeconds": 17.817
    }
  ]
}
```

# Modalità ibrida con ad beacon lato server
<a name="ad-reporting-hybrid-mode"></a>

MediaTailor supporta una modalità ibrida per il monitoraggio delle sessioni. In questa modalità, il servizio emette eventi di tracciamento degli annunci relativi alla riproduzione, ma rende disponibile il payload completo di tracciamento lato client per la sessione

Per abilitare il tracciamento ibrido utilizzando i prefissi di riproduzione, inizializzate dal lettore una nuova sessione di MediaTailor riproduzione utilizzando una richiesta in uno dei seguenti formati, in base al protocollo in uso:

**Example : formato HLS**  

```
POST master.m3u8
    {
        "adsParams": {
           "deviceType": "ipad"
       },
       "reportingMode":"server"
    }
```

**Example : formato DASH**  

```
POST manifest.mpd
    {
        "adsParams": {
           "deviceType": "ipad"
       },
       "reportingMode":"server"
    }
```

MediaTailor mantiene i seguenti eventi di tracciamento in modalità ibrida:
+ Impressione
+ Start (Avvio)
+ Primo quartile
+ Punto medio
+ Terzo quartile
+ Completa
+ `breakStart`(vmap)
+ `breakEnd`(vmap)

# Integrazioni per il tracciamento degli annunci sul lato client
<a name="ad-reporting-client-side-ad-tracking-integrations"></a>

Questa sezione descrive le integrazioni tra MediaTailor e vari server di tracciamento degli annunci lato client.

**Topics**
+ [Apri Measurement SDK](#ad-reporting-client-side-ad-tracking-integrations-open-measurement-sdk)
+ [Lettore gratuito Datazoom SDKs](#ad-reporting-client-side-ad-tracking-integrations-dz)
+ [Roku Advertising Framework (RAF)](#ad-reporting-client-side-ad-tracking-integrations-raf)
+ [TheoPlayer](#ad-reporting-client-side-ad-tracking-integrations-theoplayer)
+ [MediaTailor SDK](#ad-reporting-client-side-ad-tracking-integrations-mediatailor-sdk)

## Apri Measurement SDK
<a name="ad-reporting-client-side-ad-tracking-integrations-open-measurement-sdk"></a>

L'Interactive Advertising Bureau (IAB) Open Measurement SDK (OM SDK) facilita la misurazione della visibilità e della verifica da parte di terze parti degli annunci pubblicati in ambienti con video web e app native.

Per i documenti VAST precedenti alla versione 3, il codice di verifica deve essere caricato con il nodo Extension, con il tipo di estensione. `AdVerifications` La radice del nodo di estensione è un `AdVerifications` nodo con lo stesso schema dell'elemento VAST 4.1.

Per facilitare l'adozione dell'OM SDK, MediaTailor ha collaborato con Datazoom per fornire lettori gratuiti configurati e verificati per SDKs Open Measurement. Per ulteriori informazioni, consulta [Lettore gratuito Datazoom SDKs](#ad-reporting-client-side-ad-tracking-integrations-dz).

**Nota**  
MediaTailor attualmente supporta solo la versione 3 di VAST.

**Example : nodo di verifica in VAST 3, precedente alla versione 4.1**  

```
...
<Extensions>
    <Extension type="AdVerifications">
        <AdVerifications>
            <Verification vendor="company.com-omid">
                <JavaScriptResource apiFramework="omid" browserOptional="true">
                    <![CDATA[https://verification.com/omid_verification.js]]>
                </JavaScriptResource>
                <TrackingEvents>
                    <Tracking event="verificationNotExecuted">
                        <![CDATA[https://verification.com/trackingurl]]>
                    </Tracking>
                </TrackingEvents>
                <VerificationParameters>
                    <![CDATA[verification params key/value pairs]]>
                </VerificationParameters>
            </Verification>
        </AdVerifications>
    </Extension>
</Extensions>
```

MediaTailor estrae i `AdVerifications` dati dal `<Extensions>` nodo e li inserisce nell'`adVerifications`array nella risposta di tracciamento lato client.

**Example : array AdVerifications nella risposta di tracciamento lato client**  

```
{
  "avails": [
    {
      "adBreakTrackingEvents": [],
      "adMarkerDuration": null,
      "ads": [
        {
          "adId": "3062770",
          "adParameters": "",
          "adProgramDateTime": "2023-08-23T16:25:40.914Z",
          "adSystem": "2.0",
          "adTitle": "AD-polarbear-15",
          "adVerifications": [
            {
              "executableResource": [],
              "javaScriptResource": [
                {
                  "apiFramework": "omid",
                  "browserOptional": "true",
                  "uri": "https://verification.com/omid_verification.js"
                }
              ],
              "trackingEvents": [
                {
                  "event": "verificationNotExecuted",
                  "uri": "https://verification.com/trackingurl"
                }
              ],
              "vendor": "company.com-omid",
              "verificationParameters": "verification params key value pairs"
            }
          ],
          "companionAds": [],
          "creativeId": "00006",
          "creativeSequence": "1",
          "duration": "PT14.982S",
          "durationInSeconds": 14.982,
          "extensions": [
            {
              "content": "<AdVerifications>\n\t\t\t\t\t\t<Verification vendor=\"company.com-omid\">\n\t\t\t\t\t\t\t<JavaScriptResource apiFramework=\"omid\" browserOptional=\"true\"><![CDATA[https://verification.com/omid_verification.js;]]></JavaScriptResource>\n\t\t\t\t\t\t\t<TrackingEvents>\n\t\t\t\t\t\t\t\t<Tracking event=\"verificationNotExecuted\"><![CDATA[;https://verification.com/trackingurl;]]></Tracking>\n\t\t\t\t\t\t\t</TrackingEvents>\n\t\t\t\t\t\t\t<VerificationParameters><![CDATA[verification params key/value pairs;]]></VerificationParameters>\n\t\t\t\t\t\t</Verification>\n\t\t\t\t\t</AdVerifications>",
              "type": "AdVerifications"
            }
          ],
          "mediaFiles": {
            "mediaFilesList": [],
            "mezzanine": ""
          },
          "skipOffset": null,
          "startTime": "PT10.11S",
          "startTimeInSeconds": 10.11,
          "trackingEvents": [
            {
              "beaconUrls": [
                "https://n8ljfs0h09.execute-api.us-west-2.amazonaws.com/v1/impression"
              ],
              "duration": "PT14.982S",
              "durationInSeconds": 14.982,
              "eventId": "3062770",
              "eventProgramDateTime": null,
              "eventType": "impression",
              "startTime": "PT10.11S",
              "startTimeInSeconds": 10.11
            }
          ],
          "vastAdId": ""
        }
      ],
      "availId": "3062770",
      "availProgramDateTime": "2023-08-23T16:25:40.914Z",
      "duration": "PT14.982S",
      "durationInSeconds": 14.982,
      "meta": null,
      "nonLinearAdsList": [],
      "startTime": "PT10.11S",
      "startTimeInSeconds": 10.11
    }
  ],
  "dashAvailabilityStartTime": null,
  "hlsAnchorMediaSequenceNumber": null,
  "nextToken": "UFQxMC4xMVNfMjAyMy0wOC0yM1QxNjoyNjoyNC4yNDYxMDIxOTBaXzE%3D",
  "nonLinearAvails": []
}
```

**Nota**  
Rivolgiti allo IAB Tech Lab per garantire che le applicazioni siano certificate annualmente per garantire la conformità.

Per ulteriori informazioni sull'OM SDK, consulta [Open Measurement SDK](https://iabtechlab.com/standards/open-measurement-sdk/) sul sito web di IAB Tech Lab.

## Lettore gratuito Datazoom SDKs
<a name="ad-reporting-client-side-ad-tracking-integrations-dz"></a>

Per facilitare l'adozione del lettore SDKs, MediaTailor ha collaborato con Datazoom per fornire lettori gratuiti configurati e SDKs testati con IAB Tech. [AWS Elemental MediaTailor Integrazione lato client con Google Ad Manager](gam-integration-pal.md) [Apri Measurement SDK](#ad-reporting-client-side-ad-tracking-integrations-open-measurement-sdk)

L'SDK del lettore Datazoom supporta queste funzionalità:
+ Playlist live e VOD
+ Specifiche DASH e HLS
+ Supporto fornito dai fornitori di lettori per Bitmovin, exoplayer, lettore multimediale Android, Apple, Brightcove, Chromecast Receiver AVPlayer, Dash.js, hls.js, Shaka player, THEO player, Video.js, Roku e altro JWPlayer
+ Certificazione IAB Tech Lab Open Measurement, se disponibile su dispositivi selezionati
+ Gestione degli eventi tramite clic
+ Organizzatori di eventi pubblicitari, ad esempio timer per il conto alla rovescia degli annunci, eventi in sovrapposizione e non lineari, inizio interruzioni pubblicitarie, fine interruzioni pubblicitarie
+ Annunci e beaconing lato client
+ Google Programmatic Access Library (PAL) SDK, come impostazione di configurazione opzionale

Datazoom offre anche un servizio di analisi e telemetria a pagamento supportato dal giocatore. SDKs I clienti possono attivare e controllare la telemetria SDK del lettore dalla console di gestione Datazoom. [Per accedere al lettore Datazoom e per saperne di più sul servizio di telemetria SDKs e analisi a valore aggiunto, utilizza le informazioni di contatto sul sito Datazoom.](https://www.datazoom.io/partner-aws) 

## Roku Advertising Framework (RAF)
<a name="ad-reporting-client-side-ad-tracking-integrations-raf"></a>

Il Roku Ad Framework (RAF) mantiene un'esperienza pubblicitaria coerente su tutta la piattaforma Roku. Tutti i canali, compresi gli annunci video, devono soddisfare i requisiti di certificazione di Roku per RAF. In particolare, l'app deve sempre utilizzare la generazione di eventi lato client tramite RAF. MediaTailor, in qualità di provider SSAI (server-side ad insertion), supporta la generazione di eventi lato client. Gli adattatori SSAI RAFX forniscono interfacce sia ai server manifest SSAI, o stitcher, che a RAF. Queste interfacce includono:
+ Analisi della `masterURL` risposta ed estrazione e dei `playURL` metadati degli `AdURL` annunci.
+ Trasformazione degli annunci MediaTailor SSAI in metadati pubblicitari utilizzabili con RAF e configurazione RAF per la riproduzione.
+ Osservazione degli eventi di streaming e dei metadati temporizzati.
+ Corrispondenza puntuale degli eventi di streaming, dei metadati degli annunci e dei pixel degli eventi di attivazione.
+ Pinging/polling del file`AdURL`, come richiesto dal server manifest MediaTailor SSAI, quindi analisi e riconfigurazione di RAF.

[Per ulteriori informazioni sugli adattatori SSAI per RAF, consulta Implementazione dell'inserimento di annunci sul lato server utilizzando adattatori Roku sul sito Web di Roku.](https://developer.roku.com/docs/developer-program/advertising/ssai-adapters.md)

## TheoPlayer
<a name="ad-reporting-client-side-ad-tracking-integrations-theoplayer"></a>

TheoPlayer l'integrazione con MediaTailor effettua le seguenti operazioni:
+ Fornisce funzionalità per supportare il tracciamento degli eventi MediaTailor lato client per HLS e DASH sia per i flussi di lavoro VOD che live.
+ Supporta l'invio di beacon di tracciamento solo per annunci lineari.
+ Disattiva la ricerca durante un annuncio. Tuttavia, non esiste alcuna logica per riprodurre un annuncio quando l'utente cerca oltre l'interruzione pubblicitaria.

Per ulteriori informazioni su SSAI in TheoPlayer e per rivedere il Web, Android, iOS e tvOS SDKs MediaTailor, consulta il [MediaTailor](https://docs.theoplayer.com/how-to-guides/01-ads/12-mediatailor.md) TheoPlayer sito Web.

## MediaTailor SDK
<a name="ad-reporting-client-side-ad-tracking-integrations-mediatailor-sdk"></a>

AWS Elemental gestisce un kit di sviluppo software (SDK) JavaScript basato. AWS Elemental fornisce l'SDK così com'è, senza alcuna garanzia implicita. Utilizzate l'SDK come dimostrazione di riferimento per semplificare l'utilizzo dell'onboarding. MediaTailor L'SDK mostra come interagire con l'API di tracciamento lato client. MediaTailor L'SDK implementa il monitoraggio e il reporting degli annunci sul lato client per i giocatori basati sul sito. HTML5 L'SDK inizializza una sessione di reporting MediaTailor lato client, quindi richiede periodicamente informazioni sul tracciamento degli annunci. Durante la riproduzione, l'SDK emette eventi di tracciamento degli annunci quando vengono rilevati nuovi eventi pubblicitari.

L' MediaTailor SDK supporta queste funzionalità:
+ Playlist live e VOD
+ Specifiche DASH e HLS
+ Gestione degli eventi click-through
+ Organizzatori di eventi pubblicitari
+ Ganci per eventi personalizzati
+ Pubblicità lato client. Per ulteriori informazioni sull'invio di beacon pubblicitari, consulta. [Beaconing lato client](ad-reporting-client-side-beaconing.md)

**Nota**  
Invia un ticket di AWS supporto per ricevere un JavaScript SDK di esempio per MediaTailor. Riceverai un link per il download del pacchetto e dei relativi file.

## Sfogliare gli annunci beacon con GetTracking
<a name="gettracking"></a>

Utilizza l'`GetTracking`endpoint per restringere il numero di annunci restituiti a un giocatore. Ad esempio, se una finestra del manifesto è ampia e dura molto tempo, il numero di ad beacon restituiti può influire sulle prestazioni del giocatore. 

`GetTracking`restituisce un `NextToken` valore che è possibile utilizzare per restringere il numero di beacon restituiti sfogliando l'elenco dei beacon restituiti. Puoi scorrere `NextToken` i valori per trovare il valore desiderato del campo di un ad beacon. `StartTimeInSeconds` 
+ Alla prima chiamata a`GetTracking`, vengono restituiti tutti i possibili annunci che rientrano nella finestra del manifesto, incluso un valore `NextToken` e per ciascuno. 
+ Se una `GetTracking` richiesta *non* include a`NextToken`, vengono restituiti tutti gli annunci nella finestra del manifesto.
+ Se una `GetTracking` richiesta contiene un beacon `NextToken` ma non ci sono nuovi beacon da restituire, MediaTailor restituisce lo stesso valore inviato nella richiesta originale. `NextToken`
+ Quando non ci sono più beacon corrispondenti a un annuncio, `GetTracking` rimuove l'annuncio dalla sua risposta.
+ I token `GetTracking` scadono dopo 24 ore. Se un `NextToken` valore risale a più di 24 ore, la chiamata successiva `GetTracking` restituisce un valore nullo. `NextToken`

### Sequenza di chiamata generalizzata di «from player» GetTracking
<a name="gettracking.generalsequence"></a>

Dal player client, una `GetTracking` richiesta è un POST con un corpo della richiesta che contiene gli annunci `NextToken` e i beacon relativi al token.

```
https://YouMediaTailorUrl/v1/tracking
{

     "NextToken": "value"
     .
     .
     .
}
```

La sequenza generale per l'utilizzo di `GetTracking` with `NextToken` è la seguente:

1. Effettua la prima chiamata a`GetTracking`.

   Vengono restituiti tutti gli annunci e i beacon e il primo `NextToken` per le chiamate successive. 

1. Se il valore di `NextToken` è null, MediaTailor restituisce tutti gli ad beacon.

1. Se `NextToken` è scaduto, MediaTailor restituisce un messaggio di errore con codice di ritorno HTTP 400.

   Effettua una nuova chiamata a per `GetTracking` recuperare i messaggi validi`NextToken`.

1. Scansiona l'intera risposta per trovare un ad beacon che rientra nell'intervallo desiderato. `StartTimeInSeconds`

1. Effettua una nuova chiamata a `GetTracking` con il valore `NextToken` associato a quello desiderato. `StartTimeInSeconds` 

1. Se necessario, scorri nuovamente gli annunci restituiti fino a trovare esattamente quelli a cui desideri riprodurre.

#### Esempio esteso
<a name="gettracking.extendedexample"></a>

Questo esempio mostra come utilizzare `GetTracking` 's' `NextToken` per limitare il numero di ad beacon restituiti a un giocatore.

MediaTailor riceve una richiesta. `GetTracking` La risposta contiene un annuncio con ID 9935407 e due beacon con `StartTimeInSeconds` valori 52,286 e 48,332 secondi. 

MediaTailor invia la risposta JSON con la seguente formula: `NextToken`

```
  {
  "NextToken": JF57ITe48t1441mv7TmLKuZLroxDzfIslp6BiSNL1IJmzPVMDN0lqrBYycgMbKEb
  "avails": [
    {
      "ads": [
        {
          "adId": "9935407",
          "adVerifications": [],
          "companionAds": [],
          "creativeId": "",
          "creativeSequence": "",
          "duration": "PT15S",
          "durationInSeconds": 15,
          "extensions": [],
          "mediaFiles": {
            "mediaFilesList": [],
            "mezzanine": ""
          },
          "startTime": "PT30S",
          "StartTimeInSeconds": 45,
          "trackingEvents": [
            {
              "beaconUrls": [
                "http://adserver.com/tracking?event=Impression "
              ],
              "duration": "PT0S",
              "durationInSeconds": 0,
              "eventId": "9935414",
              "eventType": "secondQuartile",
              "startTime": "PT52.286S",
              "StartTimeInSeconds": 52.286
            },
            {
              "beaconUrls": [
                "http://adserver.com/tracking?event=firstQuartile"
              ],
              "duration": "PT0S",
              "durationInSeconds": 0,
              "eventId": "9935412",
              "eventType": "firstQuartile",
              "startTime": "PT48.332S",
              "StartTimeInSeconds": 48.332
            }
          ],
          "vastAdId": ""
        }
      ],
      "startTime": "PT46.47S",
      "StartTimeInSeconds": 46.47
    }
  ]
}
```

Alla `GetTracking` richiesta successiva, MediaTailor risponde con il `NextToken` valore,: JF57 ITe48t1441mv7 Tm LKu ZLrox DzfIslp 6Bi Mb. SNL1 IJmz PVMDN0lqr BYycg KEb

MediaTailor risponde con annunci e beacon che corrispondono a quelli impostati nella chiamata precedente. `StartTimeInSeconds` `NextToken`

Supponiamo che ora la risposta includa un altro annuncio con ID 9235407 oltre all'annuncio precedente con ID 9935407. I beacon dell'annuncio ID 9235407 hanno s 132.41 e 70.339. `StartTimeInSeconds`

MediaTailor esegue un'iterazione su tutti i beacon della sessione per selezionare quelli con `StartTimeInSeconds` più di 52,286 secondi, ovvero il beacon 3 e il beacon 4 dell'annuncio con ID 9235407:

```
{
  "NextToken": ZkfknvbfsdgfbsDFRdffg12EdffecFRvhjyjfhdfhnjtsg5SDGN
  "avails": [
    {
      "ads": [
        {
          "adId": "9235407",
          "adVerifications": [],
          "companionAds": [],
          "creativeId": "",
          "creativeSequence": "",
          "duration": "PT15.816S",
          "durationInSeconds": 19.716,
          "extensions": [],
          "mediaFiles": {
            "mediaFilesList": [],
            "mezzanine": ""
          },
          "startTime": "PT2M0S",
          "StartTimeInSeconds": 120.0,
          "trackingEvents": [
            {
              "beaconUrls": [
                "http://adserver.com/tracking?event=complete"
              ],
              "duration": "PT0S",
              "durationInSeconds": 0,
              "eventId": "8935414",
              "eventType": "firstQuartile",
              "startTime": "PT1M10.330S",
              "StartTimeInSeconds": 70.339
            },
            {
              "beaconUrls": [
                "http://adserver.com/tracking?event=thirdQuartile"
              ],
              "duration": "PT0S",
              "durationInSeconds": 0,
              "eventId": "8935412",
              "eventType": "secondQuartile",
              "startTime": "PT2M12.41S",
              "StartTimeInSeconds": 132.41
            }
          ],
          "vastAdId": ""
        },   
      ],
      "startTime": "PT36.47S",
      "StartTimeInSeconds": 36.47
    }
  ]
}
```