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

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

Instance Method Summary collapse

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_sidString



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

def 
    @properties['account_sid']
end

#audio_sourcesArray<String>



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

def audio_sources
    @properties['audio_sources']
end

#audio_sources_excludedArray<String>



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

def audio_sources_excluded
    @properties['audio_sources_excluded']
end

#bitrateString



411
412
413
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 411

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



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_completedTime



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

def date_completed
    @properties['date_completed']
end

#date_createdTime



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

def date_created
    @properties['date_created']
end

#date_deletedTime



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

def date_deleted
    @properties['date_deleted']
end

#deleteBoolean

Delete the CompositionInstance



460
461
462
463
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 460

def delete

    context.delete
end

#durationString



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

def duration
    @properties['duration']
end

#fetchCompositionInstance

Fetch the CompositionInstance



468
469
470
471
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 468

def fetch

    context.fetch
end

#formatFormat



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

def format
    @properties['format']
end

#inspectObject

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


453
454
455
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 453

def links
    @properties['links']
end

#media_external_locationString



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

def media_external_location
    @properties['media_external_location']
end

#resolutionString



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

def resolution
    @properties['resolution']
end

#room_sidString



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

def room_sid
    @properties['room_sid']
end

#sidString



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

def sid
    @properties['sid']
end

#sizeString



417
418
419
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 417

def size
    @properties['size']
end

#statusStatus



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

def status
    @properties['status']
end

#status_callbackString



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

def status_callback
    @properties['status_callback']
end

#status_callback_methodString



441
442
443
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 441

def status_callback_method
    @properties['status_callback_method']
end

#to_sObject

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

#trimBoolean



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

def trim
    @properties['trim']
end

#urlString



447
448
449
# File 'lib/twilio-ruby/rest/video/v1/composition.rb', line 447

def url
    @properties['url']
end

#video_layoutHash



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

def video_layout
    @properties['video_layout']
end