Erbt von: : Object

Definiert in: : lib/opentok/broadcasts.rb

Übersicht

Eine Klasse zur Arbeit mit OpenTok-Live-Streaming-Übertragungen. Siehe / Live-Streaming-Übertragungen.

Zusammenfassung der Instanzmethoden

Details zur Instanzmethode

#add_stream(broadcast_id, stream_id, options) ⇒ Objekt

Fügt der aktuell laufenden Übertragung einen Stream hinzu, der mit der Einstellung „manual“ für den StreamMode gestartet wurde. Eine Beschreibung dieser Funktion finden Sie unter <https://tokbox.com/developer/rest/#selecting-broadcast-streams>.

Sie können die Methode wiederholt aufrufen, wobei Sie für „add_stream“ dieselbe Stream-ID angeben, um den Audio- oder Videostream in der Übertragung ein- bzw. auszuschalten. Wenn Sie sowohl „has_audio“ als auch „has_video“ auf „false“ setzen, erhalten Sie eine Fehlermeldung.

Parameter:

  • broadcast_id (Zeichenkette) —

    Die Sendungs-ID.

  • stream_id (Zeichenkette) —

    Die ID des Streams, der zur Übertragung hinzugefügt werden soll

  • opts (Hash) —

    eine individuell anpassbare Auswahl an Optionen

Erhöht:

  • (ArgumentError) —

    Der Parameter „broadcast_id“ ist leer.

  • (ArgumentError) —

    Der Parameter „stream_id“ ist leer.

  • (ArgumentError) —

    Die Eigenschaften „has_audio“ und „has_video“ des Parameters „options“ sind beide auf „false“ gesetzt.

#alle(options = {}) ⇒ BroadcastList

Gibt eine „BroadcastList“ zurück, d. h. ein Array aus abgeschlossenen und laufenden Übertragungen für Ihren API-Schlüssel.

tokbox.com/developer/rest/#list_broadcasts

Parameter:

  • Optionen (Hash) (Standardwert: {})

    Ein Hash mit Schlüsseln, die festlegen, welcher Bereich von Sendungen abgerufen werden soll.

Options-Hash (options):

  • :offset (Ganzzahl)

    -

    Optional. Der Index-Offset der ersten Übertragung. 0 ist der Offset der zuletzt gestarteten Übertragung. 1 ist der Offset der Übertragung, die vor der zuletzt gestarteten Übertragung begonnen hat. Wenn Sie keinen Offset angeben, wird 0 verwendet.

  • :count (Ganzzahl)

    -

    Optional. Die Anzahl der zurückzugebenden Broadcasts. Es werden maximal 1000 Broadcasts zurückgegeben.

  • :session_id (Zeichenkette)

    -

    Optional. Die Sitzungs-ID, zu der die Übertragungen gehören.

Rückgabe:

  • (BroadcastList) —

    Ein „BroadcastList“-Objekt, bei dem es sich um ein Array von „Broadcast“-Objekten handelt.

Erhöht:

  • (ArgumentError)

#erstellen.(session_id, options = {}) ⇒ Sendung

Startet eine Live-Streaming-Übertragung einer OpenTok-Sitzung.

Die Teilnehmer müssen aktiv mit der OpenTok-Sitzung verbunden sein, damit Sie eine Übertragung erfolgreich starten können.

Dadurch wird die Sitzung an einen HLS-Stream (HTTP Live Streaming) oder an RTMP-Streams übertragen.

Broadcasts#find method.

Parameter:

  • session_id (Zeichenkette) —

    Die Sitzungs-ID der OpenTok-Sitzung, die übertragen werden soll.

  • Optionen (Hash) (Standardwert: {})

    Ein Hash, der die Optionen für die Übertragung definiert.

Options-Hash (options):

  • :layout (Hash)

    -

    Geben Sie dies an, um den anfänglichen Layouttyp für die Sendung festzulegen. Dabei handelt es sich um ein Hash-Objekt, das drei Schlüssel enthält: :type, :stylesheet<code> and <code>:screenshare_type. Gültige Werte für :type sind „bestFit“ (beste Anpassung), „custom“ (benutzerdefiniert),

    "horizontalPresentation" (horizontal presentation),
    

    „pip“ (Bild-in-Bild) und „verticalPresentation“ (vertikale Darstellung)). Wenn Sie den Layout-Typ „custom“ angeben, legen Sie die :stylesheet Schlüssel für das Stylesheet (CSS). (Bei anderen Layouttypen darf der :stylesheet Schlüssel.) Gültige Werte für :screenshare_type sind „bestFit“, „pip“, „verticalPresentation“ und „horizontalPresentation“. Diese Eigenschaft ist optional. Wenn sie angegeben wird, dann wird die :type Eigenschaft muss auf „bestFit“ gesetzt werden. Wenn Sie keinen anfänglichen Layouttyp angeben, verwendet die Übertragung den Layouttyp „bestFit“.

  • :multiBroadcastTag (Zeichenkette)

    — Standard: Optional —

    Setzen Sie diesen Wert, um mehrere gleichzeitige Übertragungen derselben Sitzung zu unterstützen. Verwenden Sie hierfür für jede gleichzeitige Übertragung einer laufenden Sitzung eine eindeutige Zeichenfolge. Beachten Sie, dass der Wert von „multiBroadcastTag“ nicht in der Antwort zu den Methoden enthalten Liste der Live-Streaming-Übertragungen und Informationen zu einer Live-Übertragung abrufen. Siehe „Simultane Übertragungen“.

  • maxBitRate (int)

    -

    Die maximale Bitrate für den/die Übertragungsstrom(e) in Bit pro Sekunde. Der Mindestwert beträgt 100.000, der Höchstwert 6.000.000.

  • maxDuration (int)

    -

    Die maximale Dauer der Übertragung in Sekunden. Die Übertragung wird automatisch beendet, sobald die maximale Dauer erreicht ist. Sie können die maximale Dauer auf einen Wert zwischen 60 (60 Sekunden) und 36.000 (10 Stunden) festlegen. Die standardmäßige maximale Dauer beträgt 4 Stunden (14.400 Sekunden).

  • Ausgaben (Hash)

    — Standard: Erforderlich —

    Dieses Objekt definiert die Arten von Broadcast-Streams, die Sie starten möchten (sowohl HLS als auch RTMP). Sie können HLS, RTMP oder beides als Broadcast-Streams einbinden. Wenn Sie RTMP-Streaming einbinden, können Sie bis zu fünf Ziel-RTMP-Streams (oder auch nur einen) angeben.

    Bei mehreren RTMP-Streams ist die (:rtmp) Die Eigenschaft ist auf ein [Array] von Rtmp-[Hash]-Objekten gesetzt. Geben Sie für jeden RTMP-Hash Folgendes an: (:serverUrl) für die RTMP-Server-URL, (:streamName) wie beispielsweise den Namen des YouTube-Live-Streams oder den Facebook-Stream-Schlüssel) sowie (optional) (:id), eine eindeutige ID für den Stream. Wenn Sie eine ID angeben, wird diese in den (broadcast_json) Antwort auf den Aufruf der Methode „Client#start_broadcast“ und ist außerdem in der (broadcast_json) Antwort der Methode „Broadcasts#find“. Vonage überträgt die Sitzung an jede von Ihnen angegebene RTMP-URL. Beachten Sie, dass OpenTok-Live-Streaming sowohl RTMP als auch RTMPS unterstützt. Wenn Sie nur eine RTMP-URL unterstützen müssen, können Sie für das (:rtmp) Eigenschaftswert in der (:outputs) [Hash].

    Für HLS gilt, dass (:hls) Eigenschaft in der (:outputs) [Hash] wird auf ein HLS-[Hash]-Objekt gesetzt. Dieses Objekt enthält die folgenden optionalen Eigenschaften:

    • (:dvr) (Boolescher Wert). Gibt an, ob DVR-Funktionalität (Zurückspulen, Anhalten und Fortsetzen) in Playern, die diese Funktion unterstützen (true), oder nicht (false, Standardeinstellung). Bei aktiviertem DVR wird die HLS-URL am Ende um den Abfrageparameter ?DVR ergänzt.
    • (:low_latency) (Boolescher Wert). Gibt an, ob Low-Latency-Modus für den HLSstream. Einige HLS-Player unterstützen den Low-Latency-Modus nicht. Diese Funktion ist nicht mit HLS-Übertragungen im DVR-Modus kompatibel (beide können nicht gleichzeitig auf „true“ gesetzt werden). Dies ist eine Beta-Funktion.

    Die HLS-URL ist in der (broadcast_json) Antwort auf den Aufruf der Methode „Client#start_broadcast“ und ist außerdem in der (broadcast_json) Antwort von der

  • Auflösung (Zeichenkette)

    -

    Die Auflösung der Übertragung: entweder „640x480“ (SD im Querformat, Standardeinstellung), „1280x720“ (HD im Querformat), „1920x1080“ (FHD Querformat), „480x640“ (SD Hochformat), „720x1280“ (HD Hochformat) oder „1080x1920“ (FHD Hochformat).

  • :streamMode (Zeichenkette)

    — Standard: Optional —

    Ob die in die Übertragung einbezogenen Streams automatisch („auto“, Standardeinstellung) oder manuell („manual“) ausgewählt werden. Wenn Streams automatisch ausgewählt werden („auto“), können alle Streams der Sitzung in die Übertragung einbezogen werden. Wenn Streams manuell ausgewählt werden („manual“), legen Sie die einzubeziehenden Streams anhand von Aufrufen der #add_stream Methode. Sie können festlegen, ob Audio, Video oder beides eines Streams in die Übertragung einbezogen werden soll. Sowohl im automatischen als auch im manuellen Modus bezieht der Übertragungs-Composer Streams auf der Grundlage von Strompriorisierungsregeln. Wichtig: Diese Funktion ist derzeit nur in der Standard-Umgebung verfügbar.

  • :hasAudio (Boolescher Wert)

    -

    Ob die Sendung Ton enthält (Standardwert: „true“)

  • :hasVideo (Boolescher Wert)

    -

    Ob die Sendung Video enthält (Standardwert: „true“)

Rückgabe:

  • (Sendung) —

    Das Broadcast-Objekt, das Eigenschaften enthält, die das Broadcast definieren, einschließlich der Broadcast-ID.

Erhöht:

  • (OpenTokBroadcastError) —

    Die Übertragung konnte nicht gestartet werden. Die Anfrage war ungültig oder die Übertragung wurde bereits gestartet.

  • (OpenTokAuthenticationError) —

    Die Authentifizierung ist beim Starten einer Übertragung fehlgeschlagen. Ungültiger API-Schlüssel.

  • (OpenTok-Fehler) —

    OpenTok-Serverfehler.

#finden(broadcast_id) ⇒ Sendung

Ruft ein Broadcast-Objekt für die angegebene Broadcast-ID ab.

Parameter:

  • broadcast_id (Zeichenkette) —

    Die Sendungs-ID.

Rückgabe:

  • (Sendung) —

    Das Broadcast-Objekt, das Eigenschaften enthält, die das Broadcast definieren.

Erhöht:

#Layout(broadcast_id, options = {}) ⇒ Objekt

Passt das Layout einer OpenTok-Übertragung dynamisch an. Weitere Informationen finden Sie unter Weitere Informationen finden Sie unter Konfiguration des Video-Layouts für OpenTok-Live-Streaming-Übertragungen.

Parameter:

  • broadcast_id (Zeichenkette) —

    Die Sendungs-ID.

  • Optionen (Hash) (Standardwert: {})

    eine individuell anpassbare Auswahl an Optionen

Options-Hash (options):

  • :type (Zeichenkette)

    -

    Der Layout-Typ. Legen Sie diesen Wert auf „bestFit“, „pip“, „verticalPresentation“, „horizontalPresentation“, „focus“ oder „custom“ fest.

  • :stylesheet (Zeichenkette)

    -

    Das Stylesheet für ein benutzerdefiniertes Layout. Legen Sie diesen Parameter fest, wenn Sie type zu "custom". Andernfalls lassen Sie es undefiniert.

  • :screenshare_type (Zeichenkette)

    -

    Der Layout-Typ für die Bildschirmfreigabe. Setzen Sie diesen Wert auf „bestFit“, „pip“, „verticalPresentation“ oder „horizonalPresentation“. Wenn dieser Wert definiert ist, dann wird die type Der Parameter muss auf "bestFit".

Erhöht:

  • (OpenTokBroadcastError) —

    Das Sendeformat konnte nicht aktualisiert werden.

  • (OpenTokAuthenticationError) —

    Die Authentifizierung ist fehlgeschlagen. Ungültiger API-Schlüssel oder ungültiges API-Geheimnis.

  • (OpenTok-Fehler) —

    OpenTok-Serverfehler.

  • (ArgumentError) —

    Der Parameter „broadcast_id“ oder „options“ ist leer.

  • (ArgumentError) —

    Der Typ „custom“ wurde ohne Stylesheet-Option angegeben.

  • (ArgumentError) —

    Es wurde ein Stylesheet für einen anderen Typ als „custom“ übergeben. Oder es wurde ein ungültiger Typ übergeben.

  • (ArgumentError) —

    Es wurde ein ungültiger Layouttyp übergeben.

#remove_stream(broadcast_id, stream_id) ⇒ Objekt

Entfernt einen Stream aus einer aktuell laufenden Übertragung, die mit dem auf „manual“ gesetzten streamMode gestartet wurde. Eine Beschreibung dieser Funktion finden Sie unter <https://tokbox.com/developer/rest/#selecting-broadcast-streams>.

Parameter:

  • broadcast_id (Zeichenkette) —

    Die Sendungs-ID.

  • stream_id (Zeichenkette) —

    Die ID des Streams, der aus der Übertragung entfernt werden soll

Erhöht:

  • (ArgumentError) —

    Der Parameter „broadcast_id“ ist leer.

  • (ArgumentError) —

    Der Parameter „stream_id“ ist leer.

#stoppen(broadcast_id) ⇒ Sendung

Beendet eine OpenTok-Übertragung

Bitte beachten Sie, dass die Übertragung nach 120 Minuten automatisch beendet wird.

Parameter:

  • broadcast_id (Zeichenkette) —

    Die Sendungs-ID.

Rückgabe:

  • (Sendung) —

    Das Broadcast-Objekt, das Eigenschaften enthält, die das Broadcast definieren.

Erhöht: