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
283 284 285 286 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 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 283 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.
329 330 331 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 329 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`.
371 372 373 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 371 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.
377 378 379 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 377 def audio_sources_excluded @properties['audio_sources_excluded'] end |
#bitrate ⇒ String
Returns The average bit rate of the composition’s media.
407 408 409 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 407 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
320 321 322 323 324 325 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 320 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.
347 348 349 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 347 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.
341 342 343 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 341 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.
353 354 355 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 353 def date_deleted @properties['date_deleted'] end |
#delete ⇒ Boolean
Delete the CompositionInstance
456 457 458 459 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 456 def delete context.delete end |
#duration ⇒ String
Returns The duration of the composition’s media file in seconds.
419 420 421 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 419 def duration @properties['duration'] end |
#fetch ⇒ CompositionInstance
Fetch the CompositionInstance
464 465 466 467 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 464 def fetch context.fetch end |
#format ⇒ Format
401 402 403 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 401 def format @properties['format'] end |
#inspect ⇒ Object
Provide a detailed, user friendly representation
478 479 480 481 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 478 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.
449 450 451 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 449 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.
425 426 427 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 425 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`.
389 390 391 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 389 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.
365 366 367 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 365 def room_sid @properties['room_sid'] end |
#sid ⇒ String
Returns The unique string that we created to identify the Composition resource.
359 360 361 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 359 def sid @properties['sid'] end |
#size ⇒ String
Returns The size of the composed media file in bytes.
413 414 415 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 413 def size @properties['size'] end |
#status ⇒ Status
335 336 337 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 335 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.
431 432 433 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 431 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`.
437 438 439 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 437 def status_callback_method @properties['status_callback_method'] end |
#to_s ⇒ Object
Provide a user friendly representation
471 472 473 474 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 471 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.
395 396 397 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 395 def trim @properties['trim'] end |
#url ⇒ String
Returns The absolute URL of the resource.
443 444 445 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 443 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.
383 384 385 |
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 383 def video_layout @properties['video_layout'] end |