
Teilen Sie:
Simon ist Customer Solutions Architect bei Vonage und bringt 20 Jahre Erfahrung im Bereich Kommunikation mit. In seiner globalen Karriere arbeitete er unter anderem im ländlichen Afrika und in Indien, um die Kommunikation an abgelegene Orte zu bringen. Heute setzt er sich leidenschaftlich für die Nutzung von Kommunikations-APIs ein, um die Benutzerfreundlichkeit und Effizienz zu verbessern, und konzentriert sich auf den Bereich Video-WebRTC.
Best Practices für den Einstieg in Vonage Video
Lesedauer: 22 Minuten
Als Lösungsarchitekt verbringe ich viel Zeit damit, mit Kunden zu sprechen, die derzeit die Vonage Video API implementieren oder kurz davor stehen, sie zu implementieren. Vonage Video-API. Ich höre mir ihre Anwendungsfälle und Anforderungen genau an und berate sie zu Best Practices mit unseren APIs und helfe ihnen, die bestmögliche Benutzererfahrung zu schaffen. Hier habe ich versucht, einige der Tipps und Tricks zusammenzutragen, die ich in den vier Jahren meiner Zusammenarbeit mit Vonage-Kunden in Bezug auf die Video-API gesammelt habe.
Besuchen Sie das Video-API Konto-Portal - um Ihr neues Konto einzurichten; es ist kostenlos und Ihrem Konto wird automatisch ein Testguthaben von zehn US-Dollar (10 $) gutgeschrieben, das ein Jahr lang gültig ist.
Wo kann man mehr Hilfe bekommen?
Eine ausführliche Dokumentation für Entwickler zur Vonage Video API ist öffentlich zugänglich auf unserer Video-API-Entwickler-Site.
Hier finden Sie alle Details, die Sie für praktisch jede Frage benötigen, Beispielcodes und Versionshinweise. Außerdem finden Sie hier eine große Auswahl an Knowledge-Base-Artikeln: https://api.support.vonage.com/hc/en-us
Einige dieser Informationen wurden von meinen Kollegen beigesteuert, denn als Team haben wir so ziemlich jeden Anwendungsfall bearbeitet, den man sich vorstellen kann!
Damit wir Sie noch besser unterstützen können, bitten wir Sie, uns Ihr Feedback und Ihre Fragen per E-Mail zukommen zu lassen support@api.vonage.com
Lernen Sie Ihre Videooptionen kennen
Video-API-Plattform
Vonage Video nutzt webRTC für die Audio-Video-Kommunikation und besteht aus Client-Bibliotheken für Web, IOS, Android, React Native, Windows, MacOS und Linux sowie aus Server-SDKs und REST-APIs. Weitere Informationen finden Sie hier. Schlüsselbegriffe:
Die Video-API-Plattform verwendet Token für die Autorisierung, d. h. Sie müssen sich nicht um die Erstellung von Benutzern auf der Plattform kümmern; diese können bei Bedarf von der Anwendung erstellt werden.
Sitzung: Eine Sitzung ist eine logische Gruppe von Verbindungen und Datenströmen. Verbindungen innerhalb derselben Sitzung können Nachrichten austauschen. Stellen Sie sich eine Sitzung als den "virtuellen Raum" vor, in dem die Teilnehmer miteinander interagieren können. Sitzungen sollten nicht wiederverwendet werden, da dies die Fehlersuche erschwert und Ihre Implementierung möglicherweise weniger sicher macht.
VerbindungVerbindung: ist ein Endpunkt, der an einer Sitzung teilnimmt und in der Lage ist, Nachrichten zu senden und zu empfangen. Eine Verbindung hat eine Präsenz, sie ist entweder verbunden und kann Nachrichten empfangen oder sie ist nicht verbunden.
StreamStream: Medienstrom zwischen zwei Verbindungen. Dies bedeutet, dass tatsächliche Bytes, die Medien enthalten, ausgetauscht werden. Die Medien können nur aus Audio oder aus Audio und Video bestehen. Sie können auch Bildschirmfreigaben und benutzerdefinierte Streams erstellen.
Herausgeber: Kunden, die Medienströme veröffentlichen
Abonnent: Clients, die Medienströme empfangen.
Video-Express
Vonage verfügt über eine jahrzehntelange Erfahrung in der Videoentwicklung und hat eine einfache High-Level-API namens Video Express entwickelt, um die Entwicklung und Integration von Mehrparteien-Videos in Webanwendungen zu beschleunigen.
Video Express vereinfacht die Entwicklung von Videoanwendungen und kann für 1:1 und Mehrparteienanwendungen im Web oder auf dem Handy verwendet werden.
Nach dem Auspacken bietet es Folgendes:
Automatisch skalierbar auf 25 Teilnehmer!
Integrierte Vorschau und Einstellungen vor dem Anruf
Intelligentes Bandbreitenmanagement
Adaptive Layouts
Automatische Priorisierung der Bildschirmfreigabe
Sofortige Optimierung für mobile Geräte
Auflösung bis zu 1080P
Hintergrund Unschärfe
Wir haben auch eine Beispielanwendung die eine Reihe von Funktionen hinzufügt, darunter:
Vorgesprächsraum
Teilnehmerliste
Chat
Weitere Informationen finden Sie auf der Vonage Video Express Seite.
Weitere Ressourcen finden Sie in diesen Blogbeiträgen:
Einführung von Vonage Video Express: Beschleunigen Sie Ihre Video Collaboration-Projekte
Erstellen Sie eine Mehrparteien-Video-App mit dem neuen Vonage Video Express
Bewährte Praktiken für Projekte und Server
Einrichten Ihrer Umgebung
Wenn Sie eine Videoanwendung entwerfen, sollten Sie zwei Umgebungen in Betracht ziehen: eine zum Testen und eine für die Produktion. Zum Testen einfacher Elemente oder zur Reproduktion von Problemen können Sie auch unseren Spielplatz oder die Opentok-Befehlszeile verwenden.
Erstellen Sie einen Projektschlüssel für Labor und Produktion
Link zu opentok CLI - https://www.npmjs.com/package/opentok-cli
Link zum Spielplatz - https://tokbox.com/developer/tools/playground_doc/
Verständnis für die Versionierung von API (und SDK)
Für Kunden der Enterprise-Umgebung ist es wichtig zu wissen, dass neu hinzugefügte API-Schlüssel standardmäßig die Standard-Umgebung verwenden. Wenn Sie die Umgebung eines API-Schlüssels von Standard auf Enterprise umstellen müssen, können Sie dies in Ihrem Video-API-Konto-Portal.
Um sicherzustellen, dass Ihre Anwendung das Enterprise JS SDK aufruft, verwenden Sie source = https://enterprise.opentok.com/v2/js/opentok.min.js um sicherzustellen, dass Sie langfristigen Support für Ihre SDKs erhalten.
Weitere Informationen finden Sie in der Leitfaden zur Unternehmensumgebung.
Bewährte Verfahren für die Einrichtung von API-Schlüssel/Geheimnis, Token und Sitzungs-IDs
Als Nächstes müssen Sie die Zugangsdaten für Ihr Konto einrichten.
API-Schlüssel und Geheimnis
Halten Sie die API-Geheimnisse/Schlüssel privat, indem Sie sie NICHT in öffentlichen Repos offenlegen.
Speichern Sie Geheimnisse/Schlüssel NICHT in Client-Bibliotheken/kompilierten mobilen SDKs.
Verwenden Sie HTTPS nur für REST-Aufrufe.
Sitzungs-ID
Für jede neu erstellte Sitzung wird immer eine neue sessionId erzeugt.
Die Qualitätsbewertungen und Daten der Sitzungen werden durch sessionId indiziert. Wenn es mehrere Konversationen (Meetings) pro sessionId gibt, ist es schwierig, die Fehlerbehebung mit dem Vonage Inspektor-Toolda die wiederverwendeten sessionIds in der Regel niedrigere Gesamtqualitätswerte ausweisen als die tatsächliche Gesprächsqualität, die die Endbenutzer erfahren.
Wertmarken
Ihr Server, der Token generiert, muss sich hinter einem gesicherten/authentifizierten Endpunkt befinden.
Erzeugen Sie für jeden Teilnehmer immer neue Token.
Token dürfen nicht aufbewahrt oder wiederverwendet werden.
Standardmäßig laufen die Token nach 24 Stunden ab, dies wird zum Zeitpunkt der Verbindung überprüft. Passen Sie die Gültigkeitsdauer je nach Anwendungsfall und Anwendung nach Bedarf an.
Fügen Sie den Token (unter Verwendung des Datenparameters) zusätzliche Informationen hinzu, z. B. Benutzernamen oder andere Informationen zur Identifizierung der Teilnehmer, aber verwenden Sie NIEMALS persönliche Informationen.
Legen Sie gegebenenfalls Rollen fest, z. B. Moderator, Herausgeber und Abonnent.
Weitere Informationen über Token finden Sie in der Übersicht über die Erstellung von Token Seite.
Verstehen von Media Router und Media Modes
Wenn Sie eine Sitzung erstellen, legen Sie fest, wie die Clients in der Sitzung Audio- und Videoströme senden sollen, was als Medienmodus bezeichnet wird. Es gibt zwei Optionen:
Relayed Mode - dieser Medienmodus verwendet keine Vonage Medienserver, sondern versucht, eine direkte Medienverbindung zwischen den Teilnehmern herzustellen. Bevor Sie sich für den Relayed Mode entscheiden, sollten Sie folgende Punkte beachten:
Plattformfunktionen wie Archivierung (Aufzeichnung), SIP-Integration, Live-Streaming und Experience Composer werden nicht benötigt
dass der Anwendungsfall nur Eins-zu-Eins- und 3-Parteien-Sitzungen sind
Wenn direkte Medien zwischen den Teilnehmern bevorzugt werden
Eine Ende-zu-Ende-Verschlüsselung der Medien ist erforderlich
Beachten Sie, dass die Medienqualität im Relayed-Modus nicht verwaltet wird, da die Medien zwischen den Clients ausgetauscht werden. Daher funktioniert die Einstellung der Bildrate und/oder Auflösung des Teilnehmers nicht. Weitere Informationen über Token finden Sie in der Skalierbares Video Seite.
Gerouteter Modus - dieser Medienmodus verwendet Vonage-Medienserver. Bevor Sie entscheiden, ob Sie den gerouteten Modus verwenden möchten oder nicht, sollten Sie Folgendes prüfen:
Drei oder mehr Teilnehmer
Möglicherweise müssen Sie archivieren
Erforderliche Medienqualitätskontrolle (Audio-Fallback und Video-Wiederherstellung)
Möglicherweise muss eine SIP-Zusammenschaltung verwendet werden
Möglicherweise besteht Bedarf an interaktiven oder Live-Streaming-Übertragungen
End-to-End-Verschlüsselung erfordert ein Add-on-Abonnement und wird nicht von allen SDKs unterstützt.
Weitere Informationen zu den Medienmodi finden Sie in der Übersicht über die Sitzungserstellung.
Weitere Informationen zur Ende-zu-Ende-Verschlüsselung im Routed Mode, finden Sie in der Ende-zu-Ende-Verschlüsselung Seite.
Adaptives Medien-Routing - Ab OpenTok.js v2.24.7 werden geroutete Sitzungen optimiert, um adaptives Media-Routing zu verwenden, wenn möglich. Adaptives Media Routing bestimmt, ob Medien ohne den OpenTok Media Router für One-on-One Video-Streaming weitergegeben werden können, um die Medienleistung zwischen zwei Teilnehmern zu optimieren. Die geroutete Sitzung passt das Medien-Routing automatisch an, um den OpenTok Media Router zu verwenden, wenn dies erforderlich ist - für Sitzungen mit drei oder mehr Teilnehmern, Archivierung, Live-Streaming-Übertragungen, SIP-Interconnect, Experience Composer und Audio Connector.
Audio-Fallback - Im gerouteten Modus fällt Vonage SDK automatisch in den reinen Audiomodus zurück, wenn die Bandbreite für Videoanrufe zu gering ist. Wenn Sie dieses Verhalten jedoch außer Kraft setzen möchten, ist dies möglich, indem Sie audioFallback in der Datei OT.initPublisher auf false setzen.
Getstats-Methode - zusätzlich zur oben erwähnten Implementierung von benutzerdefiniertem Audio-Fallback, getStats() Abfrage kann verwendet werden, um Informationen über die Qualität der Verbindung zu erfassen, um dem Benutzer Echtzeitinformationen anzuzeigen und um Fehler zu beheben. Siehe dieses Beispiel.
Vonage Inspector Tool - Die Vonage Inspektor-Werkzeug kann verwendet werden, um die Medienleistung während der Sitzung sowie die während des Anrufs verwendeten Codecs, Modi (weitergeleitet oder geroutet), Ereignisse und erweiterten Funktionen zu verstehen.
Fehlerbericht-Methode - Es ist möglich, Fehler zur späteren Überprüfung im Inspektor zu markieren. Die Bericht-Ausgabe-ID kann auch verwendet werden, um den Inspektor zu durchsuchen, ohne die SessionId zu kennen.
Sendung
Die Video-API bietet Nutzern zwei Optionen für die Veröffentlichung von Live-Videos für ein größeres Publikum: eine interaktive Übertragung und eine Live-Streaming-Übertragung.
Interaktive Übertragung
Diese Art der Übertragung ermöglicht es den Kunden, miteinander zu interagieren, indem sie den Stream des anderen abonnieren. Wichtig ist, dass diese Art der Übertragung bis zu 15.000 Abonnenten in Full HD unterstützen kann. Im Folgenden finden Sie einige Punkte, die Sie bei der Verwendung dieser Übertragung beachten sollten:
Besuchen SieSkalierbares Video-Simulcast von Vonage um mehr über Simulcast zu erfahren. Standardmäßig wird Simulcast aktiviert, sobald die dritte Verbindung dem Anruf beitritt (dies dient dazu, Simulcast bei Einzelgesprächen zu vermeiden).
Um die Standardeinstellung außer Kraft zu setzen und skalierbares Video für Publisher in einer gerouteten Sitzung zu deaktivieren, können Sie die Option scalableVideo in der OT.initPublisher()-Methode verwenden. Beachten Sie, dass sich die maximale Anzahl der Abonnenten ändert, wenn die Anzahl der Publisher steigt. Um die maximale Anzahl der Abonnenten zu ermitteln, konsultieren Sie die Tabelle auf der "Interaktive Live-Videoübertragungen" Anleitung.
Um die Stabilität in großen Sitzungen zu gewährleisten, unterdrücken Sie Verbindungsereignisse, siehe die "Unterdrückung von Verbindungsereignissen" Anleitung.
Größere WebRTC-Sitzungen sind möglich, wenn Sie den Erlebnis-Kompositor.
Live-Streaming
Bei dieser Art der Übertragung können mehr als 15.000 Abonnenten Streams abonnieren. Es gibt zwei Arten von Protokollen für die Videoübertragung: RTMP (Real Time Messaging Protocol) und HLS (HTTP Live Streaming). Unabhängig davon, für welches Protokoll Sie sich entscheiden, sollten Sie die Anzahl der Publisher begrenzen, um ein besseres Zuschauererlebnis zu gewährleisten.
HLS vs. RTMP
HLS unterstützt eine unbegrenzte Anzahl von Abonnenten, während RTMP durch die RTMP-Übertragungsplattform begrenzt ist.
HLS verzögert sich um 15-20 Sekunden, während RTMP (von der Vonage-Plattform) um fünf Sekunden verzögert wird; dies schließt jedoch nicht die Verzögerung durch die RTMP-Übertragungsplattform ein, da auch sie aufgrund ihrer Videoverarbeitung Verzögerungen verursacht.
HLS mit niedriger Latenz (LL-HLS) wird um 4-6 Sekunden verzögert
Die HLS-Wiedergabe wird nicht von allen Browsern unterstützt, aber es gibt Plugins, die Sie verwenden können, z. B. flowplayer. Die Wiedergabe ermöglicht es den Nutzern, vom Beginn des Livestreams bis zum aktuellen Livestream zurückzuspringen, sozusagen ein Video-Scrubbing (Zurückspulen/Vorspulen).
Der DVR-Modus kann aktiviert werden, wenn Sie eine HLS-Sitzung erstellen. Dies ist ein Apple-Standard, der es den Benutzern ermöglicht, HLS-Live-Sendungen innerhalb eines Zeitfensters von 2 Stunden wiederzugeben/anzuhalten und fortzusetzen.
HLS/RTMP hat eine Standard-Höchstdauer von vier Stunden. Wenn die Sendung länger dauern soll, ändern Sie die Eigenschaft "Maximale Dauer" (die maximale Dauer beträgt 10 Stunden).
HLS/RTMP-Streams werden automatisch sechzig Sekunden nach der Trennung des letzten Clients von der Sitzung beendet.
Wenn Sie mehr über Live-Streaming erfahren möchten, z. B. über Layouts, die maximale Dauer und das Starten und Stoppen von Live-Streaming, besuchen Sie den Leitfaden für Live-Streaming-Übertragungen.
Mehr zu diesem Thema können Sie auch in diesem Blogbeitrag lesen: "Video-API: Interaktive Sendungen und Aufzeichnungen für Sie besser machen" und in diesem Beispielcode.
Bewährte Praktiken für Benutzeroberfläche und Benutzererfahrung
Im Allgemeinen wird empfohlen, die folgenden Dokumente zu lesen und zu befolgen Dokumentation zur UI-Anpassung (Web, iOS, Android, Windows) zu lesen und die Abschnitte zu befolgen, die für Ihre Anwendung relevant sind.
Sicherstellung einer guten Benutzererfahrung
Pre-Call-Test - Fügen Sie einen Pre-Call-Test hinzu, bei dem das Gerät und die Verbindung des Benutzers einem Netzwerk- und Hardwaretest unterzogen werden, bevor er einer Sitzung beitritt. Denken Sie daran, für jeden Test neue Sitzungs-IDs zu generieren und den Test mindestens 30 Sekunden lang laufen zu lassen, um genauere Ergebnisse zu erhalten.
Das allgemeine Vonage Precall-Testwerkzeug kann von Ihnen und Ihren Kunden für allgemeine Verbindungstests mit der Video-API verwendet werden
Wenn Sie Ihren eigenen PreCall-Test integrieren und alle Testdaten sammeln möchten, stehen Ihnen dazu mehrere Ressourcen zur Verfügung:
Wie ein Precall-Test in eine komplette Anwendung eingebettet werden kann, können Sie auch in unserer Live Meeting-Demo und den entsprechenden Quellcode der Demo ansehen, um zu prüfen, wie Sie ihn nachbauen können.
Veröffentlichen/Abonnieren von Videostreams - Handler einschließen
Completion Handlers können Ihnen Feedback geben, wenn Sie versuchen, eine Verbindung zu einer Video-API-Sitzung herzustellen, zu veröffentlichen, zu abonnieren oder Signale zu senden. Sie werden hier beschrieben:
Sie können auch auf Ausnahmeereignisse für das OT-Objekt warten, die Ausnahmeereignisse für allgemeinere Fehler auslösen, die hier beschrieben werden: Ausnahmeereignisse
Wenn die Verbindung hergestellt ist, veröffentlichen Sie normalerweise Audio- und Videodateien und abonnieren auch die Streams anderer Teilnehmer. Bei der Verwaltung der Verleger und Abonnenten in Bezug auf die Benutzeroberfläche können Sie die jeweiligen Ereignisse der Verleger- und Abonnenteninstanzen nutzen, die Ihnen helfen, den Benutzern nützliche Informationen anzuzeigen, wenn bestimmte Ereignisse oder Ausnahmen auftreten. Publisher- und Subscriber-Ereignisse können unterschiedlich sein und werden hier beschrieben:
Für Android und iOS, siehe "Ausnahmebehandlung" oben
Audio Fallback - unser Medienserver prüft ständig die Netzwerkbedingungen und wenn er ein Problem mit der Verbindung des Endnutzers feststellt, wird das Video automatisch abgebrochen und nur mit Audio fortgesetzt, wenn der Paketverlust größer als 15% ist; und ein Ereignis wird gesendet, wenn dies geschieht (z.B. für iOS: subscriberVideoDisabled:reason: und subscriberVideoEnabled:Grund:). Es wird empfohlen, dass ein solches Ereignis auf der Benutzeroberfläche angezeigt wird, um die betroffenen Benutzer darauf hinzuweisen, dass die Qualität ihrer Verbindung gesunken ist und sie zu einer reinen Audioverbindung wechseln. Der Schwellenwert für die Umschaltung auf Nur-Audio ist nicht konfigurierbar, weitere Informationen finden Sie in diesen Beispielen:
https://tokbox.com/developer/sdks/js/reference/Subscriber.html#event:videoDisableWarning
Audio Fallback ist standardmäßig aktiviert, kann aber mit dem Parameter audioFallbackEnabled deaktiviert werden. Siehe hier
Wiederherstellung der Verbindung zur Sitzung - Wenn ein Teilnehmer aufgrund von Netzwerkproblemen plötzlich aus einer Sitzung ausscheidet, versucht er, sich wieder mit der Sitzung zu verbinden. Um die Benutzerfreundlichkeit zu verbessern, wird empfohlen, solche Ereignisse zu erfassen und auf der Benutzeroberfläche ordnungsgemäß anzuzeigen, damit der Benutzer weiß, dass versucht wird, die Verbindung zur Sitzung wiederherzustellen. Weitere Informationen finden Sie hier
Aktiver Sprecher - Versuchen Sie bei reinen Audiositzungen, eine Audiopegelanzeige hinzuzufügen, damit die Teilnehmer sehen können, wer der/die aktive(n) Sprecher ist/sind. Versuchen Sie bei Videos, das Layout so zu ändern, dass der aktive Sprecher mehr Bildschirmfläche erhält. Sie können das Ereignis audioLevelUpdated, das in regelmäßigen Abständen gesendet wird, verwenden, um UI-Anpassungen.
Lautstärkedetektor - Es ist sinnvoll, einen Lautheitsdetektor zu implementieren, um zu erkennen, wann ein bestimmter stummer Benutzer zu sprechen versucht. In diesem Fall wird die audioLevelUpdated Ereignis ausgelöst, wenn audioLevel auf 0 gesetzt ist. Daher ist es notwendig, einen AudioContext zu verwenden, um diese Situation zu vermeiden. Als Referenz, siehe "Erstellen eines Lautheitsdetektors mit der Vonage Video API".
Auflösung/Bildrate steuern - Das Subscriber-Objekt bietet Methoden, um die empfangene Auflösung und/oder Bildrate zu verringern. Dies ist nützlich, um Bandbreite und CPU-Ressourcen zu sparen, wenn Sie eine große Anzahl von Teilnehmern anzeigen (z. B. mehr als 4 auf einem Handy oder mehr als 8 auf einem Desktop)
Vermeiden von Audioproblemen - Bei großen Anrufen können die Teilnehmer ungewollt Rauschen oder Echos in den Anruf einbringen. Je höher die Anzahl der Teilnehmer ist, desto wahrscheinlicher ist es, dass dies zu Problemen führt. Daher könnten Sie eine automatische Stummschaltung beim Beitritt und/oder eine Taste zum Stummschalten aller Moderatoren für größere Sitzungen in Betracht ziehen.
Problem melden API - https://tokbox.com/developer/guides/debugging/js/#report-issue. Dadurch kann der Endverbraucher der Anwendung eine eindeutige Problem-ID auf der Client-Seite auslösen. Unser Kunde kann diese Problem-ID speichern und sie verwenden, wenn er ein Ticket beim Support erstellt. Die Problem-ID hilft bei der Identifizierung der eindeutigen Verbindungs-ID, von der das Problem gemeldet wurde, und bei der gezielten Untersuchung durch den Support.
Hinweis auf den Standort - https://tokbox.com/developer/guides/create-session/. Dies ermöglicht es dem Entwickler, eine bevorzugte Region festzulegen, in der der Videoanruf stattfinden soll. Dies kann für große Sitzungen nützlich sein, bei denen Sie wissen, dass die meisten Benutzer aus einer bestimmten Region teilnehmen werden. Beachten Sie, dass dies keine Garantie dafür ist, dass ein bestimmtes Rechenzentrum verwendet wird; lesen Sie dazu bitte den Abschnitt Regionale Medienzonen in diesem Dokument.
Verbessern der Erfahrung im Bereitschaftsdienst
Hintergrund verwischen/ersetzen - Das JS SDK bietet eine einfache Methode, um den Hintergrund unscharf zu machen oder ihn durch ein Bild zu ersetzen. Für letzteres stellen Sie bitte sicher, dass das Hintergrundbild das gleiche Seitenverhältnis wie der veröffentlichte Stream hat und beachten Sie, dass der Hintergrund je nach der hier beschriebenen fitMode-Einstellung beschnitten werden kann hier. Beachten Sie, dass das Weichzeichnen und Ersetzen des Hintergrunds nur in neueren Versionen von Chrome, Electron, Opera und Edge unterstützt wird. Sie wird nicht in anderen (nicht-Chromium-basierten) Browsern oder auf iOS unterstützt.
Medienprozessor - Verwenden Sie die Vonage Media Processor-Bibliothek, um benutzerdefinierte Transformationen auf veröffentlichte Videos auf dem Desktop und auf Mobilgeräten anzuwenden, auch nativ mit unseren mobilen SDKs. Dies unterstützt Hintergrundunschärfe und -ersetzung, aber auch fortgeschrittenere Anwendungsfälle wie Augmented Reality und räumliches Audio.
Live-Untertitel-API - Verwenden Sie diese einfache API, um Audiostreams zu transkribieren und Echtzeit-Untertitel für Ihre Anwendung zu generieren. Mit der Live Captions API können Sie Endbenutzern in einer Vonage Video-Sitzung mithilfe eines Transkriptionsdienstes Live-Untertitel anzeigen.
Audio-Konnektor - Mit dem Audio Connector können Sie rohe Audioströme (PCM 16 khz/16bit) aus einer Live-Videositzung von Vonage an externe Dienste wie AWS, GCP, Azure usw. senden, einzeln oder gemischt. Sie können auch den Sprecher identifizieren, indem Sie die Audioströme einzeln senden, indem Sie mehrere WS-Verbindungen öffnen. Kunden nutzen diese Funktion, um Anwendungsfälle wie medizinische Transkriptionen und Echtzeit-Übersetzungen zu erstellen.
Verlobungsmerkmale
Chat (Textnachrichten) - Sie können Nachrichten senden mit Signalisierung von Vonagesenden, aber beachten Sie, dass die Nachrichten nicht auf der Videoplattform von Vonage gespeichert werden. Beachten Sie beim Hinzufügen der Textnachrichtenfunktionalität, dass einige Benutzer erst nach dem Versenden von Textnachrichten zu einer Sitzung hinzukommen bzw. ihr beitreten können; Nachzügler können gesendete Nachrichten nicht mehr einsehen. Sollten Sie sich für die Aufzeichnung einer Sitzung entscheiden, werden Textnachrichten nicht aufgezeichnet, es sei denn, Sie implementieren Experience Composer.
Bildschirmfreigabe
- Ziehen Sie in Erwägung, den Publisher, der den Bildschirm mitbenutzt, auszublenden, um den Flur-Spiegel-Effekt zu vermeiden.
- ContentHint: Ermöglicht es Ihnen, die Bildschirmfreigabe für Details (z. B. Dias) oder Bewegungen (z. B. Videos) zu optimieren.motion, detail, etc: Dieses Flag kann und sollte nach 2.20 gesetzt werden.
Archivierung
Es gibt zwei Arten von Angeboten, wenn es um die Aufnahme geht: zusammengesetzte und individuelle Streams. Im Folgenden werden die Unterschiede zwischen den beiden Angeboten und die zu beachtenden Punkte erläutert
Komponiert:
Kann bis zu 16 Videostreams aufzeichnen, plus weitere 34 Streams, bei denen nur der Ton aufgezeichnet wird, insgesamt also 50 Streams
Eine einzige MP4-Datei, die alle Medienstreams enthält
Anpassbares Layout - https://tokbox.com/developer/guides/archiving/layout-control.html
Bildschirmaufzeichnung und erweiterte Layouts wie benutzerdefinierte Overlays, Montagen und Wasserzeichen (siehe Experience Composer)
Kann automatisch gestartet werden (max. 240 Minuten). Wenn die Aufzeichnung nicht gestoppt wird, beginnt sie mit der Archivierung in einer neuen Datei)
Es ist möglich, bestimmte Streams für die Aufzeichnung zu priorisieren, indem verschiedene Layout-Klassen zugewiesen werden. Zum Beispiel, Screen-Share-Streams - https://tokbox.com/developer/guides/archive-broadcast-layout/#stream-prioritization-rules
Unterstützt die Formate SD, HD und FHD
Individueller Stream:
Kann bis zu 50 Streams aufzeichnen, sowohl Audio als auch Video
Mehrere einzelne Streams/Dateien in einem Zip-Ordner speichern
Vorgesehen für die Verwendung mit einem Nachbearbeitungstool zur Erstellung individueller Inhalte
Kann nicht automatisch gestartet werden
Erlebnis-Komponist
Wir stellen Ihnen auch Werkzeuge zur Verfügung, mit denen Sie ein hochgradig individuelles Layout erstellen können. Damit können Sie Webanwendungen erstellen, die den Endbenutzern ein reichhaltiges UI/UX-Erlebnis bieten.
Erstellen einer Webseite, die auf der Vonage-Plattform wiedergegeben wird
Mischen Sie Videoinhalte mit anderen Webinhalten, z. B.
Chat-Fenster
Whiteboard
Erweiterte Inhalte und Layouts
Der Inhalt kann dynamisch sein und sich während der Sitzung ändern
Zusammengestellte Inhalte können in anderen Opentok-Sitzungen veröffentlicht werden, um
Datensatz
Archiv
Sendung
Dabei bleibt das reichhaltige UI/UX-Erlebnis für die Benutzer erhalten.
Weitere Informationen finden Sie hier: https://tokbox.com/developer/guides/experience-composer/
Aufbewahrung von Archiven
Vonage bewahrt die Archive 72 Stunden lang auf, wenn das Hochladen fehlschlägt, der Cloud-Speicher nicht konfiguriert wurde oder die Option zum Deaktivieren des Speicher-Fallbacks nicht ausgewählt wurde. Denken Sie daran, dass die Archive nicht wiederhergestellt werden können, wenn Sie den Upload-Fallback nicht aktivieren und der Upload aus irgendeinem Grund fehlschlägt.
AWS S3: Besuchen Sie diese Seite https://tokbox.com/developer/guides/archiving/using-s3.html finden Sie Anweisungen zum Hochladen von Archivdateien in AWS.
Azurblau: Besuchen Sie diese Seite https://tokbox.com/developer/guides/archiving/using-azure.html für Anweisungen zum Hochladen von Archivdateien auf Azure.
Google: Sie sollten den S3-kompatiblen Modus verwenden und die S3-Anweisungen hier befolgen https://tokbox.com/developer/guides/archiving/using-azure.html
FAQs zur Archivierung:
Sind die Archive verschlüsselt?
Nicht standardmäßig. Aber man kann eine Verschlüsselungsfunktion für zusammengesetzte Archive hinzufügen. Um mehr zu erfahren, besuchen Sie https://tokbox.com/developer/guides/archiving/opentok-encryption.html
2. Können Sie nur den Ton oder nur das Video aufnehmen?
Ja. Verwenden Sie die REST-API und setzen Sie hasVideo/hasAudio auf true oder false - https://tokbox.com/developer/rest/#start_archive
3. Kann ich das Archiv so benennen, dass ich es mit dem Namen identifizieren kann?
Ja. Setzen Sie den Namen über die REST-API auf den gewünschten Bezeichner
<String>- https://tokbox.com/developer/rest/#start_archive
4. Wie kann ich den Status der Archive überprüfen?
Verwenden Sie den Archivinspektor. Einen tollen Artikel finden Sie hier https://api.support.vonage.com/hc/en-us/articles/6646228878236-Archiving-FAQ
5. Kann ich bestimmte Streams einer Sitzung aufzeichnen?
Ja, bitte siehe https://tokbox.com/developer/guides/archiving/#manual-stream-mode. Sie können dies auch spontan ändern https://tokbox.com/developer/rest/#selecting-archive-streams
6. Kann ich gleichzeitig in verschiedenen Formaten aufnehmen?
Ja, Sie können die Archivierung für eine bestimmte Sitzung mehr als einmal starten. Das bedeutet, dass Sie z. B. ein zusammengesetztes Layout gleichzeitig mit einer separaten Aufzeichnung pro Teilnehmer aufzeichnen können (d. h. Einzelarchivierung).
Qualität, Leistung und Kompatibilität
Geräte - Versuchen Sie bei Sitzungen mit mehreren Teilnehmern, die Anzahl der Teilnehmer zu begrenzen, da mehr Teilnehmer mehr Rechenleistung erfordern.
Nachstehend finden Sie die empfohlene Teilnehmerzahl:
Mobil = 4 (nach offizieller Aussage der Ingenieure sind bis zu 8 möglich)
Laptop = 10
Schreibtisch = 25
Steuerung der Auflösung/Bildrate - Das Subscriber-Objekt bietet Methoden, um die empfangene Auflösung und/oder Bildrate zu verringern. Dies ist im Zusammenhang mit der Einsparung von Bandbreite und CPU-Ressourcen nützlich, wenn Sie eine große Anzahl von Teilnehmern anzeigen (z. B. mehr als 4 auf einem Mobiltelefon oder mehr als 8 auf einem Desktop)
Bandbreitenanforderungen siehe "Was ist die Mindestbandbreite für die Nutzung von OpenTok?"
Proxy - wenn Benutzer nur über einen Proxy auf das Internet zugreifen können, stellen Sie sicher, dass es sich um einen "transparenten" Proxy handelt, andernfalls muss er im Browser für eine HTTPS-Verbindung konfiguriert werden, da webRTC bei Proxys, die eine Authentifizierung erfordern, nicht gut funktioniert. Sehen Sie sich unseren Netzwerk-Checkflow an - https://tokbox.com/developer/guides/restricted-networks/
Firewall - Im Folgenden sind mindestens die Ports und Domänen aufgeführt, die in die Firewall-Regeln aufgenommen werden sollten:
TCP 443
FQDN: *.tokbox.com
FQDN: *.opentok.com
STUN/TURN: UDP 3478
Falls zulässig, versuchen Sie, den folgenden Portbereich zu öffnen: UDP 1025 - 65535. Dies bietet den Benutzern die bestmögliche Erfahrung. Dadurch entfällt auch die Notwendigkeit von TURN; die Nichtweiterleitung von Medien durch solche Netzwerkelemente verringert die Latenz.
Weitere Informationen finden Sie in diesem Artikel: "Was sind die Anforderungen an die Netzwerkkonnektivität der Vonage Video API".
Codec - Link zur Codec-Kompatibilität https://tokbox.com/developer/guides/codecs/. Vonage unterstützt die Codecs VP9, VP8 und H.264; VP9 ist jedoch nur im Modus "Relayed Media" für Sitzungen verfügbar, bei denen ALLE Teilnehmer Chrome verwenden.
Unterschied zwischen VP8 und H.264:
VP8 ist ein Software-Codec, der ausgereifter ist und niedrigere Bitraten verarbeiten kann. Außerdem unterstützt er skalierbares/Simulcast-Video.
H.264 ist je nach Gerät über Software und Hardware verfügbar. Es unterstützt kein skalierbares Video oder Simulcast.
Standardmäßig ist der Codec auf VP8 eingestellt. Wenn Sie den zugewiesenen Codec für einen bestimmten Codec ändern müssen
Projektschlüssel, melden Sie sich in Ihrem Portal an, um die Änderung vorzunehmen.
Überwachung von Sitzungen
Besuchen Sie unsere Entwicklungsseite - https://tokbox.com/developer/guides/session-monitoring/
Die Sitzungsüberwachung ermöglicht es Ihnen, eine Webhook-URL zu registrieren.
Verwenden Sie diese Funktion, um Sitzungen und Streams zu überwachen - ein Beispiel dafür ist die Begrenzung der Anzahl der Teilnehmer in einer Sitzung, dies wird oft zusammen mit der forceDisconnect-Funktion für JS verwendet - https://tokbox.com/developer/guides/moderation/js/#force_disconnect. Moderatoren können auch eine Aktion an den Server senden und ihn einen REST-Aufruf ausführen lassen, um die Verbindung zu unterbrechen - https://tokbox.com/developer/guides/moderation/rest/
Kann zur Nachverfolgung der Nutzung verwendet werden (für eine bessere Nachverfolgung der Nutzung, verwenden Sie Advance Insights - https://tokbox.com/developer/guides/insights/#obtaining-session-data-advanced-insights-.
Wenn innerhalb von 30 Minuten mehr als 50 Ereignisübermittlungsfehler auftreten (d. h. wenn wir beim Senden einer HTTP-Anfrage an Ihre Callback-URL keine 200-Erfolgsantwort erhalten), deaktivieren wir die Ereignisweiterleitung für die Sitzungsüberwachung. In diesem Fall senden wir eine E-Mail. Sie können die Sitzungsüberwachung auf Ihrer TokBox-Kontoseite wieder aktivieren.
Für zusätzliche Sicherheit können Sie Ihre Webhooks signieren
Session monitoring
ConnectionCreated: Sie können VerbindungsDaten verwenden, um die Verbindungen der Benutzer zu identifizieren. Sie können z. B. die Benutzer-ID, den Namen oder andere Daten, die den Client beschreiben, übergeben (verwenden Sie keine persönlichen Informationen in Token-Daten).
Add-ons
Die meisten Kunden können Add-ons mit einem einzigen Klick erwerben (oder entfernen). über das Self-Service-Tool konfigurieren.
SIP-Zusammenschaltung
Beginnen Sie: https://tokbox.com/developer/guides/sip/
Wie man eine Telefoneinwahl über SIP-Interconnect aufbaut: https://developer.vonage.com/en/blog/connecting-webrtc-and-pstn-with-opentok-and-nexmo-dr
Konfigurierbares TURN
IP-Proxy
Beginnen Sie: https://tokbox.com/developer/guides/ip-proxy/
Wie man auf AWS hostet: https://api.support.vonage.com/hc/en-us/articles/6646184200348-Install-and-Configure-a-Test-Proxy-Server-in-AWS
Regionale Medienzonen
Dies ist eine Geofencing-Funktion, die aus Compliance-Gründen verwendet wird. Für weitere Informationen, siehe "Wie konfiguriere ich regionale Medienzonen für mein Projekt?"
Sicherheit und Datenschutz
Die Vonage Video API kann so angepasst werden, dass sie die höchsten Sicherheitsstandards erfüllt. Unsere Plattform ist GDPR-konform und wir sind HIPAA-konform. Für europäische Kunden bieten wir erweiterte Add-ons an, die die Einhaltung zusätzlicher lokaler Zertifizierungen und Standards ermöglichen, wie z. B. die KBV-Zertifizierung (Deutschland) oder andere Datenschutzgesetze, die auf einen besseren Datenbesitz und -schutz abzielen (europaweit).
Lesen Sie mehr über:
Auf Anfrage und unter NDA können wir weitere Berichte zur Verfügung stellen, wie z. B. die Folgenabschätzung für den Datentransfer, den SOC2-Typ-2-Auditbericht und externe Pen-Tests, die die hohen Sicherheitsstandards unserer Video-Plattform belegen.
Beispiel-Codes:
Git-Repository:
Überwachung von Sitzungen
Vonage Text-Chat
Beispielcode des Nachbearbeitungswerkzeugs für die Verarbeitung einzelner Stream-Archive
Berechnung der monatlichen Nutzung / Preisstaffelung der Video-API -
Wie schätze ich meine monatliche Nutzung von OpenTok? - Pro Teilnehmer-Minuten (PPM) - Standard-Preismodell
Wie schätze ich meine monatliche Nutzung von OpenTok? - Session Subscriber Minutes (SSM) - Altes Preismodell
Weitere Lektüre
Video-API-Grundlagen
Erkunden Sie die Vonage Video API-Funktionen mit dem Vonage Video API Playground
Generieren und Zuweisen von Token-Rollen mit der Video-API | One Dev Minute
Erstellen eines Lautstärkedetektors mit der Vonage Video API
Beispiele für Konferenzen und Videogespräche
Erstellen einer Webanwendung für Videokonferenzen mit Vonage und Flask
Wie man eine Lernplattform mit React, Express und Apollo GraphQL erstellt (Video)
Erweiterte Funktionen der Video-API
Hinzufügen von End-to-End-Medienverschlüsselung zu Ihren Videoanrufen
Verfolgen von Benutzerverbindungen mit Video-API und Sitzungsüberwachung
Bewährte Praktiken für Wartezimmer und Vorgespräche mit der Vonage Video API
Erstellen einer Breakout-Room-Anwendung in JavaScript mit der Vonage Video API
Gemeinsame Nutzung von Bildschirmen mit Ihren Freunden und Arbeitskollegen
Erstellen von Geschichten im Social-Media-Stil mit Android und Python
Video-Express
Übertragung/Aufzeichnung
Erstellen Sie ein persönliches Twitch mit Vonage Video API und Webkomponenten
Erfassen Sie das gesamte Erlebnis Ihrer Webanwendung mit Experience Composer
Automatisches Zoomen und Zentrieren von veröffentlichten Videoanrufen mit der Vonage Video API
Video + KI
Medienprozessor
Wenden Sie ML-Transformatoren an, um Video- und Audioeffekte in Live-Videostreams zu erzielen.
Medienprozessor und KI-Videotransformatoren mit Vonage Video API verwenden
Unschärfe für Klarheit: Die Privatsphäre der Teilnehmer schützen und die Aufmerksamkeit fördern
Anreicherung von Videostreams mit QR-Codes und Wasserzeichen
Audio-Anschluss
Extrahieren Sie Audiodaten aus Live-Videoanrufen, um die Vorteile von Maschinen zur Verarbeitung natürlicher Sprache zu nutzen.
Fehlersuche und Analytik
Teilen Sie:
Simon ist Customer Solutions Architect bei Vonage und bringt 20 Jahre Erfahrung im Bereich Kommunikation mit. In seiner globalen Karriere arbeitete er unter anderem im ländlichen Afrika und in Indien, um die Kommunikation an abgelegene Orte zu bringen. Heute setzt er sich leidenschaftlich für die Nutzung von Kommunikations-APIs ein, um die Benutzerfreundlichkeit und Effizienz zu verbessern, und konzentriert sich auf den Bereich Video-WebRTC.