Dimension : viewer

Dans cette rubrique, vous découvrirez les Analytics API viewer dimension. Les viewer dimension fournit des analyses par spectateur.

Introduction

La viewer dimension vous permet d'examiner les analyses par utilisateur. Si les identifiants des spectateurs ne sont pas envoyés au collecteur de données analytiques par le lecteur, nous essaierons de construire un identifiant de spectateur à partir de l'adresse IP et de l'agent utilisateur du spectateur - cette méthode est toutefois sujette à erreur. L'analyse des téléspectateurs est plus utile si vous avez des téléspectateurs connectés et que vous pouvez donc les identifier de manière fiable.

Paramètres d'URL

Les rapports de l'API Analytics prennent en charge les paramètres d'URL suivants.

Paramètres d'URL
Paramètre Description Obligatoire Valeurs Défaut
account Les comptes sur lesquels vous souhaitez créer un rapport Oui un ou plusieurs identifiants de compte sous forme de liste délimitée par des virgules aucun
dimensions La ou les dimensions à signaler Oui une ou plusieurs dimensions sous forme de liste délimitée par des virgules (certaines combinaisons ne sont pas valables - utilisez l'outil interactif ici pour déterminer si une combinaison est valable) aucun
where Utilisé pour spécifier des filtres pour les rapports non {dimension}=={valeur} - un ou plusieurs éléments sous forme de liste délimitée par des points-virgules. La valeur sera une ou plusieurs valeurs pour la métrique primaire de cette dimension. Par exemple : video==video_id country=country-code, ou viewer=viewer_id(dans ce dernier cas, la forme du viewer_id varie selon que vous capturez et envoyez vous-même une sorte de viewer_id ou selon la valeur générée par le système d'analyse). aucun
limit Nombre d'articles à retourner non entier positif 10
offset Nombre d'éléments à ignorer non entier positif 0
sort Champ sur lequel trier les éléments non tout champ renvoyé par la requête Video_View
fields Champs à retourner non varie en fonction de la dimension sur laquelle vous créez un rapport video,video_view
format Format pour renvoyer les résultats dans non json (par défaut) | csv | xlxs json
reconciled Si elle est incluse, elle limitera les résultats aux données historiques ou en temps réel. Les données analytiques proviennent de plusieurs sources : certaines sont envoyées par le lecteur, mais d'autres sont collectées à partir des CDN et du système Video Cloud. Afin de fournir des analyses le plus rapidement possible, nous commençons à fournir des données « en temps réel » dès qu'elles sont disponibles, puis nous ajustons les analyses ultérieurement lorsque les données de toutes les sources ont été collectées et traitées. Les données entièrement traitées sont appelées réconciliées non vrai | faux true
from Le début de la plage de dates de la demande non L'un des éléments suivants :
  • Une date ISO 8601 (AAAA-MM-JJ)
  • Heure de l'époque en millisecondes (exemple : 1659641316719 [= jeudi 4 août 2022 7:28:36.719 PM GMT]). Voir le convertisseur d'époque.
  • Une chaîne : from=alltime
  • +/- dates relatives en jours (d), semaines (w) ou mois (m) - exemple : from=-6m&to=%2B2w(la période allant d'il y a 6 mois à 2 semaines plus tard -- notez que le signe + doit être codé en URI sous la forme %2B)

Seules les dates des 32 derniers jours sont autorisées pour les points finaux d'engagement ou si reconciled=false.

-30d
to La fin de la plage de dates pour la demande non L'un des éléments suivants :
  • Une date ISO 8601 (AAAA-MM-JJ)
  • Heure de l'époque en millisecondes (exemple : 1659641316719 [= jeudi 4 août 2022 7:28:36.719 PM GMT]). Voir le convertisseur d'époque.
  • Une chaîne : to=now
  • +/- dates relatives en jours (d), semaines (w) ou mois (m) - exemple : from=-6m&to=%2B2w(la période allant d'il y a 6 mois à 2 semaines plus tard -- notez que le signe + doit être codé en URI sous la forme %2B)

Seules les dates des 32 derniers jours sont autorisées pour les points finaux d'engagement ou si reconciled=false.

maintenant

Champs disponibles

Les champs suivants peuvent être renvoyés pour la dimension.

  • application- l'identifiant de l'expérience virtuelle de l'événement. S'il n'est pas transmis, il sera nul
  • engagement_score- note d'engagement
  • video_engagement_1- engagement vidéo à 1 % de la durée
  • video_engagement_25- engagement vidéo à 25 % de la durée
  • video_engagement_50- engagement vidéo à 50 % de la durée
  • video_engagement_75- engagement vidéo à 75 % de la durée
  • video_engagement_100- engagement vidéo à 100 % de la durée
  • time- l'heure du dernier événement reçu
  • video_view- le nombre de fois où la lecture du spectateur a commencé
  • viewer[1]- Observateur d'événements (ID SSO ou ID d'appareil ou chaîne unique basée sur l'agent utilisateur et l'IP)

Des champs supplémentaires sont disponibles si la requête inclut également la ou les dimension(s) pertinente(s) :

  • city- la ville dans laquelle se trouvait le spectateur (nécessite la city dimension)
  • country- le pays (code) dans lequel se trouvait le spectateur (nécessite la country dimension)
  • country_name- le nom du pays dans lequel se trouvait le spectateur ( country dimension requise)
  • region- la région (code) dans laquelle se trouvait le spectateur (nécessite la region dimension)
  • region_name- le nom de la région dans laquelle se trouvait le spectateur (nécessite la region dimension)
  • rebuffering_seconds- le temps total que les joueurs ont passé à repousser (nécessite que le country ou region soit inclus)
  • device_type- le type d'appareil utilisé par le spectateur ( device_type dimension requise)

Envoi de l'identifiant du spectateur

Pour envoyer un identifiant de spectateur au système d'analyse, vous devez créer la logique permettant de construire un identifiant unique qui identifiera le spectateur au moment de l'exécution, puis l'envoyer au collecteur de données d'analyse à partir du lecteur. Le lecteur Web de Brightcove et les lecteurs SDK iOS et Android peuvent envoyer l'identifiant de l'utilisateur à l'analyse. Les sections suivantes expliquent comment procéder pour les lecteurs Web et SDK.

Envoyer l'ID du spectateur - Lecteur Brightcove

Exigences

Les exigences suivantes sont requises pour le suivi de l'ID du spectateur :

  • Brightcove Player v7.18.0 ou plus récent

Tout d'abord, vous devez définir l'identifiant de l'utilisateur pour stocker l'activité de visualisation de cet utilisateur.

Brightcove Player

Si vous utilisez Brightcove Player, procédez comme suit :

  1. Même si les données des spectateurs sont envoyées automatiquement à Brightcove Analytics, vous devez définir l'identifiant de l'utilisateur. Pour ce faire, utilisez la méthode user(). Par exemple :

    myPlayer.bcAnalytics.client.user('viewer id');

    Sur vos sites Web qui hébergent Brightcove Player, vous pouvez utiliser une passerelle d'authentification ou une solution de gestion des identités pour suivre les spectateurs. Utilisez cet identifiant de visionneuse comme identifiant de visionneuse à transmettre aux analyses Brightcove.

  2. Il est important de définir l'ID de visionneuse avant de définir une source sur le lecteur. Il doit être appelé immédiatement après l'initialisation du lecteur.

    <vidéo-js
          id="myPlayerID"
          data-account="1752604059001"
          data-player="hyQW6GByl"
          data-embed="default"
          contrôles=""
          data-video-id="6156696074001"
          data-playlist-id=""
          data-application-id=""
          width="640" height="360"></vidéo-js>
          <script src="https://players.brightcove.net/1752604059001/hyQW6GByl_default/index.min.js"></script>
          
          <script>
          videojs.getPlayer('myPlayerID').ready(function() {
          var myPlayer = this;
          
          // Définir l'ID du spectateur pour Brightcove Analytics
          myPlayer.bcAnalytics.client.user('viewer id');
          });
          </script>
  3. Lorsque la méthode user() est utilisée, la valeur n'est pas hachée et sera envoyée en clair avec toutes les balises suivantes.

    Notez que l'événement player_init n'inclura pas le champ user dans ce cas, mais tous les événements video_* doivent l'inclure.

Lecteur personnalisé

Si vous créez une implémentation personnalisée qui n'utilise pas Brightcove Player, ajoutez le paramètre user à vos requêtes d'API de collecte de données. Pour plus de détails, consultez le document Présentation : API de collecte de données v2.

Vous pouvez utiliser une passerelle d'authentification ou une solution de gestion des identités pour suivre les spectateurs sur les sites qui hébergent votre lecteur. Utilisez cet identifiant de spectateur comme identifiant de spectateur à transmettre aux analyses Brightcove.

Pour les lecteurs du SDK natif de Brightcove, vous devez également envoyer un identifiant de spectateur, à moins que vous ne dépendiez de celui généré par Brightcove.

Android

Pour le lecteur Android, ajoutez ce code :

HashMap<String, String> baseParams = new HashMap<>();
  baseParams.put(Analytics.Fields.USER, "viewer id");
  baseParams.put(Analytics.Fields.APPLICATION_ID, "application id");
  
  HashMap<String, Object> eventParams = new HashMap<>();
  eventParams.put(Analytics.Fields.BASE_PARAMS, baseParams);
  eventEmitter.emit(EventType.ADD_ANALYTICS_BASE_PARAMS, eventParams);
  

iOS

Pour iOS ou tvOS, ajoutez le code suivant :

@try
  {
    [BCOVGlobalConfiguration.sharedConfig setValue:@{
      @"privateUser": self.viewer id,
      @"privateApplication": @"application id"
    }
    forKey:@"privateSessionAnalytics"];
  }
  @catch (NSException *e)
  {
    NSLog(@"%@", e.description);
  }

Filtrer les valeurs

Utilisée comme filtre, une dimension permet d'affiner les résultats.

Valeurs du filtre : identifiants des spectateurs

Combinaison de dimensions

Les viewer dimension peut être combinée avec plusieurs autres, qui ajoutent des champs supplémentaires qui peuvent être récupérés. Les détails sont dans le tableau ci-dessous. (Gras les éléments sont inclus dans la réponse par défaut si la dimension est incluse.)

Combinaisons de dimensions prises en charge
Dimension Champs supplémentaires
video video
video_engagement_1
video_engagement_25
video_engagement_50
video_engagement_75
video_engagement_100
video_percent_viewed
video_seconds_viewed
video_view
video.tags
video.reference_id
video.name
video.description
video.long_description
video.duration
country country
country_name
region region
region_name
city city
dma
device_type device_type

Exemples de demandes

Exemple de demande de dimension

    https://analytics.api.brightcove.com/v1/data?accounts=3365624256001&dimensions=viewer&limit=10&fields=viewer,time,video_view,engagement_score
Exemple de réponse
{
  "item_count": 8,
  "items": [
    {
      "engagement_score": null,
      "viewer": "6798840584846290049",
      "time": 1623870475157,
      "video_view": 0
    },
    {
      "engagement_score": 100,
      "viewer": "-1094565064376617663",
      "time": 1623870472882,
      "video_view": 1
    },
    {
      "engagement_score": 100,
      "viewer": "8997125557862445199",
      "time": 1623870433989,
      "video_view": 1
    },
    {
      "engagement_score": 39.13,
      "viewer": "-8839675754655082792",
      "time": 1623872904633,
      "video_view": 1
    },
    {
      "engagement_score": 143.48,
      "viewer": "-6771654281667224776",
      "time": 1623869869930,
      "video_view": 2
    }
  ],
  "summary": {
    "engagement_score": 110.51,
    "time": 1623875119506,
    "video_view": 12
  }
}

Exemple de demande multidimensionnelle

    https://analytics.api.brightcove.com/v1/data?accounts=3365624256001&dimensions=viewer,country,region,city,video,device_type&limit=10&fields=viewer,time,video_view,engagement_score,video_percent_viewed,video_seconds_viewed,video_engagement_1,video_engagement_25 video_engagement_50,video_engagement_75,video_engagement_100,video.tags,video.reference_id,video.name,video.description,video.duration,video.long_description,dma,country_name,region_name
Exemple de réponse
{
  "item_count": 8,
  "items": [
    {
      "country": "MX",
      "viewer": "6798840584846290049",
      "video.name": "Bison",
      "video_seconds_viewed": 23,
      "video_engagement_75": 1,
      "city": "Zapopan",
      "device_type": "desktop",
      "video": "5754204614001",
      "video_engagement_50": 1,
      "video.description": "Bison in Yellowstone National Park",
      "video.reference_id": null,
      "video_percent_viewed": 100,
      "country_name": "Mexico",
      "region_name": null,
      "video_engagement_25": 1,
      "video.long_description": "Bison in Yellowstone National Park. This is the long description.  This was filmed in Yellowstone National Park.",
      "video.duration": 23295,
      "video_engagement_100": 1,
      "engagement_score": null,
      "video_engagement_1": 1,
      "video.tags": [
        "animals",
        "simulive",
        "yellowstone"
      ],
      "dma": "0",
      "time": 1623870475157,
      "video_view": 0,
      "region": "MX-JAL"
    },
    {
      "country": "US",
      "viewer": "-8839675754655082792",
      "video.name": "Bison",
      "video_seconds_viewed": 9,
      "video_engagement_75": 0,
      "city": "Safety Harbor",
      "device_type": "desktop",
      "video": "5754204614001",
      "video_engagement_50": 0,
      "video.description": "Bison in Yellowstone National Park",
      "video.reference_id": null,
      "video_percent_viewed": 39.13,
      "country_name": "United States",
      "region_name": "Florida",
      "video_engagement_25": 1,
      "video.long_description": "Bison in Yellowstone National Park. This is the long description.  This was filmed in Yellowstone National Park.",
      "video.duration": 23295,
      "video_engagement_100": 0,
      "engagement_score": 39.13,
      "video_engagement_1": 1,
      "video.tags": [
        "animals",
        "simulive",
        "yellowstone"
      ],
      "dma": "539",
      "time": 1623872904633,
      "video_view": 1,
      "region": "US-FL"
    },
    {
      "country": "US",
      "viewer": "-1094565064376617663",
      "video.name": "Bison",
      "video_seconds_viewed": 23,
      "video_engagement_75": 1,
      "city": "Boulder",
      "device_type": "desktop",
      "video": "5754204614001",
      "video_engagement_50": 1,
      "video.description": "Bison in Yellowstone National Park",
      "video.reference_id": null,
      "video_percent_viewed": 100,
      "country_name": "United States",
      "region_name": "Colorado",
      "video_engagement_25": 1,
      "video.long_description": "Bison in Yellowstone National Park. This is the long description.  This was filmed in Yellowstone National Park.",
      "video.duration": 23295,
      "video_engagement_100": 1,
      "engagement_score": 100,
      "video_engagement_1": 1,
      "video.tags": [
        "animals",
        "simulive",
        "yellowstone"
      ],
      "dma": "751",
      "time": 1623870472882,
      "video_view": 1,
      "region": "US-CO"
    },
    {
      "country": "US",
      "viewer": "8997125557862445199",
      "video.name": "Bison",
      "video_seconds_viewed": 23,
      "video_engagement_75": 1,
      "city": "Boulder",
      "device_type": "desktop",
      "video": "5754204614001",
      "video_engagement_50": 1,
      "video.description": "Bison in Yellowstone National Park",
      "video.reference_id": null,
      "video_percent_viewed": 100,
      "country_name": "United States",
      "region_name": "Colorado",
      "video_engagement_25": 1,
      "video.long_description": "Bison in Yellowstone National Park. This is the long description.  This was filmed in Yellowstone National Park.",
      "video.duration": 23295,
      "video_engagement_100": 1,
      "engagement_score": 100,
      "video_engagement_1": 1,
      "video.tags": [
        "animals",
        "simulive",
        "yellowstone"
      ],
      "dma": "751",
      "time": 1623870433989,
      "video_view": 1,
      "region": "US-CO"
    },
    {
      "country": "US",
      "viewer": "-4530870087560842176",
      "video.name": "Bison",
      "video_seconds_viewed": 46,
      "video_engagement_75": 2,
      "city": "Newton Center",
      "device_type": "desktop",
      "video": "5754204614001",
      "video_engagement_50": 2,
      "video.description": "Bison in Yellowstone National Park",
      "video.reference_id": null,
      "video_percent_viewed": 200,
      "country_name": "United States",
      "region_name": "Massachusetts",
      "video_engagement_25": 2,
      "video.long_description": "Bison in Yellowstone National Park. This is the long description.  This was filmed in Yellowstone National Park.",
      "video.duration": 23295,
      "video_engagement_100": 2,
      "engagement_score": 100,
      "video_engagement_1": 2,
      "video.tags": [
        "animals",
        "simulive",
        "yellowstone"
      ],
      "dma": "506",
      "time": 1623875061754,
      "video_view": 2,
      "region": "US-MA"
    },
    {
      "country": "MX",
      "viewer": "-6771654281667224776",
      "video.name": "Bison",
      "video_seconds_viewed": 66,
      "video_engagement_75": 1,
      "city": "Zapopan",
      "device_type": "desktop",
      "video": "5754204614001",
      "video_engagement_50": 1,
      "video.description": "Bison in Yellowstone National Park",
      "video.reference_id": null,
      "video_percent_viewed": 286.96,
      "country_name": "Mexico",
      "region_name": null,
      "video_engagement_25": 1,
      "video.long_description": "Bison in Yellowstone National Park. This is the long description.  This was filmed in Yellowstone National Park.",
      "video.duration": 23295,
      "video_engagement_100": 1,
      "engagement_score": 143.48,
      "video_engagement_1": 1,
      "video.tags": [
        "animals",
        "simulive",
        "yellowstone"
      ],
      "dma": "0",
      "time": 1623869869930,
      "video_view": 2,
      "region": "MX-JAL"
    }
  ],
  "summary": {
    "video_seconds_viewed": 305,
    "video_engagement_75": 10,
    "video_engagement_25": 11,
    "video_engagement_50": 10,
    "video_engagement_100": 10,
    "engagement_score": 110.51,
    "video_engagement_1": 11,
    "video_percent_viewed": 1326.09,
    "country_name": null,
    "region_name": null,
    "time": 1623875119506,
    "video_view": 12,
    "account": "3365624256001"
  }
}