Class: Twilio::REST::Video::V1::CompositionInstance
- Inherits:
-
InstanceResource
- Object
- InstanceResource
- Twilio::REST::Video::V1::CompositionInstance
- Defined in:
- lib/twilio-ruby/rest/video/v1/composition.rb
Instance Method Summary collapse
-
#account_sid ⇒ String
The SID of the [Account](www.twilio.com/docs/iam/api/account) that created the Composition resource.
-
#audio_sources ⇒ Array<String>
The array of track names to include in the composition.
-
#audio_sources_excluded ⇒ Array<String>
The array of track names to exclude from the composition.
-
#bitrate ⇒ String
The average bit rate of the composition’s media.
-
#context ⇒ CompositionContext
Generate an instance context for the instance, the context is capable of performing various actions.
-
#date_completed ⇒ Time
The date and time in GMT when the composition’s media processing task finished, specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.
-
#date_created ⇒ Time
The date and time in GMT when the resource was created specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.
-
#date_deleted ⇒ Time
The date and time in GMT when the composition generated media was deleted, specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.
-
#delete ⇒ Boolean
Delete the CompositionInstance.
-
#duration ⇒ String
The duration of the composition’s media file in seconds.
-
#fetch ⇒ CompositionInstance
Fetch the CompositionInstance.
- #format ⇒ Format
-
#initialize(version, payload, sid: nil) ⇒ CompositionInstance
constructor
Initialize the CompositionInstance.
-
#inspect ⇒ Object
Provide a detailed, user friendly representation.
-
#links ⇒ Hash
The URL of the media file associated with the composition.
-
#media_external_location ⇒ String
The URL of the media file associated with the composition when stored externally.
-
#resolution ⇒ String
The dimensions of the video image in pixels expressed as columns (width) and rows (height).
-
#room_sid ⇒ String
The SID of the Group Room that generated the audio and video tracks used in the composition.
-
#sid ⇒ String
The unique string that we created to identify the Composition resource.
-
#size ⇒ String
The size of the composed media file in bytes.
- #status ⇒ Status
-
#status_callback ⇒ String
The URL called using the ‘status_callback_method` to send status information on every composition event.
-
#status_callback_method ⇒ String
The HTTP method used to call ‘status_callback`.
-
#to_s ⇒ Object
Provide a user friendly representation.
-
#trim ⇒ Boolean
Whether to remove intervals with no media, as specified in the POST request that created the composition.
-
#url ⇒ String
The absolute URL of the resource.
-
#video_layout ⇒ Hash
An object that describes the video layout of the composition in terms of regions.
Constructor Details
#initialize(version, payload, sid: nil) ⇒ CompositionInstance
Initialize the CompositionInstance
287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 287 def initialize(version, payload , sid: nil) super(version) # Marshaled Properties @properties = { 'account_sid' => payload['account_sid'], 'status' => payload['status'], 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']), 'date_completed' => Twilio.deserialize_iso8601_datetime(payload['date_completed']), 'date_deleted' => Twilio.deserialize_iso8601_datetime(payload['date_deleted']), 'sid' => payload['sid'], 'room_sid' => payload['room_sid'], 'audio_sources' => payload['audio_sources'], 'audio_sources_excluded' => payload['audio_sources_excluded'], 'video_layout' => payload['video_layout'], 'resolution' => payload['resolution'], 'trim' => payload['trim'], 'format' => payload['format'], 'bitrate' => payload['bitrate'] == nil ? payload['bitrate'] : payload['bitrate'].to_i, 'size' => payload['size'], 'duration' => payload['duration'] == nil ? payload['duration'] : payload['duration'].to_i, 'media_external_location' => payload['media_external_location'], 'status_callback' => payload['status_callback'], 'status_callback_method' => payload['status_callback_method'], 'url' => payload['url'], 'links' => payload['links'], } # Context @instance_context = nil @params = { 'sid' => sid || @properties['sid'] , } end |
Instance Method Details
#account_sid ⇒ String
Returns The SID of the [Account](www.twilio.com/docs/iam/api/account) that created the Composition resource.
333 334 335 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 333 def account_sid @properties['account_sid'] end |
#audio_sources ⇒ Array<String>
Returns The array of track names to include in the composition. The composition includes all audio sources specified in ‘audio_sources` except those specified in `audio_sources_excluded`. The track names in this property can include an asterisk as a wild card character, which matches zero or more characters in a track name. For example, `student*` includes tracks named `student` as well as `studentTeam`.
375 376 377 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 375 def audio_sources @properties['audio_sources'] end |
#audio_sources_excluded ⇒ Array<String>
Returns The array of track names to exclude from the composition. The composition includes all audio sources specified in ‘audio_sources` except for those specified in `audio_sources_excluded`. The track names in this property can include an asterisk as a wild card character, which matches zero or more characters in a track name. For example, `student*` excludes `student` as well as `studentTeam`. This parameter can also be empty.
381 382 383 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 381 def audio_sources_excluded @properties['audio_sources_excluded'] end |
#bitrate ⇒ String
Returns The average bit rate of the composition’s media.
411 412 413 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 411 def bitrate @properties['bitrate'] end |
#context ⇒ CompositionContext
Generate an instance context for the instance, the context is capable of performing various actions. All instance actions are proxied to the context
324 325 326 327 328 329 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 324 def context unless @instance_context @instance_context = CompositionContext.new(@version , @params['sid']) end @instance_context end |
#date_completed ⇒ Time
Returns The date and time in GMT when the composition’s media processing task finished, specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.
351 352 353 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 351 def date_completed @properties['date_completed'] end |
#date_created ⇒ Time
Returns The date and time in GMT when the resource was created specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.
345 346 347 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 345 def date_created @properties['date_created'] end |
#date_deleted ⇒ Time
Returns The date and time in GMT when the composition generated media was deleted, specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.
357 358 359 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 357 def date_deleted @properties['date_deleted'] end |
#delete ⇒ Boolean
Delete the CompositionInstance
460 461 462 463 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 460 def delete context.delete end |
#duration ⇒ String
Returns The duration of the composition’s media file in seconds.
423 424 425 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 423 def duration @properties['duration'] end |
#fetch ⇒ CompositionInstance
Fetch the CompositionInstance
468 469 470 471 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 468 def fetch context.fetch end |
#format ⇒ Format
405 406 407 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 405 def format @properties['format'] end |
#inspect ⇒ Object
Provide a detailed, user friendly representation
482 483 484 485 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 482 def inspect values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ") "<Twilio.Video.V1.CompositionInstance #{values}>" end |
#links ⇒ Hash
Returns The URL of the media file associated with the composition.
453 454 455 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 453 def links @properties['links'] end |
#media_external_location ⇒ String
Returns The URL of the media file associated with the composition when stored externally. See [External S3 Compositions](/docs/video/api/external-s3-compositions) for more details.
429 430 431 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 429 def media_external_location @properties['media_external_location'] end |
#resolution ⇒ String
Returns The dimensions of the video image in pixels expressed as columns (width) and rows (height). The string’s format is ‘widthxheight`, such as `640x480`.
393 394 395 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 393 def resolution @properties['resolution'] end |
#room_sid ⇒ String
Returns The SID of the Group Room that generated the audio and video tracks used in the composition. All media sources included in a composition must belong to the same Group Room.
369 370 371 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 369 def room_sid @properties['room_sid'] end |
#sid ⇒ String
Returns The unique string that we created to identify the Composition resource.
363 364 365 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 363 def sid @properties['sid'] end |
#size ⇒ String
Returns The size of the composed media file in bytes.
417 418 419 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 417 def size @properties['size'] end |
#status ⇒ Status
339 340 341 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 339 def status @properties['status'] end |
#status_callback ⇒ String
Returns The URL called using the ‘status_callback_method` to send status information on every composition event.
435 436 437 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 435 def status_callback @properties['status_callback'] end |
#status_callback_method ⇒ String
Returns The HTTP method used to call ‘status_callback`. Can be: `POST` or `GET`, defaults to `POST`.
441 442 443 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 441 def status_callback_method @properties['status_callback_method'] end |
#to_s ⇒ Object
Provide a user friendly representation
475 476 477 478 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 475 def to_s values = @params.map{|k, v| "#{k}: #{v}"}.join(" ") "<Twilio.Video.V1.CompositionInstance #{values}>" end |
#trim ⇒ Boolean
Returns Whether to remove intervals with no media, as specified in the POST request that created the composition. Compositions with ‘trim` enabled are shorter when the Room is created and no Participant joins for a while as well as if all the Participants leave the room and join later, because those gaps will be removed. See [Specifying Video Layouts](www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
399 400 401 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 399 def trim @properties['trim'] end |
#url ⇒ String
Returns The absolute URL of the resource.
447 448 449 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 447 def url @properties['url'] end |
#video_layout ⇒ Hash
Returns An object that describes the video layout of the composition in terms of regions. See [Specifying Video Layouts](www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
387 388 389 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 387 def video_layout @properties['video_layout'] end |