Dépôts de joueurs

Dans cette rubrique, vous apprendrez comment l'API Player Management utilise l'API Delivery System pour stocker et gérer des informations sur les lecteurs Brightcove.

Aperçu

Afin de publier des lecteurs sur un CDN, l'API de gestion des lecteurs utilise le API du système de livraison. L'API du système de livraison vous permet de créer un référentiel git, dont le contenu est hébergé sur joueurs.brightcove.net. Lorsqu'un joueur est créé, Brightcove crée un référentiel dans les coulisses. Chaque fois que le lecteur est republié, que ce soit directement demandé par un éditeur ou lorsqu'une mise à jour du lecteur Brightcove est publiée, il y a un commit correspondant et un push vers ce référentiel.

Les référentiels Git, entre autres, fournissent un historique des modifications au fil du temps. Lors du débogage d'un lecteur, il peut parfois être très utile d'obtenir une copie de ce référentiel afin de pouvoir examiner vous-même l'historique des modifications. Tout d'abord, vous apprendrez à récupérer des informations générales sur votre lecteur, en utilisant l'outil de ligne de commande curl et/ou le plugin Chrome Postman. Vous apprendrez ensuite à voir l'historique des joueurs pour la création et la publication.

Informations sur le joueur

Ceux qui sont à l'aise avec la ligne de commande voudront probablement utiliser curl pour obtenir des informations sur les joueurs, tandis que ceux qui sont plus à l'aise avec une interface graphique choisiront l'option Postman.

Utiliser curl

Si vous n'êtes pas familiarisé avec curl et la définition de variables d'environnement, lisez les deux premières sections du Pas à pas: Gestion des joueurs. Assurez-vous que les variables d'environnement suivantes sont définies :

  • E-MAIL
  • IDENTIFIANT DE COMPTE
  • PLAYER_ID

Vous pouvez ensuite utiliser l'instruction curl suivante pour obtenir des informations sur votre lecteur.

      curl \
        --header "Content-Type: application/json" \
        --user $EMAIL \
        --request GET \
        https://players.api.brightcove.com/v2/accounts/{account_id}/players/{player_id}/embeds/default

L'API renvoie une réponse semblable à la suivante :

      {
        "branches": {
          "master": {
            "video_cloud": true,
            "updated_at": "2015-02-23T18:36:39.323Z"
          },
          "preview": {
            "video_cloud": true,
            "updated_at": "2015-02-23T18:36:39.323Z"
          }
        },
        "publish_request": {
          "comment": "Player publish request",
          "author": "mboles@brightcove.com",
          "status": "COMPLETE",
          "requested_at": "2015-02-26T16:29:33.207Z",
          "queue_msg_id": "33533986-10d3-4585-8dcd-7ea52f3d2879",
          "errorCode": null,
          "errorMessage": null,
          "buildLog": "https://players.brightcove.net/1507807800001/0d92f482-49d9-44e6-ba1d-e2360dab838a_default/logs/33533986-10d3-4585-8dcd-7ea52f3d2879.log",
          "retries": 0,
          "elapsed_time": 12
        },
        "name": "MySamplePlayer",
        "id": "default",
        "url": "https://players.brightcove.net/1507807800001/0d92f482-49d9-44e6-ba1d-e2360dab838a_default/index.html",
        "embed_code": "<iframe src='//players.brightcove.net/1507807800001/0d92f482-49d9-44e6-ba1d-e2360dab838a_default/index.html' allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>",
        "embed_in_page": "https://players.brightcove.net/1507807800001/0d92f482-49d9-44e6-ba1d-e2360dab838a_default/in_page.embed",
        "repository_url": "https://repos.api.brightcove.com/v1/accounts/1507807800001/repos/0d92f482-49d9-44e6-ba1d-e2360dab838a_default",
        "preview_url": "https://preview-players.brightcove.net/v1/accounts/1507807800001/players/0d92f482-49d9-44e6-ba1d-e2360dab838a/master/embeds/default/preview/index.html",
        "preview_embed_code": "<iframe src='//preview-players.brightcove.net/v1/accounts/1507807800001/players/0d92f482-49d9-44e6-ba1d-e2360dab838a/master/embeds/default/preview/index.html' allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>"
      }

Utiliser le facteur

Postman fournit une interface utilisateur plus conviviale pour interagir avec l'API. Si vous n'êtes pas familier avec Postman, lisez le Utiliser Postman pour les requêtes HTTP doc pour une compréhension de base. Vous ne créez pas de variables d'environnement lorsque vous utilisez Postman. Au lieu de cela, vous créez l'emplacement de l'URL avec les valeurs appropriées dans l'URL. Par exemple, ce qui suit montre une URL appropriée à utiliser dans Postman, contenant le compte et l'ID du joueur.

      https://players.api.brightcove.com/v2/accounts/1507807800001/players/6aac508a-741e-41a2-bc7a-5805644cf089/embeds/default

Pour utiliser Postman, procédez comme suit :

  1. Entrez l'URL en haut du formulaire.
  2. Définissez la méthode HTTP sur AVOIR.
  3. Créer un en-tête en utilisant Type de contenu et la valeur correspondante application/json.
  4. Clique le Envoyer bouton.
  5. Entrez vos informations d'identification Studio lorsque vous y êtes invité.

La réponse sera alors renvoyée. Pour faciliter la visualisation, assurez-vous de cliquer sur le Joli et JSON boutons juste au-dessus de la réponse.

Exemple de facteur
Exemple de facteur

Historique du joueur

Dans cette section, vous utiliserez les commandes git. Pour un très bref tutoriel sur git, voir le Présentation de Git document.

Vous allez d'abord cloner un dépôt de joueur. Un répertoire sera créé au nom de l'ID du joueur, dans le répertoire où vous émettez le git clone commander.

  1. Ouvrez une invite Terminal/Commande et accédez à un emplacement dans lequel vous souhaitez créer le dossier.
  2. Ensuite, créez une URL pour le dépôt du joueur sous la forme :
          https://repos.api.brightcove.com/v1/accounts/ACCOUNT_ID/repos/PLAYER_ID_default

    Exemple :

          https://repos.api.brightcove.com/v1/accounts/1507807800001/repos/0d92f482-49d9-44e6-ba1d-e2360dab838a_default
  3. À l'invite de commande, créez ou déplacez-vous vers un répertoire dans lequel vous souhaitez cloner le référentiel du lecteur.
  4. Une fois que vous êtes dans ce répertoire, entrez la commande git suivante pour cloner le référentiel du joueur, en remplaçant votre propre compte et identifiants de joueur :
          git clone https://repos.api.brightcove.com/v1/accounts/1507807800001/repos/0d92f482-49d9-44e6-ba1d-e2360dab838a_default
    et appuyez sur retour/Entrée.
  5. Dans la réponse, vous devriez voir quelque chose comme ce qui suit :
          Clonage dans '0d92f482-49d9-44e6-ba1d-e2360dab838a_default'...
          à distance : Compter des objets : 39, fait.
          à distance : Compression d'objets : 100% (31/31), fait.
          à distance : Total 39 (delta 13), réutilisé 0 (delta 0)
          Déballage des objets : 100% (39/39), fait.
          Vérification de la connectivité... terminé.
  6. Sur la ligne de commande (ou dans votre gestionnaire de fichiers), localisez le répertoire du lecteur cloné pour vous assurer qu'il a été cloné à l'emplacement souhaité ; il sera nommé ainsi :
          {player_id}_default
  7. Sur la ligne de commande, remplacez les répertoires par le répertoire du référentiel du lecteur cloné que vous avez localisé à l'étape précédente.
  8. Saisissez la commande :
          git log
    et appuyez sur retour/Entrée.
  9. Vous devriez voir une réponse semblable à la suivante :
          commit b4ed1c2e3d429cc41b704fd44bebdc31f661a95c
          Author: bc86ece6-b3dd-4d78-a67d-93b503dc1c2e <mboles@brightcove.com>
          Date :   Jeu Fév 26 16:29:43 2015 +0000
          
              Demande de publication du lecteur
          
          commit 6c854213b2b2597225c36212dc8be545fcf2c104
          Author: bc86ece6-b3dd-4d78-a67d-93b503dc1c2e <mboles@brightcove.com>
          Date :   Jeu Fév 26 16:28:13 2015 +0000
          
              Demande de publication du lecteur
          
          commettre 7f78d49cb678259351f83a94e655f88607de077f
          Auteur : 6b112bd1-987c-41a2-84ac-f9dd8302b567 < mboles@brightcove.com >
          Date :   Lun Fév 23 18:36:49 2015 +0000
          
              Joueur créé
  10. Les identifiants de validation seront utilisés pour obtenir des informations plus détaillées. Voir Informations de validation pour plus de détails.

Informations de validation

Ce qui suit peut être utilisé pour collecter différentes informations sur les commits des joueurs. Bien sûr, vous devrez remplacer vos identifiants de validation particuliers, qui peuvent être obtenus à partir de la réponse de l'historique du joueur, comme indiqué dans la section précédente.

  • Afficher les spécificités d'un seul commit (demande de publication)
          git show e6e14ecda8e7790bf7d91e5e794507e776eef770
  • Afficher les différences entre les commits (requêtes de publication)
          git diff e6e14ecda8e7790bf7d91e5e794507e776eef770 64a28431b3727d798510343caacb263c2829572d
  • Afficher les fichiers modifiés dans chaque commit
          git log --name-status