Überblick über die Signalisierung

Verwenden Sie die OpenTok-Signalisierungs-API, um Text und Daten zwischen Clients zu übertragen, die mit einer OpenTok-Sitzung verbunden sind.

Mit diesen Nachrichten können Entwickler einfache Text-Chats erstellen, Anweisungen von einem Client an einen anderen senden und weitere nützliche Funktionen realisieren.

Die OpenTok-Client-SDKs enthalten Methoden zum Senden von Signalen an Clients, die mit einer OpenTok- Sitzung verbunden sind. Außerdem enthalten sie Ereignisse, die bei Empfang eines Signals ausgelöst werden. Weitere Informationen finden Sie im Entwicklerhandbuch zur Signalisierung unter OpenTok.js, iOS, Androidund Windows, macOS, und Linux. Sie können auch die OpenTok REST API um Signale vom Server an die Clients zu senden.

Signal-Nutzlasten

Jedes Signal enthält data und type Werte, bei denen es sich um Zeichenketten handelt:

  • data - Enthält die wichtigsten Informationen, die im Signal gesendet werden

  • type - Ein sekundäres Feld, das Sie zum Gruppieren und Filtern von Signalen verwenden können.

Ein Client kann auch ein Signal senden, das keine data oder type definiert. Dieses Ping-Signal dient lediglich dazu, den Absender des Signals zu identifizieren.

Das Signal enthält außerdem eine Eigenschaft, die den Client identifiziert, der das Signal gesendet hat.

Sie können ein Signal an einen bestimmten Client oder an alle Clients senden, die mit einer Sitzung verbunden sind.

Signalübertragung

Für einen Client, der mit einer OpenTok-Sitzung verbunden ist, löst das OpenTok-Client SDK ein Ereignis aus, wenn der Client ein Signal empfängt. Auf dem sendenden Client gibt es jedoch kein Ereignis, das anzeigt, dass der/die Empfänger ein Signal erhalten haben. Falls Ihre Anwendung dies erfordert, können Sie die Signaling-API verwenden, um Empfangsbestätigungen an den sendenden Client zurückzusenden.

Der OpenTok-Server leitet Signale vom sendenden Client an die empfangenden Clients weiter. Das Signal wird über TCP-basierte WebSocket-Verbindungen zwischen den Clients und dem OpenTok-Server übertragen. Die Signalübertragung wird nicht uneingeschränkt garantiert, jedoch nutzt die Signalübertragung die TCP-eigenen Funktionen zur Paketwiederholung.

Die Reihenfolge der Signalereignisse bleibt bei Signalen, die von einem Signal-Client gesendet werden, erhalten, jedoch nicht über alle Clients hinweg. Betrachten wir beispielsweise eine Sitzung, in der Client A die Signale 1 und 2 an alle Clients in der Sitzung sendet und Client B die Signale 3 und 4 an alle Clients in der Sitzung sendet. Signal 1 wird vor Signal 2 empfangen, und Signal 3 wird vor Signal 4 empfangen. Es gibt jedoch keine Garantie dafür, dass die Signale von Client A vor den Signalen von Client B empfangen werden.

Die Signalisierung steht allen OpenTok-Clients zur Verfügung. Die Signalisierung nicht erfordern die OpenTok Media Router — es ist in allen Sitzungen verfügbar (ob geroutet oder weitergeleitet).