Class: Twilio::REST::Fax::V1::FaxInstance

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

Overview

PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.

Instance Method Summary collapse

Constructor Details

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

Initialize the FaxInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • sid (String) (defaults to: nil)

    The Twilio-provided string that uniquely identifies the Fax resource to fetch.



350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 350

def initialize(version, payload, sid: nil)
  super(version)

  # Marshaled Properties
  @properties = {
      'sid' => payload['sid'],
      'account_sid' => payload['account_sid'],
      'from' => payload['from'],
      'to' => payload['to'],
      'quality' => payload['quality'],
      'media_sid' => payload['media_sid'],
      'media_url' => payload['media_url'],
      'num_pages' => payload['num_pages'] == nil ? payload['num_pages'] : payload['num_pages'].to_i,
      'duration' => payload['duration'] == nil ? payload['duration'] : payload['duration'].to_i,
      'status' => payload['status'],
      'direction' => payload['direction'],
      'api_version' => payload['api_version'],
      'price' => payload['price'].to_f,
      'price_unit' => payload['price_unit'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'links' => payload['links'],
      'url' => payload['url'],
  }

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

Instance Method Details

#account_sidString

Returns The SID of the Account that created the resource.

Returns:

  • (String)

    The SID of the Account that created the resource



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

def 
  @properties['account_sid']
end

#api_versionString

Returns The API version used to transmit the fax.

Returns:

  • (String)

    The API version used to transmit the fax



459
460
461
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 459

def api_version
  @properties['api_version']
end

#contextFaxContext

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

Returns:

  • (FaxContext)

    FaxContext for this FaxInstance



384
385
386
387
388
389
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 384

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

#date_createdTime

Returns The ISO 8601 formatted date and time in GMT when the resource was created.

Returns:

  • (Time)

    The ISO 8601 formatted date and time in GMT when the resource was created



477
478
479
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 477

def date_created
  @properties['date_created']
end

#date_updatedTime

Returns The ISO 8601 formatted date and time in GMT when the resource was last updated.

Returns:

  • (Time)

    The ISO 8601 formatted date and time in GMT when the resource was last updated



483
484
485
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 483

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Deletes the FaxInstance

Returns:

  • (Boolean)

    true if delete succeeds, true otherwise



518
519
520
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 518

def delete
  context.delete
end

#directionfax.Direction

Returns The direction of the fax.

Returns:

  • (fax.Direction)

    The direction of the fax



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

def direction
  @properties['direction']
end

#durationString

Returns The time it took to transmit the fax.

Returns:

  • (String)

    The time it took to transmit the fax



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

def duration
  @properties['duration']
end

#fetchFaxInstance

Fetch a FaxInstance

Returns:



502
503
504
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 502

def fetch
  context.fetch
end

#fromString

Returns The number the fax was sent from.

Returns:

  • (String)

    The number the fax was sent from



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

def from
  @properties['from']
end

#inspectObject

Provide a detailed, user friendly representation



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

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

Returns The URLs of the fax’s related resources.

Returns:

  • (String)

    The URLs of the fax’s related resources



489
490
491
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 489

def links
  @properties['links']
end

#mediamedia

Access the media

Returns:



525
526
527
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 525

def media
  context.media
end

#media_sidString

Returns The SID of the FaxMedia resource that is associated with the Fax.

Returns:

  • (String)

    The SID of the FaxMedia resource that is associated with the Fax



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

def media_sid
  @properties['media_sid']
end

#media_urlString

Returns The Twilio-hosted URL that can be used to download fax media.

Returns:

  • (String)

    The Twilio-hosted URL that can be used to download fax media



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

def media_url
  @properties['media_url']
end

#num_pagesString

Returns The number of pages contained in the fax document.

Returns:

  • (String)

    The number of pages contained in the fax document



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

def num_pages
  @properties['num_pages']
end

#priceString

Returns The fax transmission price.

Returns:

  • (String)

    The fax transmission price



465
466
467
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 465

def price
  @properties['price']
end

#price_unitString

Returns The ISO 4217 currency used for billing.

Returns:

  • (String)

    The ISO 4217 currency used for billing



471
472
473
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 471

def price_unit
  @properties['price_unit']
end

#qualityfax.Quality

Returns The quality of the fax.

Returns:

  • (fax.Quality)

    The quality of the fax



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

def quality
  @properties['quality']
end

#sidString

Returns The unique string that identifies the resource.

Returns:

  • (String)

    The unique string that identifies the resource



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

def sid
  @properties['sid']
end

#statusfax.Status

Returns The status of the fax.

Returns:

  • (fax.Status)

    The status of the fax



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

def status
  @properties['status']
end

#toString

Returns The phone number that received the fax.

Returns:

  • (String)

    The phone number that received the fax



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

def to
  @properties['to']
end

#to_sObject

Provide a user friendly representation



531
532
533
534
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 531

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

#update(status: :unset) ⇒ FaxInstance

Update the FaxInstance

Parameters:

Returns:



511
512
513
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 511

def update(status: :unset)
  context.update(status: status, )
end

#urlString

Returns The absolute URL of the fax resource.

Returns:

  • (String)

    The absolute URL of the fax resource



495
496
497
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 495

def url
  @properties['url']
end