Articles

npm

Build Statuscode style: prettierLicense: MITnpm version

Parse un document VMAP XML en objet Javascript. Conforme à la spécification VMAP 1.0.1.

Installation

Installer avec npm

npm install vmap

Utilisation

Fournir au constructeur VMAP un XML afin d’en avoir une version analysée.

Accéder aux propriétés de VMAP en utilisant les API documentées ci-dessous.

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

Propriétés

  • version : La version de VMAP (devrait être 1.0).
  • adBreaks : Un tableau d’objets VMAPAdBreak.
  • extensions : Un tableau de Object avec
    • children : Object contenant tous les enfants de cette extension et leur nom comme clé
    • attribute : Object contenant tous les attributs de cette extension et leur nom comme clé
    • value : Object analysé à partir de CDATA ou, comme solution de repli, tous les nœuds de texte de cette extension concaténés

VMAPAdBreak

Fournit des informations sur une pause publicitaire.

Propriétés

  • timeOffset : Représente le moment de la pause publicitaire.
  • breakType : Identifie si la pause publicitaire autorise les publicités « linéaires », « non linéaires » ou « d’affichage ».
  • breakId : Un identifiant de chaîne facultatif pour la pause publicitaire.
  • repeatAfter : Une option utilisée pour distribuer les pauses publicitaires à égale distance les unes des autres le long d’une ligne de temps linéaire.
  • adSource : Un objet VMAPAdSource.
  • trackingEvents : Un tableau de Object avec des URL de suivi
    • event : Le nom de l’événement à suivre pour l’élément. Peut être l’un de breakStart, breakEnd ou error.
    • uri : L’URI du tracker.
  • extensions : Un tableau de Object avec
    • children : Object contenant tous les enfants de cette extension et leur nom comme clé
    • attribute : Object contenant tous les attributs de cette extension et leur nom comme clé
    • value : Object analysé à partir de CDATA ou comme solution de repli tous les nœuds de texte de cette extension concaténés

Méthodes

  • track(event, errorCode) : Appeler les trackers pour l’événement donné avec un paramètre de code d’erreur optionnel pour les événements error.

VMAPAdSource

Fournit au lecteur soit une réponse publicitaire en ligne, soit une référence à une réponse publicitaire.

Propriétés

  • id : Identifiant de la source publicitaire.
  • allowMultipleAds : Indique si un pod publicitaire VAST ou plusieurs buffets de publicités peuvent être servis dans une coupure publicitaire.
  • followRedirects : Indique si le lecteur vidéo doit honorer les redirections dans une réponse publicitaire.
  • vastAdData : Contient une réponse VAST intégrée.
  • adTagURI : Contient une URI vers le VAST.
  • customData : Contient des données publicitaires personnalisées.

Support et compatibilité

La bibliothèque est 100% écrite en JavaScript et le code source utilise des fonctionnalités modernes comme modules, classes, ecc… . Assurez-vous que votre environnement supporte ces fonctionnalités, ou transpilez la bibliothèque lors du bundling de votre projet.

Versions pré-bundlées

Nous fournissons plusieurs versions pré-bundlées de la bibliothèque (voir répertoire dist)

Navigateur

Une version pré-bundlée de VMAP-jsis disponible : vmap-js.js.

Vous pouvez ajouter le script directement à votre page et accéder à la bibliothèque via le constructeur VMAP.

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

Node

Une version pré-assemblée pour node est également disponible : vmap-js-node.js.

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

Construction et tests

Installer les dépendances avec:

npm install

Le projet est empaqueté en utilisant Rollup. Construire avec:

npm run-script build

Exécuter les tests avec:

npm test

.