Hérite de : : Object

Défini dans : : lib/opentok/broadcasts.rb

Vue d'ensemble

Une classe permettant de gérer les diffusions en direct via OpenTok. Voir / Diffusions en direct.

Résumé des méthodes d'instance

Détails de la méthode d'instance

#add_stream(broadcast_id, stream_id, options) ⇒ Objet

Ajoute un flux à la diffusion en cours, qui a été lancée avec le paramètre `streamMode` défini sur « manual ». Pour plus d'informations sur cette fonctionnalité, consultez <https://tokbox.com/developer/rest/#selecting-broadcast-streams>.

Vous pouvez appeler cette méthode à plusieurs reprises en passant le même identifiant de flux à `add_stream`, afin d'activer ou de désactiver le son ou la vidéo du flux dans la diffusion. Si vous définissez à la fois `has_audio` et `has_video` sur `false`, vous obtiendrez une réponse d'erreur.

Paramètres :

  • broadcast_id (Chaîne de caractères) —

    L'identifiant de diffusion.

  • stream_id (Chaîne de caractères) —

    L'identifiant du flux à ajouter à la diffusion

  • opts (Hash) —

    un ensemble d'options personnalisables

Augmentations :

  • (ArgumentError) —

    Le paramètre « broadcast_id » est vide.

  • (ArgumentError) —

    Le paramètre « stream_id » est vide.

  • (ArgumentError) —

    Les propriétés « has_audio » et « has_video » du paramètre « options » sont toutes deux définies sur « false ».

#tous(options = {}) ⇒ BroadcastList

Renvoie une `BroadcastList`, c'est-à-dire un tableau regroupant les diffusions terminées et en cours, pour votre clé API.

tokbox.com/developer/rest/#list_broadcasts

Paramètres :

  • options (Hash) (valeur par défaut : {})

    Un hachage dont les clés définissent la plage de diffusions à récupérer.

Table de hachage des options (options) :

  • :offset (entier)

    -

    Facultatif. L'offset d'index de la première diffusion. La valeur 0 correspond à l'offset de la diffusion la plus récente. La valeur 1 correspond à l'offset de la diffusion qui a précédé la diffusion la plus récente. Si vous ne spécifiez pas d'offset, la valeur 0 est utilisée.

  • :count (entier)

    -

    Facultatif. Nombre de diffusions à renvoyer. Le nombre maximal de diffusions renvoyées est de 1 000.

  • :session_id (Chaîne de caractères)

    -

    Facultatif. L'identifiant de session auquel appartiennent les diffusions.

Retours :

  • (BroadcastList) —

    Un objet `BroadcastList`, qui est un tableau d'objets `Broadcast`.

Augmentations :

  • (ArgumentError)

#créer(session_id, options = {}) ⇒ Radiodiffusion

Lance la diffusion en direct d'une session OpenTok.

Les clients doivent être activement connectés à la session OpenTok pour que vous puissiez lancer correctement une diffusion.

Cela permet de diffuser la session via un flux HLS (HTTP Live Streaming) ou RTMP.

Broadcasts#find method.

Paramètres :

  • session_id (Chaîne de caractères) —

    L'identifiant de la session OpenTok à diffuser.

  • options (Hash) (valeur par défaut : {})

    Un hachage définissant les options de la diffusion.

Table de hachage des options (options) :

  • :layout (Hash)

    -

    Indiquez cette option pour définir le type de mise en page initiale de la diffusion. Il s'agit d'un hachage contenant trois clés : :type, :stylesheet<code> and <code>:screenshare_type. Valeurs valides pour :type sont « bestFit » (meilleur ajustement), « custom » (personnalisé),

    "horizontalPresentation" (horizontal presentation),
    

    « pip » (image dans l'image) et « verticalPresentation » (affichage vertical)). Si vous spécifiez un type de mise en page « personnalisé », définissez le :stylesheet clé de la feuille de style (CSS). (Pour les autres types de mise en page, ne définissez pas la :stylesheet clé.) Valeurs valides pour :screenshare_type sont « bestFit », « pip », « verticalPresentation » et « horizontalPresentation ». Cette propriété est facultative. Si elle est spécifiée, alors le :type propriété doit doit être défini sur « bestFit ». Si vous ne spécifiez pas de type de mise en page initial, la diffusion utilise le type de mise en page « bestFit ».

  • :multiBroadcastTag (Chaîne de caractères)

    — par défaut : Facultatif —

    Définissez ce paramètre pour prendre en charge plusieurs diffusions simultanées d'une même session. Attribuez une chaîne de caractères unique à chaque diffusion simultanée d'une session en cours. Notez que la valeur de « multiBroadcastTag » est pas figurant dans la réponse concernant les méthodes permettant de Liste des diffusions en direct et obtenir des informations sur une diffusion en direct. Voir les diffusions simultanées.

  • maxBitRate (int)

    -

    Le débit binaire maximal du ou des flux de diffusion, en bits par seconde. La valeur minimale est de 100 000 et la valeur maximale de 6 000 000.

  • maxDuration (int)

    -

    Durée maximale de la diffusion, en secondes. La diffusion s'arrêtera automatiquement lorsque cette durée maximale sera atteinte. Vous pouvez définir la durée maximale entre 60 (60 secondes) et 36 000 (10 heures). La durée maximale par défaut est de 4 heures (14 400 secondes).

  • résultats (Hash)

    — par défaut : Obligatoire —

    Cet objet définit les types de flux de diffusion que vous souhaitez lancer (HLS et RTMP). Vous pouvez inclure des flux HLS, RTMP ou les deux. Si vous incluez la diffusion RTMP, vous pouvez spécifier jusqu'à cinq flux RTMP cibles (ou un seul).

    Pour plusieurs flux RTMP, le (:rtmp) est définie sur un [Tableau] d'objets Rtmp [Hash]. Pour chaque hash RTMP, spécifiez (:serverUrl) pour l'URL du serveur RTMP, (:streamName) telles que le nom du flux YouTube Live ou la clé du flux Facebook), et (facultativement) (:id), un identifiant unique pour le flux. Si vous indiquez un identifiant, celui-ci sera inclus dans le (broadcast_json) réponse issue de l'appel de la méthode Client#start_broadcast, et est également disponible dans le (broadcast_json) réponse renvoyée par la méthode `Broadcasts#find`. Vonage diffuse la session vers chaque URL RTMP que vous spécifiez. Notez que la diffusion en direct OpenTok prend en charge les protocoles RTMP et RTMPS. Si vous ne souhaitez prendre en charge qu'une seule URL RTMP, vous pouvez définir un objet `Rtmp [Hash]` (au lieu d'un tableau d'objets) pour le (:rtmp) valeur de la propriété dans le (:outputs) [Hash].

    Pour HLS, le (:hls) propriété dans le (:outputs) [Hash] est défini comme un objet HLS [Hash]. Cet objet comprend les propriétés facultatives suivantes :

    • (:dvr) (booléen). Indique s'il faut activer Fonctionnalité DVR (retour en arrière, mise en pause et reprise) dans les lecteurs qui prennent en charge cette fonctionnalité (vrai), ou non (faux, valeur par défaut). Lorsque la fonction DVR est activée, l'URL HLS inclura la chaîne de requête « ?DVR » ajoutée à la fin.
    • (:low_latency) (booléen). Indique s'il faut activer mode à faible latence pour HLSstream. Certains lecteurs HLS ne prennent pas en charge le mode à faible latence. Cette fonctionnalité est incompatible avec les diffusions HLS en mode DVR (les deux ne peuvent pas être activés simultanément). Il s'agit d'une fonctionnalité en version bêta.

    L'URL HLS est incluse dans le (broadcast_json) réponse issue de l'appel de la méthode Client#start_broadcast, et est également disponible dans le (broadcast_json) réponse de la

  • résolution (chaîne de caractères)

    -

    La résolution de la diffusion : soit « 640x480 » (SD en mode paysage, valeur par défaut), « 1280x720 » (HD en mode paysage), « 1920x1080 » (FHD paysage), « 480x640 » (SD portrait), « 720x1280 » (HD portrait) ou « 1080x1920 » (FHD portrait).

  • :streamMode (Chaîne de caractères)

    — par défaut : Facultatif —

    Si les flux inclus dans la diffusion sont sélectionnés automatiquement (« auto », par défaut) ou manuellement (« manuel »). Lorsque les flux sont sélectionnés automatiquement (« auto »), tous les flux de la session peuvent être inclus dans la diffusion. Lorsque les flux sont sélectionnés manuellement (« manual »), vous spécifiez les flux à inclure en appelant la méthode #ajouter_flux méthode. Vous pouvez préciser si la diffusion inclut le flux audio, le flux vidéo ou les deux. Que ce soit en mode automatique ou manuel, l’éditeur de diffusion inclut les flux en fonction de règles de hiérarchisation des cours d'eau. Important : cette fonctionnalité n'est actuellement disponible que dans l'environnement Standard.

  • :hasAudio (booléen)

    -

    Si la diffusion comporte un flux audio (valeur par défaut : « true »)

  • :hasVideo (booléen)

    -

    Si la diffusion contient de la vidéo (valeur par défaut : « true »)

Retours :

  • (Radiodiffusion) —

    L'objet de diffusion, qui comprend les propriétés définissant la diffusion, notamment l'identifiant de diffusion.

Augmentations :

  • (OpenTokBroadcastError) —

    La diffusion n'a pas pu démarrer. La requête n'était pas valide ou la diffusion avait déjà commencé.

  • (OpenTokAuthenticationError) —

    Échec de l'authentification lors du lancement d'une diffusion. Clé API non valide.

  • (OpenTokError) —

    Erreur du serveur OpenTok.

#trouver(broadcast_id) ⇒ Radiodiffusion

Récupère un objet « Broadcast » correspondant à l'identifiant de diffusion indiqué.

Paramètres :

  • broadcast_id (Chaîne de caractères) —

    L'identifiant de diffusion.

Retours :

  • (Radiodiffusion) —

    L'objet de diffusion, qui comprend les propriétés définissant la diffusion.

Augmentations :

#mise en page(broadcast_id, options = {}) ⇒ Objet

Modifie dynamiquement la mise en page d'une diffusion OpenTok. Pour plus d'informations, consultez Pour plus d'informations, consultez Configuration de la disposition vidéo pour les diffusions en direct OpenTok.

Paramètres :

  • broadcast_id (Chaîne de caractères) —

    L'identifiant de diffusion.

  • options (Hash) (valeur par défaut : {})

    un ensemble d'options personnalisables

Table de hachage des options (options) :

  • :type (Chaîne de caractères)

    -

    Le type de mise en page. Définissez cette option sur « bestFit », « pip », « verticalPresentation », « horizontalPresentation », « focus » ou « custom ».

  • :feuille de style (Chaîne)

    -

    La feuille de style d'une mise en page personnalisée. Définissez ce paramètre si vous configurez type à "custom". Sinon, ne le définissez pas.

  • :screenshare_type (Chaîne de caractères)

    -

    Type de disposition du partage d'écran. Définissez cette option sur « bestFit », « pip », « verticalPresentation » ou « horizontalPresentation ». Si cette option est définie, alors le type Le paramètre doit être défini sur "bestFit".

Augmentations :

  • (OpenTokBroadcastError) —

    La mise en page de l'émission n'a pas pu être mise à jour.

  • (OpenTokAuthenticationError) —

    Échec de l'authentification. Clé API ou secret non valide.

  • (OpenTokError) —

    Erreur du serveur OpenTok.

  • (ArgumentError) —

    Le paramètre « broadcast_id » ou « options » est vide.

  • (ArgumentError) —

    Le type « custom » a été spécifié sans option de feuille de style.

  • (ArgumentError) —

    Une feuille de style a été transmise pour un type autre que « custom ». Ou bien un type non valide a été transmis.

  • (ArgumentError) —

    Un type de mise en page non valide a été transmis.

#remove_stream(broadcast_id, stream_id) ⇒ Objet

Supprime un flux d'une diffusion en cours qui a été lancée avec le paramètre `streamMode` défini sur « manual ». Pour plus d'informations sur cette fonctionnalité, consultez <https://tokbox.com/developer/rest/#selecting-broadcast-streams>.

Paramètres :

  • broadcast_id (Chaîne de caractères) —

    L'identifiant de diffusion.

  • stream_id (Chaîne de caractères) —

    L'identifiant du flux à supprimer de la diffusion

Augmentations :

  • (ArgumentError) —

    Le paramètre broadcast_id est vide.

  • (ArgumentError) —

    Le paramètre « stream_id » est vide.

#arrêter(broadcast_id) ⇒ Radiodiffusion

Arrête une diffusion OpenTok

Veuillez noter que les diffusions s'arrêtent automatiquement au bout de 120 minutes.

Paramètres :

  • broadcast_id (Chaîne de caractères) —

    L'identifiant de diffusion.

Retours :

  • (Radiodiffusion) —

    L'objet de diffusion, qui comprend les propriétés définissant la diffusion.

Augmentations :