Dimensión: viewer

En este tema, aprenderá acerca de la Analytics API viewer dimensión. los viewer dimensión proporciona análisis por espectador.

Introducción

El viewer La dimensión le permite ver los análisis por espectador. Si las identificaciones del espectador no se envían al recopilador de datos analíticos del jugador, intentaremos construir una identificación del espectador a partir de la dirección IP y el agente de usuario del espectador; sin embargo, este método es propenso a errores. El análisis de espectadores es más útil si ha iniciado sesión en los espectadores y, por lo tanto, puede identificarlos de manera confiable.

Parámetros de URL

Los informes de la API de Analytics admiten los siguientes parámetros de URL.

Parámetros de URL
Parámetro Descripción Requerido Valores Predeterminado
account Las cuentas sobre las que desea informar uno o más ID de cuenta como una lista delimitada por comas ninguno
dimensions Las dimensiones sobre las que informar una o más dimensiones como una lista delimitada por comas (algunas combinaciones no son válidas; use la herramienta interactiva aquí para determinar si una combinación es válida) ninguno
where Se utiliza para especificar filtros para informes. no {dimensión}=={valor}: uno o más como una lista delimitada por punto y coma. El valor será uno o más valores para la métrica principal de esa dimensión. Por ejemplo: video==video_id , country=country-code , o viewer=viewer_id (en este último caso, la forma del viewer_id variará dependiendo de si usted mismo está capturando y enviando algún tipo de viewer_id o dependiendo del valor generado por el sistema de análisis). ninguno
limit Número de artículos a devolver no entero positivo 10
offset Número de elementos para omitir no entero positivo 0
sort Campo en el que ordenar los elementos no cualquier campo que está siendo devuelto por la solicitud video_view
fields Campos para devolver no varía según la dimensión sobre la que está informando vídeo,vista_de_video
format Formato para devolver resultados en no json (predeterminado) | CSV | xlxs json
reconciled Si se incluye, limitará los resultados a datos históricos o en tiempo real. Los datos de análisis se derivan de varias fuentes: algunos los envía el reproductor, pero otros datos se recopilan de los CDN y el sistema Video Cloud. Para entregar análisis lo más rápido posible, comenzamos a entregar datos "en tiempo real" tan pronto como estén disponibles, y luego ajustamos los análisis más tarde cuando los datos de todas las fuentes se han recopilado y procesado. Los datos totalmente procesados se denominan reconciliados. no verdadero | falso verdadero
from El comienzo del rango de fechas para la solicitud no Uno de los siguientes:
  • Una fecha ISO 8601 (AAAA-MM-DD)
  • Tiempo de época en milisegundos (ejemplo: 1659641316719 [= jueves, 4 de agosto de 2022 7:28:36.719 p. m. GMT]). Ver el convertidor de tiempo de Epoch.
  • Una cuerda: from=alltime
  • +/- fechas relativas en días (d), semanas (w) o meses (m) - ejemplo: from=-6m&to=%2B2w (el período desde hace 6 meses hasta 2 semanas después de eso; tenga en cuenta que el signo + debe codificarse como URI %2B)

Solo se permiten las fechas dentro de los últimos 32 días para los puntos de finalización del compromiso o si se concilian = false.

-30d
to El final del rango de fechas para la solicitud no Uno de los siguientes:
  • Una fecha ISO 8601 (AAAA-MM-DD)
  • Tiempo de época en milisegundos (ejemplo: 1659641316719 [= jueves, 4 de agosto de 2022 7:28:36.719 p. m. GMT]). Ver el convertidor de tiempo de Epoch.
  • Una cuerda: to=now
  • +/- fechas relativas en días (d), semanas (w) o meses (m) - ejemplo: from=-6m&to=%2B2w (el período desde hace 6 meses hasta 2 semanas después de eso; tenga en cuenta que el signo + debe codificarse como URI %2B)

Solo se permiten las fechas dentro de los últimos 32 días para los puntos de finalización del compromiso o si se concilian = false.

ahora

Campos disponibles

Los siguientes campos se pueden devolver para la dimensión.

  • application- la identificación de la experiencia del evento virtual. Si no se supera, será nulo
  • engagement_score- puntuación de compromiso
  • video_engagement_1- compromiso de video al 1% de la duración
  • video_engagement_25- compromiso de video al 25% de la duración
  • video_engagement_50- compromiso de video al 50% de la duración
  • video_engagement_75- compromiso de video al 75% de la duración
  • video_engagement_100- compromiso de video al 100% de la duración
  • time- la época del último evento recibido
  • video_view- la cantidad de veces que comenzó la reproducción del espectador
  • viewer[1]- Visor de eventos (ID de SSO o ID de dispositivo o cadena única basada en el agente de usuario y la IP)

Hay campos adicionales disponibles si la consulta también incluye las dimensiones relevantes:

  • city- la ciudad en la que se encontraba el espectador (requiere la city dimensión)
  • country- el país (código) en el que se encontraba el espectador (requiere el country dimensión)
  • country_name- el nombre del país en el que se encontraba el espectador (requiere la country dimensión)
  • region- la región (código) en la que se encontraba el espectador (requiere la region dimensión)
  • region_name- el nombre de la región en la que se encontraba el espectador (requiere la region dimensión)
  • rebuffering_seconds- el tiempo total que los jugadores dedicaron al rebuffering (requiere que el country o region estar incluido)
  • device_type- el tipo de dispositivo que estaba usando el espectador (requiere la device_type dimensión)

Enviando la identificación del espectador

Para enviar una identificación de espectador al sistema de análisis, debe crear la lógica para construir una identificación única que identificará al espectador en tiempo de ejecución y luego la enviará al recopilador de datos de análisis del reproductor. La lógica para construir la identificación dependerá de cómo los espectadores se autentiquen para ver su contenido. El reproductor web de Brightcove y los reproductores SDK de iOS y Android pueden enviar la identificación del usuario a análisis. las siguientes secciones le muestran cómo hacer esto para los reproductores web y SDK.

Enviar ID de espectador: reproductor de Brightcove

Primero, debe configurar el identificador de usuario para almacenar su actividad de visualización.

Jugador Brightcove

Si está utilizando Brightcove Player, siga estos pasos:

  1. Aunque los datos del espectador se envían a Brightcove Analytics automáticamente, debe configurar el identificador de usuario. Para ello, utilice el setUser() método. Por ejemplo:

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

    En los sitios web que alojan Brightcove Player, puede utilizar una puerta de enlace de autenticación o alguna solución de gestión de identidad para realizar un seguimiento de los espectadores. Utilice este identificador de visor como identificador de visor para pasar a Brightcove analytics.

  2. Es importante configurar la identificación del espectador antes de configurar cualquier fuente en el reproductor. Debería llamarse inmediatamente después de inicializar el reproductor.

    <video-js
      id="myPlayerID"
      data-account="1752604059001"
      data-player="hyQW6GByl"
      data-embed="default"
      controls=""
      data-video-id="6156696074001"
      data-playlist-id=""
      data-application-id=""
      width="640" height="360"></video-js>
    <script src="https://players.brightcove.net/1752604059001/hyQW6GByl_default/index.min.js"></script>
    
    <script>
      videojs.getPlayer('myPlayerID').ready(function() {
        var myPlayer = this;
    
        // Set the viewer id for Brightcove analytics
        myPlayer.bcAnalytics.client.setUser('viewer id');
      });
    </script>
  3. Cuando el setUser() se utiliza el método, el valor no tiene hash y se enviará sin cifrar con todas las balizas posteriores.

    Tenga en cuenta que el player_init El evento no incluirá el user campo en este caso, pero todos video_* los eventos deben incluirlo.

reproductor web personalizado

Si está creando una implementación personalizada que no utiliza Brightcove Player, agregue el user a sus solicitudes de API de recopilación de datos. Para obtener más detalles, consulte la Descripción general: API de recopilación de datos v2 documento.

En los sitios web que alojan su reproductor, puede utilizar una puerta de enlace de autenticación o alguna solución de gestión de identidad para realizar un seguimiento de los espectadores. Utilice este identificador de visor como identificador de visor para pasar a Brightcove analytics.

Para los reproductores SDK nativos de Brightcove, también debe enviar una identificación de espectador, a menos que dependa de la generada por Brightcove.

Androide

Para el reproductor de Android, agregue este código:

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

Para iOS o tvOS, agregue el siguiente código:

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

Filtrar valores

Si se utiliza como filtro, una dimensión le permite limitar los resultados.

Valores de filtro: identificadores de espectadores

Combinando dimensiones

los viewer La dimensión se puede combinar con varias otras, que agregan campos adicionales que se pueden recuperar. Los detalles se encuentran en la siguiente tabla. (Negrita los elementos se incluyen en la respuesta de forma predeterminada si se incluye la dimensión).

Combinaciones de dimensiones admitidas
Dimensión Campos Adicionales
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

Ejemplos de solicitud

Muestra de solicitud de dimensión

    https://analytics.api.brightcove.com/v1/data?accounts=3365624256001&dimensions=viewer&limit=10&fields=viewer,time,video_view,engagement_score
Respuesta de muestra
{
  "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
  }
}

Muestra de solicitud multidimensional

    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_scorevideo_percent_viewed,video_seconds_viewedment_1 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
Respuesta de muestra
{
  "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"
  }
}