Beispiel für Brightcove Spieler: Beliebte Videos überlagern

In diesem Thema erfahren Sie, wie Sie das verwenden Analytics-API und einen Brightcove-Player mit einer Überlagerung, um eine Liste der beliebtesten Videos im heutigen Konto anzuzeigen, wenn die Wiedergabe angehalten wird oder endet. Siehe auch die Beliebte Videos Playlist Stichprobe.

Einschränkungen

Beispiel eines Spielers

Der Spieler ist unten in CodePen eingebettet. Das Overlay wird angezeigt, wenn Sie ein Video anhalten oder das Video endet. Die Anfrage an die Analytics API Die 6 meistgesehenen Videos der letzten 24 Stunden werden zusammen mit der API-Antwort angezeigt.

Sehen Sie sich das Overlay/Endscreen von Brightcove Learning Services (@bcls1969) auf CodePen an.

Quellcode

Sehen Sie sich die Komplettlösung auf GitHub an.

CodePen verwenden

Hier sind einige Tipps zur effektiven Verwendung des obigen CodePen:

  • Schalten Sie die tatsächliche Anzeige des Players um, indem Sie auf klicken Result Taste.
  • Drücke den HTML/CSS/JS Schaltflächen zur Anzeige EINES der Codetypen.
  • Später in diesem Dokument werden die Logik, der Ablauf und das Styling der Anwendung in der Player/HTML-Konfiguration, im Anwendungsfluss und im Anwendungsstyling diskutiert Abschnitte. Der beste Weg, um den Informationen in diesen Abschnitten zu folgen, besteht darin:
    1. Drücke den EDIT ON CODEPEN Klicken Sie im CodePen auf die Schaltfläche und halten Sie den Code in einem Browser / einer Browser-Registerkarte bereit.
    2. Passen Sie in CodePen an, welcher Code angezeigt werden soll. Sie können die Breite verschiedener CodeAbschnitte in CodePen ändern.
    3. Sieh den Player-/HTML-Konfiguration , Bewerbungsablauf und/oder Bewerbungsstyling Abschnitte in einem anderen Browser/Browser-Tab. Sie können nun den Codeerklärungen folgen und gleichzeitig den Code anzeigen.

Entwicklungs-Sequenz

Hier ist die empfohlene Entwicklungssequenz:

  1. Verwenden Sie die In-Page-Embed-Player-Implementierung, um die Funktionalität Ihres Players, Plugins und CSS zu testen (falls CSS benötigt wird)
  2. Legen Sie JavaScript und CSS des Plugins in separate Dateien zum lokalen Testen
  3. Stellen Sie den Plugin-Code und das CSS auf Ihrem Server bereit, sobald Sie Fehler herausgefunden haben
  4. Benutze Studio, um das Plugin und das CSS deinem Player hinzuzufügen
  5. Ersetzen Sie die In-Page-Embed-Player-Implementierung, wenn Sie feststellen, dass die Iframe-Implementierung besser passt (im nächsten Abschnitt beschrieben)

Weitere Informationen zu diesen Schritten finden Sie in der Schritt-für-Schritt-Anleitung: Leitfaden zur Entwicklung von Plugins

iframe oder In-Page einbetten

Bei der Entwicklung von Verbesserungen für den Brightcove Player müssen Sie entscheiden, ob der Code am besten für die Iframe- oder In-Page-Einbettungsimplementierung geeignet ist. Die Best Practice-Empfehlung besteht darin, ein Plugin zur Verwendung mit einer Iframe-Implementierung zu erstellen. Die Vorteile der Verwendung des iFrame-Players sind:

  • Keine Kollisionen mit vorhandenem JavaScript und/oder CSS
  • Reaktionsschnell
  • Der iframe erleichtert die Verwendung in Social-Media-Apps (oder wann immer das Video in andere Apps „reisen“ muss)

Obwohl die Integration des In-Page-Einbettungsplayers komplexer sein kann, planen Sie Ihren Code in dieser Implementierung manchmal. Um zu verallgemeinern, ist dieser Ansatz am besten, wenn die enthaltende Seite mit dem Spieler kommunizieren muss. Im Einzelnen sind hier einige Beispiele:

  • Der Code auf der enthaltenden Seite muss Spielerereignisse abhören und darauf reagieren
  • Der Player verwendet Stile von der enthaltenden Seite
  • Der Iframe führt dazu, dass die App-Logik fehlschlägt, wie eine Weiterleitung von der enthaltenen Seite

Selbst wenn Ihre endgültige Implementierung den Iframe-Code nicht verwendet, können Sie den In-Page-Einbettungscode trotzdem mit einem Plugin für Ihr JavaScript und einer separaten Datei für Ihr CSS verwenden. Dies kapselt Ihre Logik, sodass Sie sie problemlos in mehreren Spielern verwenden können.

Anmeldeinformationen erhalten

Um ein client_id und zu erhalten client_secret, müssen Sie zur OAuth UI gehen und diese App registrieren:

Dies sind die Berechtigungen, die Sie benötigen:

Analytics-API-Berechtigungen
Analytics-API-Berechtigungen

Sie können Ihre Anmeldeinformationen auch über CURL oder Postman abrufen - siehe:

Wenn Sie Anmeldeinformationen direkt von der API erhalten, benötigen Sie dies die Berechtigungen:

		[
			"video-cloud/analytics/read",
			"video-cloud/video/read"
		]

Verwendete API/Plugin-Ressourcen

Spieler-API-Methoden Spieler-API-Ereignisse Plugins REST-APIs
catalog.getVideo () spielen Videojs-Overlay: Einzelheiten finden Sie unter Anzeige-Overlay-Plugin dokumentieren. In diesem Beispiel wird die Analytics-API über einen in PHP integrierten Proxy verwendet.
catalog.load () pausieren    
spielen ()      
eins ()      

Player-/HTML-Konfiguration

Dieser Abschnitt beschreibt jede spezielle Konfiguration, die während der Spielererstellung erforderlich ist. Darüber hinaus werden andere HTML-Elemente beschrieben, die der Seite über den In-Page-Einbettungsplayer-Implementierungscode hinaus hinzugefügt werden müssen.

Player-Konfiguration

Dieses Beispiel verwendet einen responsiven Player, aber Sie können den Einbettungscode auch für einen festen Spieler verwenden.

Anderes HTML

Denken Sie daran, das id Attribut dem video Tag im Einbettungscode des Spielers hinzuzufügen.

		<video-js id="myPlayerID"
			...

Ablauf der Anwendung

Die grundlegende Logik hinter dieser Anwendung lautet:

  • Holen Sie sich die Seite DOM-Elemente.
  • Richten Sie die Anfrage für die Analytics-API ein.
  • Rufen Sie den Proxy-Code auf, um die Anfrage an die Analytics-API zu stellen.
  • Formatieren Sie den Overlay-Inhalt.
  • Laden und spielen Sie beliebtes Video ab.

Holen Sie sich die Seite DOM-Elemente

Holen Sie sich einen Verweis auf die DOM-Elemente der Seite. Wir werden diese verwenden, um die anzuzeigen Analytics API Anfrage und Antwort. Legen Sie außerdem die Werte für die Proxy-URL und die Analytics API Basis-URL.

Richten Sie die Anfrage für die Analytics-API ein

Finden Sie den Code, der mit der Bezeichnung versehen ist:

		// +++ Setup API request +++

Dieses Beispiel gibt 6 Videos zurück, die die meisten Videoaufrufe von gestern haben.

Stellen Sie eine Anfrage an die Analytics-API

Finden Sie den Code, der mit der Bezeichnung versehen ist:

		// +++ Make a request to the Analytics API +++

Verwenden Sie den Proxy-Code, um eine HTTP-GET-Anforderung an die zu senden Analytics API RESTful Web Service. Analysieren Sie die zurückgegebenen Daten in das JSON-Format. Wenn ein Fehler auftritt, zeigen Sie eine Fehlermeldung an.

Formatieren Sie den Overlay-Inhalt

Finden Sie den Code, der mit der Bezeichnung versehen ist:

		// +++ Format the overlay content +++

Gehen Sie wie folgt vor, um den Overlay-Inhalt zu formatieren:

  1. Extrahieren Sie die Video-IDs aus der Antwort aus der Analytics-API.
  2. Verwenden Sie den Player-Katalog, um die Videoobjekte für jede von der Analytics-API zurückgegebene Video-ID abzurufen.
  3. Generieren Sie den HTML-Code für das Overlay.
  4. Initialisieren Sie das Overlay-Plugin mit den neu erstellten Inhalten für verwandte Videos. Wenn das Overlay angezeigt wird, wird ein Raster mit gängigen Video-Miniaturansichten angezeigt. Zeigen Sie das Overlay an, wenn die Videowiedergabe angehalten oder beendet wurde. Blenden Sie das Overlay aus, wenn das Hauptvideo abgespielt wird.

Beliebtes Video laden und abspielen

Finden Sie den Code, der mit der Bezeichnung versehen ist:

		// +++ Load and play popular video +++

Erstellen Sie eine Funktion, die die Wiedergabe für das beliebte Video lädt und startet, das vom Benutzer ausgewählt wird.

Styling der Anwendung

Das CSS stylt die Miniaturbilder des Videos im Overlay.

Plugin-Code

Normalerweise sind bei der Umwandlung des JavaScript in ein Brightcove Player-Plugin nominelle Änderungen erforderlich. Eine erforderliche Änderung besteht darin, die Standardverwendung der ready() Methode durch den Code zu ersetzen, der ein Plugin definiert.

Hier ist der sehr häufig verwendete Start zu JavaScript-Code, der mit dem Player funktioniert:

		videojs.getPlayer('myPlayerID').ready(function() {
			var myPlayer = this;
			...
		});

Sie ändern die erste Zeile, um die Standardsyntax zum Starten eines Brightcove Player-Plugins zu verwenden:

		videojs.registerPlugin('pluginName', function(options) {
			var myPlayer = this;
			...
		});

Wie bereits erwähnt, können Sie den JavaScript-Code des Plugins im entsprechenden GitHub Repo dieses Dokuments sehen: popular-videos-overlay.js.

Verwenden des Plugins mit einem Player

Sobald Sie die CSS- und JavaScript-Dateien des Plugins an einem für das Internet zugänglichen Ort gespeichert haben, können Sie das Plugin mit einem Player verwenden. Im Studio SPIELER Modul können Sie einen Spieler wählen, dann in der PLUGINS fügen Sie die URLs zu den CSS- und JavaScript-Dateien hinzu und fügen Sie auch die Name und Optionen , wenn Optionen benötigt werden.

Proxy-Code

Um Ihre eigene Version der Beispiel-App auf dieser Seite zu erstellen, müssen Sie Ihren eigenen Proxy erstellen und hosten. (Die von Brightcove Learning Services verwendeten Proxys akzeptieren nur Anfragen von Brightcove-Domains.) Ein Beispielproxy, der dem von uns verwendeten sehr ähnlich ist, aber ohne die Prüfungen, die Anfragen von Nicht-BrightCove-Domänen blockieren, kann in diesem GitHub-Repository gefunden werden. Dort finden Sie auch grundlegende Anweisungen zur Verwendung und eine ausführlichere Anleitung zum Erstellen von Apps rund um den Proxy unter Verwenden der REST-APIs.