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.



267
268
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
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 267

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:



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

def 
    @properties['account_sid']
end

#codecCodec

Returns:

  • (Codec)


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

def codec
    @properties['codec']
end

#container_formatFormat

Returns:

  • (Format)


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

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:



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

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:



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

def date_created
    @properties['date_created']
end

#deleteBoolean

Delete the RecordingInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



419
420
421
422
# File 'lib/twilio-ruby/rest/video/v1/recording.rb', line 419

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



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

def duration
    @properties['duration']
end

#fetchRecordingInstance

Fetch the RecordingInstance

Returns:



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

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`.



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

def grouping_sids
    @properties['grouping_sids']
end

#inspectObject

Provide a detailed, user friendly representation



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

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.



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

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.



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

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.



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

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.



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

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.



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

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`.



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

def source_sid
    @properties['source_sid']
end

#statusStatus

Returns:

  • (Status)


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

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.



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

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`.



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

def status_callback_method
    @properties['status_callback_method']
end

#to_sObject

Provide a user friendly representation



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

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.



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

def track_name
    @properties['track_name']
end

#typeType

Returns:

  • (Type)


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

def type
    @properties['type']
end

#urlString

Returns The absolute URL of the resource.

Returns:

  • (String)

    The absolute URL of the resource.



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

def url
    @properties['url']
end