Class: Twilio::REST::Video::V1::CompositionInstance

Inherits:
InstanceResource show all
Defined in:
lib/twilio-ruby/rest/video/v1/composition.rb

Overview

PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact [email protected].

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, sid: nil) ⇒ CompositionInstance

Initialize the CompositionInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • sid (String) (defaults to: nil)

    The sid



269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 269

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' => payload['date_completed'],
      'date_deleted' => payload['date_deleted'],
      'sid' => payload['sid'],
      'audio_sources' => payload['audio_sources'],
      'video_sources' => payload['video_sources'],
      'video_layout' => payload['video_layout'],
      'resolution' => payload['resolution'],
      'format' => payload['format'],
      'bitrate' => payload['bitrate'].to_i,
      'size' => payload['size'].to_i,
      'duration' => payload['duration'].to_i,
      'url' => payload['url'],
      'room_sid' => payload['room_sid'],
      'links' => payload['links'],
  }

  # Context
  @instance_context = nil
  @params = {'sid' => sid || @properties['sid'], }
end

Instance Method Details

#account_sidString

Returns The account_sid.

Returns:

  • (String)

    The account_sid



311
312
313
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 311

def 
  @properties['account_sid']
end

#audio_sourcesString

Returns The audio_sources.

Returns:

  • (String)

    The audio_sources



347
348
349
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 347

def audio_sources
  @properties['audio_sources']
end

#bitrateString

Returns The bitrate.

Returns:

  • (String)

    The bitrate



377
378
379
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 377

def bitrate
  @properties['bitrate']
end

#contextCompositionContext

Generate an instance context for the instance, the context is capable of performing various actions. All instance actions are proxied to the context

Returns:



302
303
304
305
306
307
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 302

def context
  unless @instance_context
    @instance_context = CompositionContext.new(@version, @params['sid'], )
  end
  @instance_context
end

#date_completedString

Returns The date_completed.

Returns:

  • (String)

    The date_completed



329
330
331
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 329

def date_completed
  @properties['date_completed']
end

#date_createdTime

Returns The date_created.

Returns:

  • (Time)

    The date_created



323
324
325
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 323

def date_created
  @properties['date_created']
end

#date_deletedString

Returns The date_deleted.

Returns:

  • (String)

    The date_deleted



335
336
337
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 335

def date_deleted
  @properties['date_deleted']
end

#deleteBoolean

Deletes the CompositionInstance

Returns:

  • (Boolean)

    true if delete succeeds, true otherwise



421
422
423
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 421

def delete
  context.delete
end

#durationString

Returns The duration.

Returns:

  • (String)

    The duration



389
390
391
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 389

def duration
  @properties['duration']
end

#fetchCompositionInstance

Fetch a CompositionInstance

Returns:



414
415
416
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 414

def fetch
  context.fetch
end

#formatcomposition.Format

Returns The format.

Returns:

  • (composition.Format)

    The format



371
372
373
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 371

def format
  @properties['format']
end

#inspectObject

Provide a detailed, user friendly representation



434
435
436
437
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 434

def inspect
  values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.Video.V1.CompositionInstance #{values}>"
end

Returns The links.

Returns:

  • (String)

    The links



407
408
409
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 407

def links
  @properties['links']
end

#resolutionString

Returns The resolution.

Returns:

  • (String)

    The resolution



365
366
367
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 365

def resolution
  @properties['resolution']
end

#room_sidString

Returns The room_sid.

Returns:

  • (String)

    The room_sid



401
402
403
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 401

def room_sid
  @properties['room_sid']
end

#sidString

Returns The sid.

Returns:

  • (String)

    The sid



341
342
343
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 341

def sid
  @properties['sid']
end

#sizeString

Returns The size.

Returns:

  • (String)

    The size



383
384
385
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 383

def size
  @properties['size']
end

#statuscomposition.Status

Returns The status.

Returns:

  • (composition.Status)

    The status



317
318
319
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 317

def status
  @properties['status']
end

#to_sObject

Provide a user friendly representation



427
428
429
430
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 427

def to_s
  values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.Video.V1.CompositionInstance #{values}>"
end

#urlString

Returns The url.

Returns:

  • (String)

    The url



395
396
397
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 395

def url
  @properties['url']
end

#video_layoutcomposition.VideoLayout

Returns The video_layout.

Returns:

  • (composition.VideoLayout)

    The video_layout



359
360
361
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 359

def video_layout
  @properties['video_layout']
end

#video_sourcesString

Returns The video_sources.

Returns:

  • (String)

    The video_sources



353
354
355
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 353

def video_sources
  @properties['video_sources']
end