Beitritt zu einer Sitzung

In dieser Anleitung erfahren Sie, wie Sie Ihre Anwendung mit einer Videositzung verbinden.

Voraussetzung

Sie benötigen einen gültigen Vonage Video API Account. Wenn Sie noch keinen haben, können Sie sich für eine kostenlose Testversion anmelden.

Sie sollten auch sicherstellen, dass Sie über eine Sitzung erstellt und ein Token erzeugt für alle beteiligten Nutzer.

Initialisierung eines Session-Objekts

Bevor Sie eine Verbindung zu einer Sitzung herstellen können, müssen Sie ein Sitzungsobjekt instanziieren, indem Sie eines der Client-SDKs verfügbar.

Instanzieren Sie ein Session-Objekt, indem Sie die OT.initSession() Methode mit Ihrer Anwendungs-ID und der entsprechenden Sitzungs-ID:

Die OT.initSession() Methode gibt ein Session-Objekt zurück, über das die nachfolgenden API-Aufrufe erfolgen.

Beachten Sie, dass der Aufruf der OT.initSession() Methode nicht erstellen. eine Sitzung; es wird ein JavaScript-Session-Objekt erstellt, das eine bestehende Sitzung darstellt. Sie können eine Sitzung mit dem serverseitigen SDK erstellen. Siehe Erstellen einer Sitzung.

Wenn der Browser des Benutzers WebRTC nicht unterstützt, wird der Aufruf von OT.initSession() führt dazu, dass auf der Seite eine Meldung für den Benutzer angezeigt wird. Um die WebRTC-Unterstützung zu prüfen und zu verhindern, dass diese Meldung angezeigt wird, können Sie die Funktion OT.checkSystemRequirements() Methode vor dem Aufruf OT.initSession():

Verbinden mit einer Sitzung

Sobald Sie eine Sitzungs-ID haben und ein Sitzungsobjekt damit initialisiert haben, besteht der nächste Schritt darin, eine Verbindung zur Sitzung herzustellen.

Hier erfahren Sie, wie Sie sich mit den Sitzungen verbinden können, indem Sie die Plattform/Sprache Ihrer Wahl auswählen:

Wenn Sie eine OTSession-Komponente hinzufügen, wird automatisch eine Verbindung zur Vonage Video API-Sitzung hergestellt.

Ersetzen Sie your-application-ID, your-session-idund your-session-token mit Ihrem API-Schlüssel, a Sitzungs-IDund eine Token für die Sitzung.

Beachten Sie, dass Sie die OTPublisher und OTSubscriber Komponenten und Kinder des OTSession Komponente.

Sie können eine error und sessionConnected Ereignisbehandler in der OTSession Komponente. Der Error Event Handler wird aufgerufen, wenn der Client keine Verbindung zur Sitzung herstellen kann. Und der sessionConnected wird aufgerufen, wenn der Client eine Verbindung zur Sitzung herstellt:

Trennen der Verbindung zu einer Sitzung

Erfahren Sie, wie Sie die Verbindung eines Benutzers zu einer Sitzung trennen können.

Der Client trennt die Verbindung zur Sitzung, wenn Sie die Verbindung zum OTSession Komponente.

Erkennen, wenn Clients eine Verbindung hergestellt und getrennt haben

Erfahren Sie, wie Sie erkennen können, wann ein Client eine Verbindung herstellt und die Verbindung zu einer Sitzung trennt.

Die OTSession Objekt sendet eine connectionCreated Ereignis, wenn sich ein neuer Client (außer Ihrem eigenen) mit der Sitzung verbindet. Das OTSession-Objekt sendet ein connectionDestroyed Ereignis, wenn andere Clients die Sitzung verlassen. Diese Ereignisse werden durch den ConnectionEvent Klasse, die über eine connection Objekt, bei dem es sich um ein Connection-Objekt für die mit dem Ereignis verbundene (erstellte oder zerstörte) Verbindung handelt:

Erkennen, wenn Sie die Verbindung unterbrochen haben

Sie richten eine EventListner um eine Funktion auszuführen, wenn die Verbindung eines Benutzers zu einer Sitzung unterbrochen wird.

Beispielsweise kann die Funktion den Benutzer benachrichtigen, wenn er die Verbindung verliert und nicht mehr mit der Sitzung verbunden ist.

Wenn Ihr Client die Verbindung zu einer Sitzung trennt, wird die OTSession Komponente versendet eine sessionDisconnected Veranstaltung:

Automatische Wiedereinschaltung

Die Clients versuchen, sich automatisch wieder mit einer Sitzung zu verbinden, deren Verbindung unerwartet unterbrochen wurde (z. B. aufgrund eines Verbindungsabbruchs im Netzwerk).

Sie müssen keinen Code hinzufügen, um die Clients automatisch wieder zu verbinden, es sei denn, Sie möchten auf Ereignisse reagieren, die gesendet werden, wenn Ihr Client die Verbindung trennt und wieder aufbaut.

Die Clients versuchen, sich automatisch wieder mit einer Sitzung zu verbinden, wenn die Verbindung unerwartet unterbrochen wird (z. B. aufgrund einer Unterbrechung der Netzwerkverbindung). Sie brauchen keinen Code hinzuzufügen, damit die Clients die Verbindung automatisch wiederherstellen, es sei denn, Sie möchten auf Ereignisse reagieren, die beim Trennen und Wiederherstellen der Verbindung Ihres Clients ausgelöst werden.

Wenn die Verbindung unterbrochen wird und der Client versucht, die Verbindung wiederherzustellen, wird die OTSession Objekt sendet eine sessionReconnecting Ereignis. Wenn die Verbindung wiederhergestellt ist, wird die Session Objekt sendet eine sessionReconnected. Wenn der Client die Verbindung nicht wiederherstellen kann, trennt der Client die Verbindung zur Sitzung, und das Sitzungsobjekt sendet die sessionDisconnected.

Als Reaktion auf diese Ereignisse kann Ihre Anwendung (optional) Benachrichtigungen auf der Benutzeroberfläche anzeigen, die den Zustand der vorübergehenden Unterbrechung, der Wiederverbindung und der Trennung der Verbindung angeben:

Wenn Ihr Client die Verbindung zu einer Sitzung vorübergehend unterbricht, senden die Subscriber-Objekte in Clients, die einen von Ihnen veröffentlichten Stream abonnieren, Ereignisse, wenn Ihr veröffentlichter Stream unterbrochen wird und wenn (und falls) er automatisch wieder aufgenommen wird. Für weitere Informationen siehe Automatische Wiedereinschaltung.

Fehlerbehebung bei Sitzungsverbindungsproblemen (JavaScript)

Die Session.connect() Methode hat eine Callback-Funktion, der eine optionale error Parameter. Wenn dieser Parameter vorhanden und definiert ist (nicht null oder undefiniert), dann gab es einen Fehler beim Verbindungsaufbau. Wenn Sie in Ihrem Code nach diesem Fehler suchen, können Sie herausfinden, warum der Endbenutzer keine Verbindung herstellen konnte:

Viele Fehler, die bei Verbindungsversuchen auftreten, sind auf ungültige oder abgelaufene Token zurückzuführen.

Ein weiterer häufiger Grund für das Scheitern der Verbindung zu einer Sitzung ist die Internetverbindung des Endbenutzers. Beispiele hierfür sind:

  • Der Endnutzer hat seine Internetverbindung verloren
  • Der Endbenutzer hat gemeinsame Ports blockiert, weil er sich in einem restriktiven Netzwerk befindet.

Dies führt zu einem Fehler mit dem Code 1006. Wir empfehlen Ihnen, dies mit dem unten stehenden Code zu behandeln. Andere Gründe für das Scheitern der Verbindung zu einer Sitzung können sein, dass die Vonage-Videoserver ausgefallen sind oder dass ein unerwarteter Fehler aufgetreten ist (z. B. ein 500-Level-Fehler auf dem Server). Obwohl dies nicht oft vorkommt, ist es gute Praxis, diese Fehler zu behandeln.

Wenn Sie diese Anweisungen befolgen, sollte Ihr Fehlerbehandlungscode etwa so aussehen:

Sie können die Verbindung verlieren, nachdem Sie bereits erfolgreich mit einer Sitzung verbunden waren. Sie können diesen Fall behandeln, indem Sie auf die sessionDisconnected Ereignis mit dem Grund "networkDisconnected":

Fehlerbehebung bei Sitzungsverbindungsproblemen (React Native)

Viele Fehler, die bei Verbindungsversuchen auftreten, sind auf ungültige oder abgelaufene Token zurückzuführen. Stellen Sie sicher, dass Sie die bewährten Praktiken für Token befolgen, die wie folgt beschrieben sind hier.

Ein weiterer häufiger Grund für das Scheitern der Verbindung zu einer Sitzung ist die Internetverbindung des Endbenutzers. Beispiele hierfür sind:

  • Der Endnutzer hat seine Internetverbindung verloren
  • Der Endbenutzer hat gemeinsame Ports blockiert, weil er sich in einem restriktiven Netzwerk befindet.