Articles

npm

Build Statuscode style: prettierLicense: MITnpm version

Parse un documento XML VMAP in oggetto Javascript. Conforme alle specifiche VMAP 1.0.1.

Installazione

Installare con npm

npm install vmap

Uso

Fornire al costruttore VMAP un XML per averne una versione analizzata.

Accedi alle proprietà VMAP usando le API documentate qui sotto.

import VMAP from 'vmap';// Fetch VMAP as XMLconst xhr = new XMLHttpRequest();xhr.open('GET', vmapURL);xhr.send();xhr.onreadystatechange = function() { if (xhr.readyState === xhr.DONE) { if (xhr.status === 200) { // Get a parsed VMAP object const vmap = new VMAP(xhr.responseXML); } }};

API

VMAP

Proprietà

  • version: La versione VMAP (dovrebbe essere 1.0).
  • adBreaks: Un array di oggetti VMAPAdBreak.
  • extensions: Un array di Object con
    • children: Object contenente tutti i figli di questa estensione e il loro nome come chiave
    • attribute: Object contenente tutti gli attributi di questa estensione e il loro nome come chiave
    • value: Object analizzato da CDATA o come fallback tutti i nodi di testo di questa estensione concatenati

VMAPAdBreak

Fornisce informazioni su una interruzione pubblicitaria.

Proprietà

  • timeOffset: Rappresenta il tempo dell’interruzione pubblicitaria.
  • breakType: Identifica se l’interruzione pubblicitaria permette annunci “lineari”, “non lineari” o “display”.
  • breakId: Un identificatore di stringa opzionale per l’interruzione pubblicitaria.
  • repeatAfter: Un’opzione usata per distribuire le interruzioni pubblicitarie equamente distanziate l’una dall’altra lungo una linea temporale lineare.
  • adSource: Un oggetto VMAPAdSource.
  • trackingEvents: Un array di Object con URL di tracciamento
    • event: Il nome dell’evento da tracciare per l’elemento. Può essere uno tra breakStart, breakEnd o error.
    • uri: L’URI del tracker.
  • extensions: Un array di Object con
    • children: Object contenente tutti i figli di questa estensione e il loro nome come chiave
    • attribute: Object contenente tutti gli attributi di questa estensione e il loro nome come chiave
    • value: Object analizzato da CDATA o come fallback tutti i nodi di testo di questa estensione concatenati

Metodi

  • track(event, errorCode): Chiama i tracker per l’evento dato con un parametro di codice di errore opzionale per gli eventi error.

VMAPAdSource

Fornisce al lettore una risposta di annuncio in linea o un riferimento a una risposta di annuncio.

Proprietà

  • id: Identificatore dell’annuncio per la fonte dell’annuncio.
  • allowMultipleAds: Indica se un pod di annunci VAST o più buffet di annunci possono essere serviti in un’interruzione dell’annuncio.
  • followRedirects: Indica se il lettore video deve onorare i reindirizzamenti all’interno di una risposta dell’annuncio.
  • vastAdData: Contiene una risposta VAST incorporata.
  • adTagURI: Contiene un URI al VAST.
  • customData: Contiene dati pubblicitari personalizzati.

Supporto e compatibilità

La libreria è scritta al 100% in JavaScript e il codice sorgente usa caratteristiche moderne come modules, classes, ecc… . Assicurati che il tuo ambiente supporti queste caratteristiche, o traspila la libreria quando metti in bundle il tuo progetto.

Versioni pre-bundle

Forniamo diverse versioni pre-bundle della libreria (vedi directory dist)

Browser

È disponibile una versione pre-bundle di VMAP-jsis: vmap-js.js.

Puoi aggiungere lo script direttamente alla tua pagina e accedere alla libreria attraverso il costruttore VMAP.

<script src="dist/vmap-js.js"></script>
var vmap = new VMAP(vmapXML);

Node

È disponibile anche una versione pre-bundled per node: vmap-js-node.js.

const VMAP = require('vmap')const vmap = new VMAP(vmapXML);

Costruisci e testa

Installa le dipendenze con:

npm install

Il progetto viene impacchettato usando Rollup. Costruire con:

npm run-script build

Eseguire i test con:

npm test