Requisiten | Eigenschaften | Methoden | Veranstaltungen
Requisiten
| Requisite | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
| sessionId | Zeichenfolge | Nein | OpenTok-Sitzungs-ID. Diese wird automatisch durch Einfügen von OTSubscriber mit OTSession |
| streamId | Zeichenfolge | Nein | Stream-ID des OpenTok-Abonnenten. Diese wird automatisch in das OTSubscriber Komponente, wenn streamCreated Das Ereignis wird von der nativen Instanz ausgelöst |
| Eigenschaften | Objekt | Nein | An die native Abonnenteninstanz übergebene Eigenschaften |
| streamProperties | Objekt | Nein | Dient zur Aktualisierung der Eigenschaften einzelner Abonnenteninstanzen |
| Ereignisbehandler | Objekt<Funktion> | Nein | An die native Abonnenteninstanz übergebene Ereignisbehandler |
| subscribeToSelf | Boolesche | Nein | Wenn dieser Wert auf „true“ gesetzt ist, kann der Abonnent seinen eigenen Publisher-Stream abonnieren (Standard: „false“) |
| Kinder | Funktion | Nein | Eine Render-Prop, die die individuelle Darstellung jedes einzelnen Streams ermöglicht |
Eigenschaften
-
Audio abonnieren (Boolescher Wert) — Gibt an, ob Audio abonniert werden soll.
-
Video abonnieren (Boolescher Wert) — Gibt an, ob das Video abonniert werden soll.
-
Untertitel abonnieren (Boolescher Wert) — Gibt an, ob Untertitel abonniert werden sollen. Beachten Sie, dass in der Sitzung Untertitel aktiviert sein müssen (mithilfe der REST-Methode der Video API oder des Server-SDK) und der Anbieter Untertitel bereitstellen muss. Weitere Informationen finden Sie unter Live Captions Entwicklerhandbuch.
-
preferredResolution (Zeichenkette) — Legt die bevorzugte Auflösung des Videos des Abonnenten fest. Das Format der Zeichenfolge lautet „BreitexHöhe“, wobei Breite und Höhe in Pixeln angegeben werden. Gültige Werte sind „1280x720“, „640x480“ und „352x288“.
-
preferredFrameRate (Zahl) — Stellen Sie hier die gewünschte Bildrate (in Bildern pro Sekunde) ein. Setzen Sie diesen Wert auf null, um die bevorzugte Bildrate zu deaktivieren; der Client verwendet dann die höchstmögliche Bildrate. Gültige Werte sind 30, 15, 7 und 1.
-
audioVolume (Zahl) — Legt die Lautstärke des Teilnehmers zwischen 0 und 100 fest. Liegt der Wert außerhalb dieses Bereichs, wird er auf diesen Bereich begrenzt.
-
scaleBehavior (Zeichenkette) – Legt fest, wie das Video beim Rendern skaliert wird. Unterstützte Werte sind
fill(Standard) undfit. Diese Eigenschaft wird derzeit nur auf iOS unterstützt.
Die OTSubscriber Die Komponente abonniert beim Einbinden einen bestimmten Stream aus einer bestimmten Sitzung. Die OTSubscriber Die Komponente beendet das Abonnieren und das Abmelden, wenn sie ausgehängt wird.
Methoden
getRtcStatsReport(streamId) Ruft den RTC-Statistikbericht für den Abonnenten des Streams mit der
angegebenen Stream-ID ab. Dies ist ein asynchroner Vorgang. Das OTSubscriber-Objekt sendet eine
rtcStatsReport Ereignis, wenn RTC-Statistiken für den Teilnehmer verfügbar sind.
Veranstaltungen
-
audioLevel (SubscriberAudioLevelEvent) – Wird in regelmäßigen Abständen mit dem aktuellen repräsentativen Audiopegel gesendet. Siehe SubscriberAudioLevelEvent
-
audioNetworkStats (Objekt) — Wird in regelmäßigen Abständen gesendet, um Audio-Statistiken für den Teilnehmer zu melden. Ein AudioNetworkStats Das Objekt wird an den Ereignis-Handler übergeben.
-
Bildunterschrift: Empfangen (Objekt) — Wird gesendet, wenn eine Bildunterschrift für den Abonnenten eingeht. A Bildunterschrift empfangen Das Objekt wird an den Ereignis-Handler übergeben.
-
verbunden () — Wird gesendet, wenn der Abonnent erfolgreich eine Verbindung zum Stream hergestellt hat. Das Ereignisobjekt enthält ein
streamIdEigenschaft, die den Stream identifiziert. -
getrennt () — Wird aufgerufen, wenn der Stream des Abonnenten unterbrochen wurde.
-
Fehler (Objekt) — Wird gesendet, wenn der Abonnent keine Verbindung zu seinem Stream herstellen kann.
-
otrnError (Objekt) — Wird gesendet, wenn bei der Kommunikation zwischen der nativen Abonnenteninstanz und der JS-Komponente ein Fehler auftritt.
-
rtcStatsReport (Objekt) – Wird gesendet, wenn RTC-Statistikberichte für den Teilnehmer verfügbar sind, als Antwort auf den Aufruf der
OTSubscriber.getRtcStatsReport()Methode. A SubscriberRtcStatsReportEvent Das Objekt wird an den Ereignis-Handler übergeben. Dieses Ereignisobjekt verfügt über die folgenden Eigenschaften:-
jsonArrayOfReportsEigenschaft, bei der es sich um ein JSON-Array von RTCStatsReport für den Medienstrom handelt. Die Struktur des JSON-Arrays ähnelt dem Format des RtcStatsReport-Objekts, das in Webbrowsern implementiert ist (siehe die Mozilla-Dokumente). Siehe auch diese W3C-Dokumentation. -
stream-- Ein Objekt, das den Stream des Abonnenten repräsentiert. Dieses Objekt enthält einstreamIdEigenschaft, die den Stream identifiziert.
-
-
videoDataReceived () – Wird gesendet, wenn ein Videobild dekodiert wurde. Obwohl die Verbindung des Teilnehmers relativ schnell hergestellt wird, kann die Synchronisierung des Videos etwas länger dauern. Diese Nachricht wird gesendet, nachdem die
connectedNachricht gesendet wird. -
videoDeaktiviert (Zeichenkette) — Diese Meldung wird gesendet, wenn der Abonnent kein Video mehr empfängt. Überprüfen Sie den Parameter „reason“, um den Grund für den Abbruch der Videoübertragung zu ermitteln.
-
videoDisableWarning () – Diese Meldung wird gesendet, wenn der OpenTok Media Router feststellt, dass sich die Stream-Qualität verschlechtert hat und das Video deaktiviert wird, sollte sich die Qualität weiter verschlechtern. Sollte sich die Qualität weiter verschlechtern, deaktiviert der Teilnehmer das Video und die
videoDisabledDie Nachricht wird gesendet. Wenn sich die Stream-Qualität verbessert, wird dievideoDisableWarningLiftedNachricht gesendet wird. -
videoDisableWarningLifted () — Diese Meldung wird gesendet, wenn der Videostream des Abonnenten startet (wenn zuvor kein Video vorhanden war) oder fortgesetzt wird (nachdem das Video deaktiviert wurde). Überprüfen Sie den Parameter „reason“, um den Grund für den Start (oder die Fortsetzung) des Videos zu ermitteln.
-
videoEnabled (Zeichenkette) – Diese Meldung wird gesendet, wenn der Videostream des Abonnenten startet (wenn zuvor kein Video vorhanden war) oder fortgesetzt wird (nachdem das Video deaktiviert wurde). Überprüfen Sie den Parameter „reason“, um den Grund für den Start (oder die Fortsetzung) des Videos zu erfahren.
-
videoNetworkStats (Objekt) — Wird in regelmäßigen Abständen gesendet, um Videostatistiken für den Abonnenten zu melden. A VideoNetworkStatsEvent Das Objekt wird an den Ereignis-Handler übergeben.
Beispiel
class App extends Component {
constructor(props) {
super(props);
this.state = {
streamProperties: {},
};
this.subscriberProperties = {
subscribeToAudio: false,
subscribeToVideo: true,
subscribeToCaptions: false,
};
this.sessionEventHandlers = {
streamCreated: event => {
const streamProperties = {...this.state.streamProperties, [event.streamId]: {
subscribeToAudio: true,
subscribeToVideo: false,
style: {
width: 400,
height: 300,
},
}};
this.setState({ streamProperties });
},
};
this.subscriberEventHandlers = {
error: (error) => {
console.log(`There was an error with the subscriber: ${error}`);
},
audioNetworkStats: event => {
console.log('audioNetworkStats', event);
// { timeStamp: 1643203644833, audioPacketsLost: 0, audioPacketsReceived: 64, audioBytesReceived: 5574 }
},
videoNetworkStats: event => {
console.log('videoNetworkStats', event);
// videoBytesReceived: 706635, videoPacketsLost: 0, timeStamp: 1643203644724, videoPacketsReceived: 656 }
},
};
}
render() {
return (
<OTSession apiKey="your-api-key" sessionId="your-session-id" token="your-session-token" eventHandlers={this.sessionEventHandlers}>
<OTSubscriber
properties={this.subscriberProperties}
eventHandlers={this.subscriberEventHandlers}
style={{ height: 100, width: 100 }}
streamProperties={this.state.streamProperties}
/>
</OTSession>
);
}
}
Benutzerdefinierte Darstellung von Streams
Sie können die Darstellung einzelner Abonnenten von Streams steuern. Siehe Benutzerdefiniertes Rendering von Abonnenten.