Skip to content

Commit

Permalink
DEVX-6823/DEVX-7080/DEVX-6829/DEVX-6830: Broadcast and Dial updates (#…
Browse files Browse the repository at this point in the history
…266)

* DEVX-6823: updating comments for Sip#dial

* DEVX-7080: adding hasAudio & hasVideo to Broadcast

* DEVX-6829: adding maxBitRate property to Broadcast

* DEVX-6830: adding hlsStatus to Broadcast

* Bumping patch version

* Updating changelog
  • Loading branch information
superchilled authored Aug 17, 2023
1 parent bad4a19 commit c39bdbc
Show file tree
Hide file tree
Showing 5 changed files with 40 additions and 11 deletions.
4 changes: 4 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# 4.7.1

* Updates docs comments for `Broadcasts` and `Sip` [#266](https://github.com/opentok/OpenTok-Ruby-SDK/pull/266)

# 4.7.0

* Adds support for the End-to-end encryption (E2EE) feature [#259](https://github.com/opentok/OpenTok-Ruby-SDK/pull/259)
Expand Down
15 changes: 15 additions & 0 deletions lib/opentok/broadcast.rb
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,15 @@ module OpenTok
# @attr [int] updated_at
# For this start method, this timestamp matches the createdAt timestamp.
#
# @attr [int] maxBitRate
# The maximum bitrate for the broadcast stream(s), in bits per second.
#
# @attr [boolean] hasAudio
# The broadcast has audio enabled
#
# @attr [boolean] hasVideo
# The broadcast has video enabled
#
# @attr [string] resolution
# The resolution of the broadcast: either "640x480" (SD landscape, the default), "1280x720" (HD landscape),
# "1920x1080" (FHD landscape), "480x640" (SD portrait), "720x1280" (HD portrait), or "1080x1920" (FHD portrait).
Expand All @@ -33,6 +42,12 @@ module OpenTok
# You can include HLS, RTMP, or both as broadcast streams. If you include RTMP streaming,
# you can specify up to five target RTMP streams (or just one).
# The (<code>:hls</code>) property is set to an empty [Hash] object. The HLS URL is returned in the response.
# The `hlsStatus` property is set to one of the following:
# - "connecting" — The OpenTok server is in the process of starting transcoders. This is the initial state.
# - "ready" — The OpenTok server has succesfully initialized but the CDN is not consuming media.
# - "live" — The OpenTok server has succesfully initialized and the CDN is consuming media.
# - "ended" — The source stream has ended. If DVR is enabled and pre-recorded media is requested, then the status will transition to "live".
# - "error" — There is an error in the OpenTok platform.
# The (<code>:rtmp</code>) property is set to an [Array] of Rtmp [Hash] properties.
# For each RTMP stream, specify (<code>:serverUrl</code>) for the RTMP server URL,
# (<code>:streamName</code>) such as the YouTube Live stream name or the Facebook stream key),
Expand Down
16 changes: 12 additions & 4 deletions lib/opentok/broadcasts.rb
Original file line number Diff line number Diff line change
Expand Up @@ -37,12 +37,16 @@ def initialize(client)
# If you do not specify an initial layout type, the broadcast uses the best fit
# layout type.
#
# @option options [String] :multiBroadcastTag (Optional) Set this to support multiple broadcasts for the same session simultaneously.
# Set this to a unique string for each simultaneous broadcast of an ongoing session. Note that the `multiBroadcastTag` value is *not* included
# in the response for the methods to {https://tokbox.com/developer/rest/#list_broadcasts list live streaming broadcasts} and
# {https://tokbox.com/developer/rest/#get_info_broadcast get information about a live streaming broadcast}.
# @option options [String] :multiBroadcastTag (Optional) Set this to support multiple broadcasts for the same session simultaneously.
# Set this to a unique string for each simultaneous broadcast of an ongoing session. Note that the `multiBroadcastTag` value is *not* included
# in the response for the methods to {https://tokbox.com/developer/rest/#list_broadcasts list live streaming broadcasts} and
# {https://tokbox.com/developer/rest/#get_info_broadcast get information about a live streaming broadcast}.
# {https://tokbox.com/developer/guides/broadcast/live-streaming#simultaneous-broadcasts See Simultaneous broadcasts}.
#
# @option options [int] maxBitRate
# The maximum bitrate for the broadcast stream(s), in bits per second.
# The minimum value is 100,000 and the maximum is 6,000,000.
#
# @option options [int] maxDuration
# The maximum duration for the broadcast, in seconds. The broadcast will automatically stop when
# the maximum duration is reached. You can set the maximum duration to a value from 60 (60 seconds) to 36000 (10 hours).
Expand Down Expand Up @@ -95,6 +99,10 @@ def initialize(client)
# on {https://tokbox.com/developer/guides/archive-broadcast-layout/#stream-prioritization-rules stream prioritization rules}.
# Important: this feature is currently available in the Standard environment only.
#
# @option options [Boolean] :hasAudio Whether the broadcast has audio (default `true`)
#
# @option options [Boolean] :hasVideo Whether the broadcast has video (default `true`)
#
# @return [Broadcast] The broadcast object, which includes properties defining the broadcast,
# including the broadcast ID.
#
Expand Down
14 changes: 8 additions & 6 deletions lib/opentok/sip.rb
Original file line number Diff line number Diff line change
Expand Up @@ -38,13 +38,15 @@ class Sip
# @option opts [true, false] :secure Whether the media must be transmitted
# encrypted (​true​) or not (​false​, the default).
# @option opts [true, false] :video Whether the SIP call will include
# video (​true​) or not (​false​, the default). With video included, the SIP
# client's video is included in the OpenTok stream that is sent to the
# OpenTok session. The SIP client will receive a single composed video of
# the published streams in the OpenTok session.
# video (​true​) or not (​false​, the default). With video included, the SIP
# client's video is included in the OpenTok stream that is sent to the
# OpenTok session. The SIP client will receive a single composed video of
# the published streams in the OpenTok session.
# @option opts [true, false] :observe_force_mute Whether the SIP end point
# observes {https://tokbox.com/developer/guides/moderation/#force_mute force mute moderation}
# (true) or not (false, the default).
# observes {https://tokbox.com/developer/guides/moderation/#force_mute force mute moderation}
# (true) or not (false, the default).
# @option opts [Array] :streams An array of stream IDs for streams to include in the SIP call.
# If you do not set this property, all streams in the session are included in the call.
def dial(session_id, token, sip_uri, opts)
response = @client.dial(session_id, token, sip_uri, opts)
end
Expand Down
2 changes: 1 addition & 1 deletion lib/opentok/version.rb
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
module OpenTok
# @private
VERSION = '4.7.0'
VERSION = '4.7.1'
end

0 comments on commit c39bdbc

Please sign in to comment.