soporte Contactar con Soporte | Estadoestado del sistema del sistema
Contenido de la página

    Registro de complementos

    En este tema, aprenderá cómo se puede utilizar el Registro de complementos para rastrear y administrar los complementos que utiliza el reproductor de Brightcove.

    ¿Qué es el Registro de Plugins?

    El Registro de Plugins es una sección de la API de administración de jugadores dedicada al almacenamiento de información acerca de los complementos de Brightcove. El registro sirve como referencia para todas las versiones de cada plugin almacenado, así como las secuencias de comandos y hojas de estilo asociadas a cada uno. La configuración del jugador aprovecha el Registro de Plugins, mostrando la versión actual del plugin y también permitiéndole especificar una versión de plugin.

    Ventajas

    Las ventajas del Registro de Plugins para los usuarios de Brightcove Player son tres:

    • Puede ver exactamente qué versión del plugin se está utilizando con su reproductor, así como los archivos JavaScript y CSS específicos asociados con esa versión específica del plugin.
    • Puede configurar los complementos para que se actualicen automáticamente cuando se publique nuevas versiones compatibles con su versión de reproductor.
    • Si por alguna razón eliges mantener a un jugador en una versión específica del reproductor, tus plugins permanecerán en las mismas versiones específicas para ese reproductor cuando se bloqueó. Usted no tiene que preocuparse de que un plugin se actualice a una versión que no es compatible con su versión de reproductor.

    Complementos elegibles actuales

    En la tabla siguiente se muestran los complementos suministrados por Brightcove que funcionan con el Registro de complementos. El ID del Registro del Plugin se utilizará con la configuración del reproductor junto con la API de administración de jugadores. En este documento se mostrarán numerosos ejemplos.

    Nombre del complemento Id. del Registro del Plugin
    Reproductor de Adobe Analytics @brightcove /videojs-bc-aa
    Receptor Chromecast @brightcove /videojs-chromecast-receptor
    Pantalla final personalizada @brightcove /videojs-custom-endscreen
    DRM @brightcove /videojs-drm
    Reproductor de Google Analytics @brightcove /videojs-bc-ga
    IMA3 Publicidad @brightcove /videojs-ima3
    Sobreimpresión @brightcove /videojs-overlay
    Imagen en imagen @brightcove /videojs-pip
    IU de lista de reproducción @brightcove /videojs-bc-playlist-ui
    Menú de selección de calidad @brightcove /videojs-calidad-menú
    Red social @brightcove /videojs-social
    SSAI @brightcove /videojs-ssai
    Complemento Tealium Jugador @brightcove /videojs-bc-tealium

    Especificar el uso de un complemento

    Para especificar el uso de un plugin, en la creación de su reproductor simplemente proporcione el ID de registro para el plugin deseado. Debe especificar un número de versión, ya sea una versión principal que se actualice automáticamente (por ejemplo 2.x) o una versión secundaria (por ejemplo 2.0.10) que no se actualice automáticamente. Los detalles sobre la configuración de la versión aparecen más adelante en este documento. También puede proporcionar el plugin, si lo hay.options

        curl \
          --header "Content-Type: application/json" \
          --user $EMAIL \
          --request POST \
          --data '{
            "name": "Plugin Registry Test Player",
            "configuration": {
              "video_cloud": {
                "video": "4093372393001"
              },
              "plugins": [
               {
                  "registry_id": "@brightcove/videojs-custom-endscreen",
                  "version": "2.x",
                  "options": { "content": "<strong>Content</strong> for <em>custom</em> end screen" }
               }
              ]
            }
          }' \
          https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players
              

    La API de administración del reproductor devuelve la información sobre el reproductor creado. Puede utilizar el valor url devuelto, cambiar el index.html a config.json y examinar esa dirección URL para ver la configuración del reproductor publicado.

        {
          "id": "rkGD9W22Ob",
          "url": "http://players.brightcove.net/1507807800001/rkGD9W22Ob_default/index.html",
          "embed_code": "<iframe src='//players.brightcove.net/1507807800001/rkGD9W22Ob_default/index.html' allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>",
          "embed_in_page": "http://players.brightcove.net/1507807800001/rkGD9W22Ob_default/in_page.embed",
          "preview_url": "http://preview-players.brightcove.net/v2/accounts/1507807800001/players/rkGD9W22Ob/preview/embeds/default/master/index.html",
          "preview_embed_code": "<iframe src='//preview-players.brightcove.net/v2/accounts/1507807800001/players/rkGD9W22Ob/preview/embeds/default/master/index.html' allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>"
        }

    En la configuración del reproductor publicado verá la información en el plugin. Tenga en cuenta que se muestra una versión específica del plugin, junto con los valores correspondientes para los archivos JavaScript y CSS.

        {
          "account_id": "1507807800001",
          "compatibility": true,
          "embed_id": "default",
          "player": {
            "template": {
              "name": "single-video-template",
              "version": "6.7.0"
            }
          },
          "player_id": "SyITgzdjb",
          "player_name": "Plugin Registry Test Player",
          "plugins": [{
            "injected_version": "2.0.10",
            "name": "customEndscreen",
            "registry_id": "@brightcove/videojs-custom-endscreen",
            "version": "2.x"
          }],
          "scripts": [
            "//players.brightcove.net/videojs-custom-endscreen/2.0.10/videojs-custom-endscreen.min.js"
          ],
          "stylesheets": [
            "//players.brightcove.net/videojs-custom-endscreen/2.0.10/videojs-custom-endscreen.css"
          ],
          "updated_at": "2017-09-26T17:39:10.080Z",
          "video_cloud": {
            "policy_key": "BCpkADawqM3hOj9I_wRb6jx7SLoklIm8eiW-MH1C0CO5xnf8ndABL7WJQOVdWIusPlnfKUD5EZvjHyJOQGeCFndODaM7CRz4h4GxUTLN3OmO7dTcLnxS3cYrXOZx4eaqaSbVFDx1yFTvWX7m",
            "video": "4093372393001"
          }
        }

    Especificar una versión principal específica

    Puede configurar un reproductor para que utilice la última versión del plugin para una versión principal específica compatible con el reproductor que está utilizando. Al hacer esto, y se liberan versiones menores del plugin, el plugin se actualizará automáticamente a la última versión menor.

    Por ejemplo, si desea que su reproductor contenga la última versión compatible del complemento de pantalla final personalizado para la versión principal 2 del complemento, usaría lo siguiente:

        curl \
          --header "Content-Type: application/json" \
          --user $EMAIL \
          --request POST \
          --data '{
            "name": "Plugin Registry Test Player",
            "configuration": {
              "video_cloud": {
                "video": "4093372393001"
              },
              "plugins": [
                {
                  "registry_id": "@brightcove/videojs-custom-endscreen",
                  "version": "2.x"
                }
              ]
            }
          }' \
          https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players

    La configuración resultante aparecerá similar a la siguiente:

        "plugins": [{
          "injected_version": "2.0.10",
          "name": "customEndscreen",
          "registry_id": "@brightcove/videojs-custom-endscreen",
          "version": "2.x"
        }],
        "scripts": [
          "//players.brightcove.net/videojs-custom-endscreen/2.0.10/videojs-custom-endscreen.min.js"
        ],
        "stylesheets": [
          "//players.brightcove.net/videojs-custom-endscreen/2.0.10/videojs-custom-endscreen.css"
        ],

    Especificar una versión específica

    Puede especificar una versión específica del plugin a usar. Si hace esto, el plugin NO se actualizará automáticamente bajo ninguna circunstancia, por lo que tendrá que actualizar manualmente si es necesario.

    Para bloquear una versión del plugin, simplemente especifique la versión al crear el reproductor:

        curl \
          --header "Content-Type: application/json" \
          --user $EMAIL \
          --request POST \
          --data '{
            "name": "Plugin Registry Test Player",
            "configuration": {
              "video_cloud": {
                "video": "4093372393001"
              },
              "plugins": [
                {
                  "registry_id": "@brightcove/videojs-overlay",
                  "version": "1.0.2"
                }
              ]
            }
          }' \
          https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players
              

    La configuración del reproductor reflejará la versión específica, así como en los archivos JavaScript y CSS:

        "plugins": [{
          "name": "overlay",
          "registry_id": "@brightcove/videojs-overlay",
          "version": "1.0.2"
        }],
        "scripts": [
          "//players.brightcove.net/videojs-overlay/1.0.2/videojs-overlay.min.js"
        ],
        "stylesheets": [
          "//players.brightcove.net/videojs-overlay/1.0.2/videojs-overlay.css"
        ],
              

    Asignaciones no compatibles

    Si intenta asignar un complemento incompatible a un reproductor, o cambia la versión de un reproductor para que un complemento asignado previamente ya no sea compatible, se producirán errores. Los errores se detallan aquí.

    Asignar plugin a un reproductor no compatible

    Si en cualquier momento, ya sea en la creación o actualización del reproductor, intenta especificar una versión del plugin no compatible con una versión de reproductor, obtendrá un error. Por ejemplo, aquí hay una respuesta de la API cuando intenta asignar un complemento anterior no compatible a un nuevo reproductor:

        {
          "message": "There are no versions of the plugin that match the specified major version. The major version specified was 1.x for plugin @brightcove/videojs-bc-playlist-ui",
          "error_code": "PLAYER_MANAGEMENT_ERROR",
        }
              

    Cambiar la versión del reproductor para que no sea compatible con el plugin

    Si intenta cambiar la versión de un reproductor existente y el reproductor ya tiene un plugin que no es compatible con la versión recién asignada del reproductor, obtendrá un error similar al siguiente:

        {
          "error_code":"APPLICATION_ERROR",
          "message":"plugin \"@brightcove/videojs-ima3\" is not compatible with template 5.28.1"
        }
        

    Complemento configurado por Studio

    Si un complemento se carga a través de Studio, el plugin reflejará una nueva funcionalidad en el Registro de Plugins:

        {
          "account_id": "1507807800001",
          "compatibility": true,
          "embed_id": "default",
          "player": {
            "template": {
              "name": "single-video-template",
              "version": "6.7.0"
            }
          },
          "player_id": "SJajDfuiW",
          "player_name": "Plugin Registry Studio Configuration",
          "plugins": [{
            "injected_version": "2.0.10",
            "name": "customEndscreen",
            "options": {
              "content": "<h3>This is the endscreen content</h3>"
            },
            "registry_id": "@brightcove/videojs-custom-endscreen",
            "version": "2.x"
          }],
          "scripts": [
            "//players.brightcove.net/videojs-custom-endscreen/2.0.10/videojs-custom-endscreen.min.js"
          ],
          "stylesheets": [
            "//players.brightcove.net/videojs-custom-endscreen/2.0.10/videojs-custom-endscreen.css"
          ],
          "updated_at": "2017-09-26T18:09:31.940Z",
          "video_cloud": {
            "policy_key": "BCpkADawqM3YPJvvfxBgJNEGrPjTPoOw0LyCbiTPnDGtAVExTzXeAW3hcRtPpS8tNeSiA9MosLG076eMXWO8E2Lxv-V7mq1oTIgqK7Xf0HBP_TEm1i-e5zRN_VIW_SjFagYpRxuoM8btiEoD",
            "video": null
          }
        }
              

    Como puede ver en la configuración del reproductor, un complemento cargado en Studio se actualizará utilizando el comportamiento de la versión principal, es decir, las actualizaciones de versiones menores se aplicarán automáticamente.

    Actualización de información del Registro

    Puede actualizar la información del registro del plugin para un reproductor utilizando procedimientos estándar. Por ejemplo, la siguiente instrucción curl utiliza el PATCH método HTTP para cambiar un complemento de una versión específica al comportamiento de actualización de versión principal:

        curl \
          --header "Content-Type: application/json" \
          --user $EMAIL \
          --request PATCH \
          --data '{
            "plugins": [{
              "registry_id": "@brightcove/videojs-custom-endscreen",
              "version": "2.x"
            }]
          }' \
          https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players/$PLAYER_ID/configuration
              

    Recuerde que debe publicar su reproductor después de realizar un cambio.

    API de registro de complementos

    Se han agregado dos puntos finales nuevos a la API de administración de jugadores que permiten recuperar información del complemento desde el registro, lo que le proporciona funcionalidad para:

    • Recuperar todos los complementos en el registro.
    • Recuperar información sobre un complemento específico.

    Obtener todos los complementos

    Utilice lo siguiente para recuperar información sobre los plugins actualmente en el registro.

        curl \
          --header "Content-Type: application/json" \
          --user $EMAIL \
          --request GET \
          https://players.api.brightcove.com/v2/plugins
              

    La información devuelta aparecerá similar a la siguiente:

        [{
          "documentation": "https://support.brightcove.com/configuring-adobe-analytics-event-tracking",
          "description": "Adobe Analytics Player Plugin",
          "id": "@brightcove/videojs-bc-aa",
          "name": "bcAa",
          "current_version": "1.x"
        }, {
          "documentation": "https://support.brightcove.com/configuring-google-analytics-event-tracking",
          "description": "Google Analytics Player Plugin",
          "id": "@brightcove/videojs-bc-ga",
          "name": "bcGa",
          "current_version": "1.x"
        }, {
          "documentation": "https://support.brightcove.com/google-tag-manager-plugin-brightcove-player",
          "description": "Google Tag Manager Player Plugin",
          "id": "@brightcove/videojs-bc-gtm",
          "name": "bcGtm",
          "current_version": "1.x"
        }, {
          "documentation": "https://support.brightcove.com/playlist-ui-plugin",
          "description": "Brightcove customizations to videojs-playlist-ui",
          "id": "@brightcove/videojs-bc-playlist-ui",
          "name": "bcPlaylistUi",
          "current_version": "3.x"
        }, {
          "documentation": "https://support.brightcove.com/tealium-plugin-brightcove-player",
          "description": "Tealium Player Plugin",
          "id": "@brightcove/videojs-bc-tealium",
          "name": "bcTealium",
          "current_version": "1.x"
        }, {
          "documentation": "https://support.brightcove.com/beta-chromecast-plugin-brightcove-player",
          "description": "A Chromecast Receiver plugin for the Brightcove Player",
          "id": "@brightcove/videojs-chromecast-receiver",
          "name": "chromecastReceiver",
          "current_version": "1.x"
        }, {
          "documentation": "https://support.brightcove.com/custom-endscreen-plugin",
          "description": "Custom endscreens for video.js.",
          "id": "@brightcove/videojs-custom-endscreen",
          "name": "customEndscreen",
          "current_version": "2.x"
        }, {
          "documentation": "https://support.brightcove.com/configuring-brightcove-player-drm",
          "description": "Cross-browser support for MPEG-DASH w/ DRM using dash.js and silverlight and HLS Fairplay DRM",
          "id": "@brightcove/videojs-drm",
          "name": "eme",
          "current_version": "5.x"
        }, {
          "documentation": "https://support.brightcove.com/advertising-ima3-plugin",
          "description": "Google Interactive Media Ads (IMA) v3 support for video.js",
          "id": "@brightcove/videojs-ima3",
          "name": "ima3",
          "current_version": "3.x"
        }, {
          "documentation": "https://support.brightcove.com/display-overlay-plugin",
          "description": "Overlay for video.js.",
          "id": "@brightcove/videojs-overlay",
          "name": "overlay",
          "current_version": "2.x"
        }, {
          "documentation": "https://support.brightcove.com/picture-picture-plugin-aka-floating-or-pinned",
          "description": "A plugin for enabling a Picture-In-Picture mode for the Brightcove Player",
          "id": "@brightcove/videojs-pip",
          "name": "pip",
          "current_version": "1.x"
        }, {
          "documentation": "https://support.brightcove.com/manual-rendition-selection-plugin",
          "description": "Quality Selection Menu UI",
          "id": "@brightcove/videojs-quality-menu",
          "name": "qualityMenu",
          "current_version": "1.x"
        }, {
          "documentation": "https://support.brightcove.com/social-media-plugin",
          "description": "Social sharing integrations for video.js.",
          "id": "@brightcove/videojs-social",
          "name": "social",
          "current_version": "3.x"
        }, {
          "documentation": "https://support.brightcove.com/advertising-ssai-plugin",
          "description": "A plugin for the Brightcove Player implementing playback of SSAI streams.",
          "id": "@brightcove/videojs-ssai",
          "name": "ssai",
          "current_version": "1.x"
        }]
              

    Obtener información específica del complemento

    Utilice lo siguiente para recuperar información sobre un complemento específico. Tenga en cuenta que el nombre del complemento debe estar codificado por URL, así que en lugar de usarlo.@brightcove/videojs-ima3 %40brightcove%2fvideojs-ima3

        curl \
          --header "Content-Type: application/json" \
          --user $EMAIL \
          --request GET \
          https://players.api.brightcove.com/v2/plugins/%40brightcove%2fvideojs-ima3
              

    La información devuelta aparecerá similar a la siguiente:

        {
          "versions": [{
            "scripts": ["//players.brightcove.net/videojs-ima3/3/videojs.ima3.min.js"],
            "stylesheets": ["//players.brightcove.net/videojs-ima3/3/videojs.ima3.min.css"],
            "version_number": "3.x",
            "minimum_template_version": "6.0.0"
          }, {
            "minimum_template_version": "5.0.0",
            "version_number": "2.x",
            "stylesheets": ["//players.brightcove.net/videojs-ima3/2/videojs.ima3.min.css"],
            "scripts": ["//players.brightcove.net/videojs-ima3/2/videojs.ima3.min.js"]
          }, {
            "minimum_template_version": "1.14.0",
            "version_number": "1.x",
            "stylesheets": ["//players.brightcove.net/videojs-ima3/1/videojs.ima3.min.css"],
            "scripts": ["//players.brightcove.net/videojs-ima3/1/videojs.ima3.min.js"]
          }],
          "documentation": "https://support.brightcove.com/advertising-ima3-plugin",
          "description": "Google Interactive Media Ads (IMA) v3 support for video.js",
          "id": "@brightcove/videojs-ima3",
          "name": "ima3",
          "current_version": "3.x"
        }

    Aunque no se muestra en esta respuesta, también puede ver una before_template-version propiedad y el valor correspondiente. Esto aparecerá para los plugins más antiguos y establece la última versión de plantilla de reproductor con la que esa versión del plugin es compatible. El y trabajar juntos para establecer el rango de versiones de plantilla de reproductor con el que el plugin es compatible.minimum_template_version before_template-version


    Última actualización de la página el 28-09-2020