Class: Twilio::REST::Video::V1::RecordingInstance

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

Instance Method Summary collapse

Constructor Details

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

Initialize the RecordingInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • account_sid (String)

    The SID of the Account that created this Recording resource.

  • sid (String) (defaults to: nil)

    The SID of the Call resource to fetch.



465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 465

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']),
        'sid' => payload['sid'],
        'source_sid' => payload['source_sid'],
        'size' => payload['size'],
        'url' => payload['url'],
        'type' => payload['type'],
        'duration' => payload['duration'] == nil ? payload['duration'] : payload['duration'].to_i,
        'container_format' => payload['container_format'],
        'codec' => payload['codec'],
        'grouping_sids' => payload['grouping_sids'],
        'track_name' => payload['track_name'],
        'offset' => payload['offset'],
        'media_external_location' => payload['media_external_location'],
        'status_callback' => payload['status_callback'],
        'status_callback_method' => payload['status_callback_method'],
        'links' => payload['links'],
    }

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

Instance Method Details

#account_sidString

Returns The SID of the [Account](www.twilio.com/docs/iam/api/account) that created the Recording resource.

Returns:



509
510
511
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 509

def 
    @properties['account_sid']
end

#codecCodec

Returns:

  • (Codec)


569
570
571
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 569

def codec
    @properties['codec']
end

#container_formatFormat

Returns:

  • (Format)


563
564
565
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 563

def container_format
    @properties['container_format']
end

#contextRecordingContext

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

Returns:



500
501
502
503
504
505
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 500

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

#date_createdTime

Returns The date and time in GMT when the resource was created specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.

Returns:



521
522
523
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 521

def date_created
    @properties['date_created']
end

#deleteBoolean

Delete the RecordingInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



618
619
620
621
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 618

def delete

    context.delete
end

#durationString

Returns The duration of the recording in seconds rounded to the nearest second. Sub-second tracks have a ‘Duration` property of 1 second.

Returns:

  • (String)

    The duration of the recording in seconds rounded to the nearest second. Sub-second tracks have a ‘Duration` property of 1 second



557
558
559
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 557

def duration
    @properties['duration']
end

#fetchRecordingInstance

Fetch the RecordingInstance

Returns:



626
627
628
629
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 626

def fetch

    context.fetch
end

#grouping_sidsHash

Returns A list of SIDs related to the recording. Includes the ‘room_sid` and `participant_sid`.

Returns:

  • (Hash)

    A list of SIDs related to the recording. Includes the ‘room_sid` and `participant_sid`.



575
576
577
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 575

def grouping_sids
    @properties['grouping_sids']
end

#inspectObject

Provide a detailed, user friendly representation



640
641
642
643
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 640

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

Returns The URLs of related resources.

Returns:

  • (Hash)

    The URLs of related resources.



611
612
613
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 611

def links
    @properties['links']
end

#media_external_locationString

Returns The URL of the media file associated with the recording when stored externally. See [External S3 Recordings](/docs/video/api/external-s3-recordings) for more details.

Returns:

  • (String)

    The URL of the media file associated with the recording when stored externally. See [External S3 Recordings](/docs/video/api/external-s3-recordings) for more details.



593
594
595
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 593

def media_external_location
    @properties['media_external_location']
end

#offsetString

Returns The time in milliseconds elapsed between an arbitrary point in time, common to all group rooms, and the moment when the source room of this track started. This information provides a synchronization mechanism for recordings belonging to the same room.

Returns:

  • (String)

    The time in milliseconds elapsed between an arbitrary point in time, common to all group rooms, and the moment when the source room of this track started. This information provides a synchronization mechanism for recordings belonging to the same room.



587
588
589
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 587

def offset
    @properties['offset']
end

#sidString

Returns The unique string that we created to identify the Recording resource.

Returns:

  • (String)

    The unique string that we created to identify the Recording resource.



527
528
529
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 527

def sid
    @properties['sid']
end

#sizeString

Returns The size of the recorded track, in bytes.

Returns:

  • (String)

    The size of the recorded track, in bytes.



539
540
541
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 539

def size
    @properties['size']
end

#source_sidString

Returns The SID of the recording source. For a Room Recording, this value is a ‘track_sid`.

Returns:

  • (String)

    The SID of the recording source. For a Room Recording, this value is a ‘track_sid`.



533
534
535
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 533

def source_sid
    @properties['source_sid']
end

#statusStatus

Returns:

  • (Status)


515
516
517
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 515

def status
    @properties['status']
end

#status_callbackString

Returns The URL called using the ‘status_callback_method` to send status information on every recording event.

Returns:

  • (String)

    The URL called using the ‘status_callback_method` to send status information on every recording event.



599
600
601
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 599

def status_callback
    @properties['status_callback']
end

#status_callback_methodString

Returns The HTTP method used to call ‘status_callback`. Can be: `POST` or `GET`, defaults to `POST`.

Returns:

  • (String)

    The HTTP method used to call ‘status_callback`. Can be: `POST` or `GET`, defaults to `POST`.



605
606
607
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 605

def status_callback_method
    @properties['status_callback_method']
end

#to_sObject

Provide a user friendly representation



633
634
635
636
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 633

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

#track_nameString

Returns The name that was given to the source track of the recording. If no name is given, the ‘source_sid` is used.

Returns:

  • (String)

    The name that was given to the source track of the recording. If no name is given, the ‘source_sid` is used.



581
582
583
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 581

def track_name
    @properties['track_name']
end

#typeType

Returns:

  • (Type)


551
552
553
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 551

def type
    @properties['type']
end

#urlString

Returns The absolute URL of the resource.

Returns:

  • (String)

    The absolute URL of the resource.



545
546
547
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 545

def url
    @properties['url']
end